Краткая инструкция по выполнению SQL-запросов с использованием языка PHP в базе данных MariaDB (или MySQL).
За основу берём скрипт подключения PHP к СУБД MariaDB, так как в нём прописано условие, которое при ошибке подключения выводит соответствующее сообщение.
Само по себе успешное подключение предполагает дальнейшую работу с базой данных. Поэтому вместо строчки
echo "Подключение к БД прошло успешно…";
можно начинать писать скрипт.
Запрос может быть любым. В нашем примере запрос будет выбирать все колонки и строки из таблицы shop_goods:
SELECT * FROM shop_goods;
Для начала необходимо сформировать начальную структуру документа при помощи конструкции echo()
echo('<html> <head> <meta charset="utf-8"> <title>MySQL or MariaDB query example</title> </head> <body>');
Определим необходимый нам запрос и объявим для него переменную $query
$query = mysqli_query($connect, "SELECT * FROM shop_goods");
Затем циклом while обходим строки таблицы
while ($result = mysqli_fetch_array($query)) { echo "<p>{$result['id']}. {$result['title']} - {$result['category']} - {$result['price']} рублей - {$result['quantity']} штук </p> "; }
Этот цикл позволит вывести результаты запроса.
После этого также с помощью конструкции echo() закрываем теги документа:
echo('</body> </html>');
чистим результаты запроса
mysqli_free_result($query);
и закрываем соединение с базой данных
mysqli_close($connect);
Полностью рабочий скрипт будет выглядеть примерно так:
<?php $servername = "localhost"; $database = "test_db"; $username = "db_user"; $password = "yourPassword"; $connect = mysqli_connect($servername, $username, $password, $database); if (!$connect) { die("Ошибка подключения: " . mysqli_connect_error()); } echo('<html> <head> <meta charset="utf-8"> <title>MySQL or MariaDB query example</title> </head> <body>'); $query = mysqli_query($connect, "SELECT * FROM shop_goods"); while ($result = mysqli_fetch_array($query)) { echo "<p>{$result['id']}. {$result['title']} - {$result['category']} - {$result['price']} рублей - {$result['quantity']} штук </p> "; } echo('</body> </html>'); mysqli_free_result($query); mysqli_close(); ?>
Результат выполнения данного скрипта будет выглядеть так:
1. Ноутбук ASUS VivoBook A540L - Ноутбуки - 15000.00 рублей - 10 штук 2. МФУ Kyocera Ecosys M2535fdn - МФУ - 22000.00 рублей - 5 штук 3. Сумка для ноутбука 15-дюймов, серая - Сумки и чехлы - 3500.00 рублей - 6 штук 4. Картридж Cactus CS-CE285A - Картриджи - 950.00 рублей - 15 штук 5. SSD диск GIGABYTE 2.5" 256 Гб SATA III NAND TLC (GP-GSTFS31256GTND) - SSD-диски - 3000.00 рублей - 18 штук 6. USB флешка 64Gb Kingston DTX/64Gb USB 3.2 Gen 1 (USB 3.0) - USB-диски, флешки - 750.00 рублей - 35 штук 7. USB флешка 128Gb Kingston DTX/128Gb USB 3.2 Gen 1 (USB 3.0) - USB-диски, флешки - 1300.00 рублей - 25 штук 8. Телевизор Samsung UE50TU8000UX, 4K Ultra HD, черный - Телевизоры - 46800.00 рублей - 3 штук 9. Кронштейн ONKRON M15, для LCD телевизора 32"-75", черный - Кронштейны - 4100.00 рублей - 8 штук 10. Телевизор LG 43LM5700PLA, черный - Телевизоры - 32000.00 рублей - 7 штук