Для того, чтобы получить максимальную отдачу от вашей базы данных MySQL, важно понять, как подключиться из пользовательской программы на PHP в базу данных MySQL.
В этом руководстве описывается следующие три метода вместе с соответствующей программой примера на PHP, которая объяснит, как подключиться с помощью PHP к базе данных MySQL.
Для этого необходимо установить пакет PHP-MySQL.
На основе дистрибутива RedHat включая CentOS, использовать yum для установки PHP-MySQL, как показано ниже.
yum install php-mysql
В зависимости от вашей системы, выше будем устанавливать или обновлять следующие зависимости:
После того, как все установлено, страница phpinfo будет отображать MySQL модуль, как показано ниже:
Для всех приведенных ниже примеров, мы будем подключаться к базе данных MySQL, которая уже существует. Если вы новичок в MySQL, это хорошее место, чтобы начать: MySQL — Руководство для начинающих.
Примечание: Все, что описано здесь также будет работать с MariaDB, как это работает на MySQL.
MySQLi означает MySQL Improved.
Обратите внимание, что в большинстве дистрибутивов (например: CentOS), PHP-MySQLi уже является частью пакета PHP-MySQL. Таким образом, вам не придется искать и устанавливать пакет PHP-MySQLi. Все, что вам нужно сделать, это установить пакет PHP-MySQL, чтобы получить работающее расширение Mysqli на вашей системе.
Создайте следующий файл mysqli.php в DocumentRoot вApache:
<?php $conn = new mysqli("localhost", "root", "mySecretDBpass", "andreyex"); if ($conn->connect_error) { die("Ошибка: не удается подключиться: " . $conn->connect_error); } echo 'Подключение к базе данных.<br>'; $result = $conn->query("SELECT name FROM employee"); echo "Количество строк: $result->num_rows"; $result->close(); $conn->close(); ?>
В приведенном выше:
При вызове mysqli.php из вашего браузера, вы увидите следующий вывод, что свидетельствует о том, что PHP был в состоянии подключиться к базе данных MySQL и сделать выборку данных.
Подключение к базе данных. Количество строк: 4
Примечание: Если вы пытаетесь подключиться к удаленной базе данных MySQL, то вы можете сделать это, чтобы избежать ошибки запрета подключения к хосту: Как разрешить клиенту MySQL подключиться к удаленному серверу MySQL.
PDO означает PHP Data Objects.
PDO_MYSQL реализует интерфейс PDO, предоставляемый РНР для подключения программы к базе данных MySQL.
В большинстве дистрибутивов Linux (например, CentOS и RedHat), PHP-PDO пакет уже входит в пакет PHP-MySQL. Таким образом, вам не придется искать и устанавливать пакет PHP-PDO. Все, что вам нужно сделать, это установить пакет PHP-MySQL, чтобы получить работающее расширение PDO_MYSQL PHP в вашей системе.
Создайте следующий файл MySQL-pdo.php в вашим Apache DocumentRoot:
<?php try { $conn = new PDO("mysql:host=localhost;dbname=andreyex", "root", "mySecretDBpass"); $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); echo 'Подключение к базе данных.<br>'; $sql = 'SELECT name FROM employee'; print "Имя Сотрудника:<br>"; foreach ($conn->query($sql) as $row) { print $row['name'] . "<br>"; } $conn = null; } catch(PDOException $err) { echo "Ошибка: не удается подключиться: " . $err->getMessage(); } ?>
В приведенном выше:
При вызове mysqli.php из вашего браузера, вы увидите следующий вывод, что свидетельствует о том, что PHP был в состоянии подключиться к базе данных MySQL и сделать выборку данных.
Подключение к базе данных. Имя Сотрудника: AndreyEx Ruslan Maria Oleg
Используйте этот метод, только если вы используете более старую версию PHP и не можете обновить ее до новой версии по какой-то причине.
Рекомендуется использовать метод #2 и #3, показанный выше, вместо этого метода. Я включил этот метод только для справки, а не как рекомендация к использованию.
Это устаревшее расширение PHP 5.5 версии. Но начиная с PHP 7.0 версии, это не будет работать, так как она была удалена.
Начиная с PHP 5.5 версии, когда вы используете эти функции, они будет генерировать ошибку E_DEPRECATED.
Создайте следующий файл MySQL-legacy.php под Apache DocumentRoot:
<?php $conn = mysql_connect('localhost', 'root', 'mySecretDBpass'); mysql_select_db("andreyex"); if (!$conn) { die('Ошибка: не удается подключиться: ' . mysql_error()); } echo 'Подключение к базе данных.<br>'; $result = mysql_query('SELECT name FROM employee'); $row = mysql_fetch_row($result); echo "Сотрудник 1: ", $row[0], "<br>\n"; mysql_close($conn); ?>
В приведенном выше:
При вызове MySQL-legacy.php из вашего браузера, вы увидите следующий вывод, что свидетельствует о том, что PHP был в состоянии подключиться к базе данных MySQL и сделать выборку данных.
Подключение к базе данных. Сотрудник 1: AndreyEx