Рекламный блок
Пользовательская функция для подключения к базе данных MySQL
Модуль mysql устарел с версии PHP 5.5.0, и удалён в версии 7.0.0. Вместо него используйте mysqli
Пользовательская функция для подключения к базе данных MySQLi
В настоящее время, не только крупные сайты, такие как интернет-магазины, новостные порталы, поисковые системы и другие сложные веб-проекты не могут обойтись без использования баз данных, но и не большие информационные ресурсы или сайты-визитки часто требуют использования данной технологии.
В языке PHP есть множество стандартных функций для управления СУБД. При подключении к базе и в процессе обработки информации, находящейся в ней, часто требуется вызывать стандартные функции с некоторым набором однотипных параметров. В таком случае удобным вариантом будет создание своей пользовательской функции, вызывающей стандартную php-функцию с предопределёнными параметрами.
Пример php-кода определения констант
Имя сервера, логин и пароль для подключения к СУБД рекомендуется определять в виде констант и размещать их в отдельном конфигурационном файле. Такой подход повышает безопасность веб-приложений, конечно, при выполнении и других мер.
Например, php-код может выглядеть так:
define("DB_USER", "login");
define("DB_PASS", "password");
define("DB_NAME", "dbname");
Имена констант можете изменить по своему усмотрению, localhost - стандартное обозначение (другие варианты встречаются крайне редко и зависят от настроек, установленных у хостинг-провайдера). Значения login, password и dbname - Ваши для подключения к СУБД :).
Пример php-кода для подключения к базе данных на локальном компьютере
if( ! $connect)
{ die (mysql_errno().' '.mysql_error().' Ошибка подключения.'); }
mysql_query('SET NAMES CP1251');
mysql_select_db(DB_NAME);
return $connect;
«Собачка» перед вызовом функции mysql_connect "подавляет" вывод информационных сообщений, генерируемых СУБД. Языковая конструкция die выводит информационное сообщение и завершает работу скрипта. В процессе отладки скриптов полезно использовать вызов функций mysql_errno и mysql_error, а в реально работающем сайте эти функции необходимо убрать и оставить только сообщение "Ошибка подключения".
В базе данных информация обычно хранится в кодировке utf-8. Если Ваш сайт использует ту же кодировку, тогда никаких преобразований делать не нужно. В том случае, когда Вы используете для сайта другую кодировку, например, windows-1251, то такое преобразование нужно выполнять.
При использовании php 5.2.3 или выше, а так же MySQL 5.0.7 и выше рекомендуется использовать функцию mysql_set_charset.
Затем надо выбрать базу данных, к которой будут выполняться информационные запросы. В случае ошибки при подключении к базе данных на экран будут выведены номер ошибки и пояснение. Это очень удобно при отладке скриптов на локальном компьютере, но плохо с точки зрения безопасности php-скриптов.
Пример php-кода пользовательской функции для подключения к базе данных
if( ! $connect)
{ die ('Ошибка'); }
mysql_query('SET NAMES CP1251');
mysql_select_db(DB_NAME);
return $connect;
При необходимости использовать MySQLi предложенная функция легко модернизируется.