Как PHP взаимодействует с MySQL

PHP + MySQL ~ [ wwweb.uz ]

Команды и методы подключения к MySQL в среде разработки PHP.

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

Сразу оговорюсь, что привожу здесь пример самописный (процедурный).

Самописный (процедурный) способ работы с MySQL в PHP

Подключение к базе данных MySQL:

mysqli_connect — функция, открывающая соединение с сервером MySQL.

$localhost = 'localhost'; // или IP-адрес сервера подключения
$db_user = 'UserName'; // имя пользователя базы данных
$db_passw = 'Kakoito-Parol'; // пароль подключения к базе данных
$db_name = 'DbName'; // имя базы данных

$dblink = mysqli_connect($localhost, $db_user, $db_passw, $db_name);

Можно конечно же использовать более коротки вариант, когда вместо переменных в mysqli_connect вписываются сразу значения.
Но, согласно рекомендации DRY (don't repeat yourself — не повторяйся), грамотней будет использовать вышеприведенный пример.

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

Выбор данных из таблиц базы данных MySQL:

mysqli_query — функциия выполнения запросов к MySQL.

// формируем запрос к базе данных MySQL
$zapros = 'SELECT * FROM `TableName`';

// используем функцию mysqli_query для выполнения запроса
$viborka = mysqli_query($dblink, $zapros);

После выполнения данной операции в переменной $viborka содержится вся запрошенная информация.
Для того, чтобы эти данные получить в доступном виде для дальнейшей работы, используем функцию перебора mysqli_fetch_assoc.

mysqli_fetch_assoc — функция обработки запроса, которая возвращает ассоциативный массив.

$amassiv = mysqli_fetch_assoc($viborka);

Напомню, что для удобства представления структуры массива $amassiv, используйте функцию print_r.

Данный массив будет содержать записи, которые соответствуют правилу «ключ» => «значение».
Теперь, чтобы использовать полученные таким образом данные, можно обращаться к массиву по его ключам. Для этого мы используем цикл do — while;
Конструкция будет выглядеть так:

do {
	echo $amassiv['ключ'];
}

while(mysqli_fetch_assoc($viborka));

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

Закрытие подключения к базе данных MySQL:

mysqli_close — функция закрывает ранее открытое подключение к базе данных.

mysqli_close($dblink);

Если собрать всё это воедино, получится следующая страница:

// инициализация переменных
$localhost = 'localhost'; // или IP-адрес сервера подключения
$db_user = 'UserName'; // имя пользователя базы данных
$db_passw = 'Kakoito-Parol'; // пароль подключения к базе данных
$db_name = 'DbName'; // имя базы данных

// подключение
$dblink = mysqli_connect($localhost, $db_user, $db_passw, $db_name);

// формируем запрос к базе данных MySQL
$zapros = 'SELECT * FROM `TableName`';

// используем функцию mysqli_query для выполнения запроса
$viborka = mysqli_query($dblink, $zapros);

// обработка запроса в ассоциативный массив
$amassiv = mysqli_fetch_assoc($viborka);

// перебор массива циклом и вывод
do {
	echo $amassiv['ключ'];
}

while(mysqli_fetch_assoc($viborka));

// закрываем подключение
mysqli_close($dblink);

P.S. Смотрите подробней о способах работы с составлением запросов (mysqli_query) используя оператор SELECT в официальной документации по MySQL. Методы работы с массивами данных (mysqli_fetch_assoc, mysqli_fetch_row и др.), а также циклы перебора значений массивов (for, do-while, while{} и др.) также рассмотрены в официальной документации по PHP.

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

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