Как подключить базу данных mysql

Подключаем базу данных MySQL с использованием процедурного и объектно-ориентированного стиля MySQLi PHP

Здравствуйте, уважаемый посетитель!

Сегодня будем заниматься подключением базы данных MySQL, которую создали в прошлой статье, через PHP с помощью современного модуля MySQLi. Особенность этого расширения в том, что в отличие от устаревшего MySQL, оно поддерживается всеми актуальными версиями PHP, включая последнюю 7.0.

Причем делать это будем двумя вариантами, используя, как привычной процедурный интерфейс (наподобие функций, которые использовались в старом расширении MySQL), так и объектно-ориентированный стиль взаимодействия с MySQL.

Оба эти варината рабочие, а каким пользоваться, может каждый выбрать для себя самостоятельно, кому какой будет удобнее.

Общие вопросы по подключению к БД

Перед тем, подключаться к базе данных необходимо определиться с тем расширением PHP, которое будет для этого использоваться.

Если попытаться найти в интернете информацию по теме подключения к базе данных, то во многих случаях там будут приводиться примеры, в которых используется старое одноименное расширение MySQL. Однако, такой интерфейс в настоящее время считается устаревшим, и в новых версиях, начиная с «PHP 7», вообще, не используется.

На это обстоятельство необходимо обратить особое внимание и в своей работе использовать только современные способы работы с базой данных MySQL. Поэтому здесь мы будем использовать расширение MySQLi (улучшенный модуль MySQLi). Добавленная в названии буква «i» обозначает улучшенный (Improved).

С расширением PHP мы определились, и теперь стоит коснуться вопроса, каким образом можно структурно распределить функции, описывающие работу с базой данных.

Порядок работы с базой данных можно разбить на три основные этапа:

Причем 1-ый и 3-ый этапы (подключение к БД и отключение от БД) производятся только один раз. А выполнение конкретных запросов и получение соответствующих результатов делается столько раз, сколько потребуется при формировании веб-страницы по запросу к серверу.

Также следует отметить, что принудительного закрытия подключение к БД не требуется, оно закрывается автоматически в конце выполнения PHP-скрипта.

Это обусловлено тем, что PHP-интепретатор создается и уничтожается при каждом обращении к веб-странице. Поскольку интерпретатор уничтожается после каждого запроса к серверу, все используемые им ресурсы (в том числе и соединение с базой данных) закрываются.

Учитывая, что при подключении к БД используются индивидуальные настройки (имя хоста, имя пользователя, пароль и имя базы данных), то этот скрипт логично выделить в отдельный файл. А остальные функции по формированию запросов и получению результатов, работа которых не будет зависеть от места расположения сайта, разместить в другом файле.

Поэтому, чтобы как-то упорядочить наш будущий программный код, связанный с работой с БД, создадим два файла: «connect.php» и «functions.php», которые разместим во вновь созданную папку, скажем, с названием «mysql». При этом, файл «connect.php» будет выполнять необходимые действия по подключению соединения с БД, а «functions.php» будет предназначен для размещения требуемых функций для работы с таблицами базы данных.

Таким образом, к файловой системе нашего сайта добавилась еще одна папка, в которой теперь будут находиться файлы, отвечающие за работу с базой данных MySQL.

А для того, чтобы можно было обращаться к этим файлам, с помощью инструкции «require_once» необходимо их подключить. Для этого разместим в начало каждой страницы следующий PHP-код.

Но так как количество подключаемых файлов по мере создания сайта будет увеличиваться, то для удобства лучше этот код поместить в отдельный файл в корневого каталога, скажем с именем «start.php». Который в свою очередь можно будет подключить в начале каждой страницы сайта.

Теперь, после выполненных мероприятий, когда мы знаем где будем писать для работы с БД необходимые скрипты, можем перейти к следующим шагам.

Отличие в подключении к БД на локальном веб-сервере и на хостинге

Работа с базой данных на локальном веб-сервере аналогично тому, как это происходит на хостинге. Отличие состоит только в том, в этих случаях используются разные данные для подключения.

Для локального веб-сервера Denwer три параметра определены постоянно и не требуют каких-либо изменений, а именно: имя хоста, имя пользователя и пароль.

В качестве же имени базы данных используется то название, которое присваивается при ее создании (в предыдущей статье на рис.4 можно видеть на каком этапе создания было дано новой базе данных имя «avtobezugona»).

Ниже перечислены все необходимые данные, которые мы будем использовать для подключения на локальном веб-сервере Denwer:

Для хостинга же в каждом случае будут использоваться индивидуальные настройки, предоставляемые хостером:

Подключение к базе данных с использованием процедурного интерфейса

В расширении «MySQLi», который мы будем использовать имеется довольно большое количество различных функций. С их полным перечнем и подробным описанием улучшенного модуля «MySQLi» можно ознакомиться в соответствующей справочной литературе, например, здесь.

Ниже показано, как будет выглядеть фрагмент соответствующего кода с присвоением необходимых данных для подключения.

Источник

Apache NetBeans 12.6

В этом документе описывается настройка соединения с базой данных MySQL из IDE NetBeans. После подключения с MySQL можно начать работать в проводнике баз данных среды IDE, создавая новые базы данных и таблицы, заполняя таблицы данными и делая структуру и содержимое баз данных доступными для запросов SQL. Этот учебный курс разработан для начинающих пользователей, обладающих базовым представлением об управлении базами данных, которым необходимо применить знания к работе с MySQL в IDE NetBeans.

MySQL является распространенной системой управления реляционной базой данных с открытым исходным кодом (СУРБД), широко используемой в веб-приложениях благодаря своей скорости, гибкости и надежности. MySQL использует SQL (язык структурированных запросов) для доступа к данным в базе данных и их обработки.

Предполагаемая продолжительность: 30 минут

Для работы с этим учебным курсом требуется следующее программное обеспечение и ресурсы.

Сервер базы данных MySQL

В этом руководстве предполагается, что уже имеется СУБД MySQL, которая установлена и настроена на компьютере. Если система устанавливается впервые, ознакомьтесь с официальной документацией по MySQL для получения справки. Также подробные сведения по этой теме можно найти в разделе Настройка сервера баз данных MySQL в операционной системе Windows.

Настройка свойств сервера MySQL

IDE NetBeans поставляется с включенной поддержкой для MySQL RDBMS. До получения доступ к серверу баз данных MySQL в IDE NetBeans, необходимо настроить свойства сервера MySQL.

Щелкните правой кнопкой мыши узел Databases («Базы данных») в окне Services («Службы») и выберите Register MySQL Server («Зарегистрировать MySQL») для открытия диалогового окна свойств сервера MySQL.

Как подключить базу данных mysql

Убедитесь, что имя узла и порт сервера указаны правильно.

Обратите внимание, что среда IDE вводит localhost как имя узла сервера по умолчанию и 3306 как номер порта сервера по умолчанию.

Введите имя администратора (если оно не отображается).

Необходим доступ с правами администратора, чтобы иметь возможность создавать и удалять базы данных.

Введите пароль администратора. По умолчанию установлено пустое значение.

Нажмите вкладку «Свойства администратора» в верхней части диалогового окна.

Отобразится соответствующая вкладка, предоставляющая возможность ввода сведений для управления сервером MySQL.

В поле «Путь/URL-адрес к средству администрирования» введите путь к средству администрирования MySQL (например, MySQL Admin Tool, PhpMyAdmin или другому подходящему веб-средству) или найдите его при помощи кнопки «Обзор».

mysqladmin является инструментов администрирования MySQL, который находится в папке bin каталога установки MySQL. Это средство командной строки не подходит для использования в среде IDE.

Введите аргументы для средства администрирования в соответствующее поле.

В поле «Путь к команде запуска» введите соответствующий путь MySQL или найдите его при помощи кнопки «Обзор». Для получения команды запуска найдите файл mysqld в папке bin каталога установки MySQL.

Введите значение аргументов для команды запуска в соответствующее поле.

На рисунке ниже изображен внешний вид вкладки «Свойства администратора» по завершении настройки. Если настройка выполнена корректно, нажмите кнопку «ОК».

Как подключить базу данных mysql

Запуск сервера MySQL

Перед попыткой подключения к серверу базы данных MySQL необходимо убедиться в том, что он запущен на компьютере. Если сервер базы данных не подключен, вы увидите (disconnected) рядом с именем пользователя в узле MySQL Server в окна ‘Служба’ и не сможете развернуть узел.

Для подключения к серверу баз данных убедитесь, что сервер базы данных MySQL запущен на компьютере, щелкните правой кнопкой мыши ‘Базы данных’ > узел ‘MySQL Server’ в окне ‘Службы’ и выберите ‘Подключить’. Может отобразиться запрос на ввод пароля для подключения к серверу.

Как подключить базу данных mysql

После подключения сервера вы сможете развернуть узел MySQL Server и просмотреть все доступные базы данных MySQL.

Создание экземпляра базы данных и подключение к ней

Редактор SQL является широко распространенным способом взаимодействия с базами данных. Для этого в IDE NetBeans имеется встроенный редактор SQL. Обычно редактор SQL доступен с помощью параметра ‘Выполнить команду’ из контекстного меню узла подключения (или дочерних узлов узла подключения). После установления подключения к серверу MySQL, можно создать новый экземпляр базы данных в редакторе SQL. Для продолжения работы с данным учебным курсом создайте экземпляр с именем MyNewDatabase :

В окне ‘Службы’ среды IDE щелкните правой кнопкой мыши узел сервера MySQL Server и выберите ‘Создать базу данных’.

Откроется диалоговое окно «Создание базы данных MySQL».

Также определенному пользователю можно предоставить полный доступ. По умолчанию только администратор обладает правами на выполнение определенных команд. Раскрывающийся список позволяет присваивать эти права определенным пользователям.

В узле «Сервер MySQL» окна «Службы» будет выведена новая база данных.

Щелкните узел новой базы данных правой кнопкой мыши и выберите ‘Подключение’, чтобы установить соединение с базой данных.

Создание таблиц баз данных

После установления подключения к базе данных MyNewDatabase можно начинать изучение принципов создания таблиц, заполнения их данными и изменения данных в таблицах. Благодаря этому для пользователей обеспечивается возможность более глубокого анализа функций проводника баз данных, а также поддержки IDE NetBeans файлов SQL.

База данных MyNewDatabase в настоящее время пуста. В среде IDE таблицу базы данных можно добавить при помощи диалогового окна «Создание таблицы» или посредством ввода запроса SQL и его запуска напрямую из редактора SQL. Можно использовать оба метода.

Использование редактора SQL

Щелкните правой кнопкой мыши папку Tables («Таблицы») и выберите Execute Command («Выполнить команду»). В главном окне редактора SQL отобразится пустой холст.

Запросы, сформированные в редакторе SQL, анализируются в соответствии с нормами языка структурированных запросов (Structured Query Language, SQL). Для SQL характерны строгие синтаксические правила, применяемые также при работе с редактором среды IDE. После выполнения запроса в окне ‘Вывод’ будет создан отклик от механизма SQL, указывающий на успешность выполнения или ошибку.

Как подключить базу данных mysql

Как подключить базу данных mysql

Использование диалогового окна «Создание таблицы»

В проводнике баз данных щелкните правой кнопкой мыши узел ‘Таблицы’ и выберите ‘Создать таблицу’. Откроется диалоговое окно «Создание таблицы».

Введите Subject в текстовое поле «Имя таблицы».

Нажмите кнопку «Добавить столбец».

Как подключить базу данных mysql

Установите флажок Primary Key («Первичный ключ») в диалоговом окне Add Column. В этом действии выполняется определение первичного ключа таблицы. Все таблицы, созданные в реляционных базах данных, должны содержать первичный ключ. Обратите внимание, что при выборе флажка «Ключ» выполняется автоматическая установка флажков «Индекс» и «Уникальный», при этом отменяется выбор флажка «Значение отсутствует». Это объясняется тем, что первичные ключи применяются для определения уникальной строки базы данных и по умолчанию используются в индексе таблицы. Поскольку все строки должны иметь уникальный идентификатор, первичные ключи не могут иметь значение Null.

Повторите эту процедуру, добавив оставшиеся столбцы, как показано в следующей таблице.

Описание: описание темы

* Идентификатор таблицы Counselor: * идентификатор, соответствующий идентификатору в таблице Counselor

Как подключить базу данных mysql

Убедитесь, что все поля в диалоговом окне «Создание таблицы» соответствуют полям в примере выше и нажмите кнопку «ОК». IDE создает таблицу Subject в базе данных и можно увидеть, что новый узел таблицы Subject ( Как подключить базу данных mysql) отображается непосредственно под ‘Таблицы’ в проводнике баз данных.

Работа с данными в таблице

Для работы с табличными данными можно использовать редактор SQL в IDE NetBeans. Выполняя запросы SQL в базе данных, можно добавлять, изменять и удалять данные в структурах баз данных. Для добавления новой записи (строки) в таблицу Counselor необходимо выполнить действия, описываемые ниже.

Выберите элемент «Выполнение команды» в папке «Таблицы» проводника баз данных. В главном окне редактора SQL отобразится пустой холст.

В редакторе SQL введите следующий запрос.

Чтобы выполнить запрос щелкните правой кнопкой мыши в редакторе SQL Editor и выберите ‘Выполнить оператор’. В окне «Вывод» будет выведено сообщение об успешном выполнении запроса.

Как подключить базу данных mysql

Выполнение сценария SQL

Другим способом управления табличными данными в IDE NetBeans является запуск внешнего сценария SQL напрямую в IDE. Если сценарий SQL был создан в другом местоположении его можно просто открыть в IDE NetBeans и запустить его в редакторе SQL.

Для наглядности загрузите файл ifpwafcad.sql и сохраните его на компьютере. Этот сценарий предназначен для создания двух таблиц, аналогичных только что созданным таблицам ( Counselor и Subject ), и немедленного заполнения их данными.

Щелкните правой кнопкой мыши узлы таблиц Counselor и Subject в проводнике баз данных, после чего выберите Delete («Удалить»).

Нажмите кнопку Yes («Да») в диалоговом окне Confirm Object Deletion («Подтверждение удаления объекта»). Обратите внимание, что в диалоговом окне перечисляются таблицы, которые будут удалены.

При нажатии кнопки Yes («Да») в диалоговом окне Confirm Object Deletion («Подтверждение удаления объекта») узлы таблиц автоматически удаляются из проводника баз данных.

Выполнение сценария SQL в базе данных MyNewDatabase

В главном меню среды IDE выберите «Файл» > «Открыть». В браузере файлов перейдите к месту хранения ifpwafcad.sql и выберите команду «Открыть». Сценарий автоматически откроется в редакторе SQL.

Убедитесь, что подключение к базе данных MyNewDatabase выбрано в раскрывающемся списке «Соединение» на панели инструментов в верхней части редактора.

Как подключить базу данных mysql

Чтобы проверить изменения щелкните правой кнопкой мыши узел подключения MyNewDatabase в окне ‘Среда выполнения’ и выберите ‘Обновить’. При выборе пункта «Обновить» компоненты интерфейса пользователя в проводнике данных будут приведены в соответствие с текущим состоянием указанной базы данных. Обратите внимание, что две новые таблицы из сценария SQL теперь отображаются как узлы таблицы в базе данных MyNewDatabase обозревателя баз данных.

Выберите ‘Просмотреть данные’ в контекстном меню выбранного узла таблицы для просмотра данных, содержащихся в новых таблицах. Таким образом можно сравнить данные в таблицах с данными сценария SQL, чтобы убедиться в их соответствии. Мы ждем ваших отзывов

Дополнительные сведения

Это заключительный раздел учебного курса «Подключение к базе данных MySQL». В этом документе демонстрируется настройка MySQL на компьютере пользователя и настройка соединения с сервером баз данных из IDE NetBeans. Также были рассмотрены методы работы с MySQL в обозревателе баз данных среды IDE при создании экземпляров баз данных и таблиц, заполнении их данными и выполнении запросов SQL.

Более подробные учебные курсы представлены на следующих ресурсах:

Создание простого веб-приложения, использующего базу данных MySQL. Этот учебный курс предоставляет сведения о создании простых двухуровневых веб-приложений в среде IDE с использованием созданной базы данных MySQL.

Источник

PHP-подключение к БД MySQL (Два Способа с Примерами)

Как подключить базу данных mysql

Если вы новичок в разработке сайтов, вам может пригодиться это руководство, объясняющее, как настроить подключение к БД MySQL посредством PHP-скрипта. С помощью этого навыка вы сможете изменять, просматривать и управлять таблицами, созданными в базе данных MySQL. И сейчас мы покажем вам самые простые способы это сделать. Давайте начнём!

Получите скидку до 85% на наши тарифы хостинга с поддержкой PHP.

Создание Базы Данных MySQL (При необходимости)

Этот шаг можно пропустить, если у вас уже есть база данных MySQL. Если вы являетесь пользователем Hostinger, вы можете легко создать новую БД через hPanel — панель управления хостингом Hostinger, следуя простой инструкции:

Инструкции по созданию базы данных MySQL с помощью cPanel см. в этом руководстве (англ.). Однако имейте в виду, что это пустые базы данных. Вам нужно будет заполнить их данными, прежде чем вы сможете ими управлять.

Запишите учётные данные только что созданной базы данных MySQL для следующего шага. А также не забудьте имя пользователя и пароль к БД!

Два способа PHP-подключения к БД MySQL

Есть два метода подключения к базе данных MySQL с помощью PHP: MySQLi и PDO.

MySQLi расшифровывается как MySQL Improved. Это эксклюзивное расширение MySQL, которое добавляет новые функции в интерфейс базы данных. Функции MySQLi являются как процедурными, так и объектно-ориентированными, причём первую парадигму расширение унаследовало от более ранней версии MySQL.

Сама MySQL разбивает задачу на линейные, пошаговые процедуры, что затрудняет внесение изменений, поскольку вам приходится редактировать код сверху. Между тем MySQLi рассматривает данные как набор взаимозаменяемых объектов с функциями, позволяя пользователям легко добавлять или удалять данные.

PDO расшифровывается как PHP Data Object, или объект данных PHP. В отличие от MySQLi, PDO является только объектно-ориентированным методом. Он поддерживает ряд различных типов баз данных, использующих PHP, таких как MySQL, MSSQL, Informix и PostgreSQL.

Исходные функции mysql_ устарели. Их лучше не использовать, поскольку они небезопасны и больше не поддерживаются.

Одна из наиболее важных функций, которую поддерживают оба метода — это подготовленные выражения (prepared statements). Она сокращает время, необходимое MySQL для выполнения повторяемого запроса. Эта функция также используется для предотвращения SQL-инъекций при внесении изменений в базу данных.

Какой бы метод вы ни использовали, вам понадобится правильная информация для подключения к созданной вами базе данных MySQL. Здесь вам пригодятся ранее сохранённые данные БД.

Вам также потребуется правильное имя сервера, или имя хоста для конфигурации. Hostinger использует “localhost” в качестве имени хоста своего сервера MySQL. Это имя, которое вы будете использовать, если загрузите свой PHP-скрипт на тот же сервер, что и база данных.

С другой стороны, если вы подключаетесь к базе данных из удалённого места (например, со своего компьютера), вам придётся использовать IP-адрес MySQL-сервера. Чтобы получить дополнительную информацию, обратитесь к своему хостинг-провайдеру. Он предоставит вам актуальную информацию о том, какое имя использовать в качестве имени хоста.

PHP-подключение к БД MySQL с MySQLi

Выполните следующие действия, чтобы подключить PHP-скрипт к MySQL посредством MySQLi:

Основным методом, используемым в этом скрипте, является mysqli_connect (). Это внутренняя функция PHP для установления нового соединения с сервером MySQL.

Если попытка соединения была неудачной, выполняется функция die(). Она убивает наш скрипт и выдаёт сообщение об ошибке подключения, которое мы прописали. По умолчанию в сообщении об ошибке подключения MySQL будет указано «Connection failed», за которым следует точное сообщение об ошибке с описанием проблемы.

С другой стороны, если MySQL-соединение установлено успешно, мы увидим сообщение «Connected successfully».

Последняя часть кода, mysqli_close, позволяет закрыть соединение с базой данных вручную. Если вы ничего не укажите, соединения MySQL закроются автоматически после завершения скрипта.

PHP-подключение к БД MySQL с PDO

Другой метод подключения к БД MySQL с использованием PHP-скрипта — через PDO. В целом он похож на предыдущий, но с некоторыми особенностями:

Объяснение Скрипта PDO

Для подключения к базе данных PDO необходимо создать новый объект PDO с именем источника данных (DSN), именем пользователя и паролем.

DSN определяет тип базы данных, имя базы данных и любую другую информацию, относящуюся к базе данных, если это необходимо. Это переменные и значения, указанные нами в файле dbconfig.php, на которые один раз ссылается строка require_once в файле databaseconnect.php.

В последнем примере вы найдёте код try… catch... Это означает, что скрипт попытается подключиться к MySQL, используя предоставленный код, но в случае возникновения проблемы будет выполнен код в разделе catch. Вы можете использовать блок catch для отображения сообщений об ошибках подключения или запустить альтернативный код в случае сбоя блока try.

Проверка Подключения и Устранение Распространённых Ошибок

Чтобы проверить, успешно ли установлено соединение, войдите в свой домен так: vashdomen/databaseconnect.php. Если вы назвали PHP-файл другим именем, обязательно укажите правильное название.

Если всё работает хорошо, вы увидите «Connected successfully» или другой вариант этого сообщения.

В случае возникновения проблемы при попытке установить соединение, вы увидите сообщения об ошибке. Они отличаются для MySQLi и PDO.

Ошибка при Неправильном Пароле

Эта ошибка возникает, если мы меняем пароль или какие-либо учётные данные в PHP-коде (но не меняем их в реальной базе данных).

Если вы видите сообщение «Access denied» или «Could not connect to database», сопровождаемое “(using password: YES)”, первое, что нужно сделать, это проверить данные для доступа к БД. Возможно, вы сделали опечатку или пропустили какую-то часть.

Не Удаётся Подключиться к MySQL-серверу

Если вы видите сообщение «Can’t connect to MySQL server on ‘server’ (110)» в MySQLi, это означает, что скрипт не получил ответа от сервера. Это происходит, когда мы устанавливаем «server» вместо «localhost» в качестве $servername, и имя не распознаётся.

Сообщение об аналогичной ошибке в PDO будет выглядеть как: «Connection failed: SQLSTATE[Hy000] [2002]». А за ним следует уточнение, что узел MySQL не найден. Причина и решение этой проблемы такое же, как и в предыдущем примере.

И, конечно же, всегда важно помнить одно золотое правило устранения ошибок: проверять журнал ошибок вашего сайта.

Журнал находится в той же папке, где запущен скрипт. Например, если мы запускаем сценарий в public_html, error_log будет в той же папке.

Итоги

В этом руководстве мы показали, как происходит PHP-подключение к БД MySQL с помощью MySQLi и PHP Data Objects (PDO).

Надеемся, что это руководство было полезно для тех, кто только начинает заниматься веб-разработкой. В конце концов, подключение к базе данных — это первый и самый важный шаг при работе с более сложными скриптами и конфигурациями.

Если у вас возникнут какие-либо вопросы после прочтения, не стесняйтесь и напишите нам в комментариях ниже.

Ольга уже около пяти лет работает менеджером в сфере IT. Написание технических заданий и инструкций — одна из её главных обязанностей. Её хобби — узнавать что-то новое и создавать интересные и полезные статьи о современных технологиях, веб-разработке, языках программирования и многом другом.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

КлючИндексЗначение отсутствуетУникальныйИмя таблицыТип данныхРазмер