PHP - AJAX и MySQL
AJAX можно использовать для интерактивного взаимодействия с базой данных.
Пример AJAX с базой данных
В следующем примере показано, как веб-страница может считывать информацию из базы данных через AJAX:
SQL-файл для таблицы Websites, используемой в этом руководстве:websites.sql.
Пример
Объяснение примера - База данных MySQL
В приведённом выше примере таблица базы данных, которую мы используем, показана ниже:
mysql> select * from websites; +----+--------------+---------------------------+-------+---------+ | id | name | url | alexa | country | +----+--------------+---------------------------+-------+---------+ | 1 | Google | https://www.google.cm/ | 1 | USA | | 2 | 淘宝 | https://www.taobao.com/ | 13 | CN | | 3 | Example | http://www.example.com/ | 4689 | CN | | 4 | 微博 | http://weibo.com/ | 20 | CN | | 5 | Facebook | https://www.facebook.com/ | 3 | USA | +----+--------------+---------------------------+-------+---------+ 5 rows in set (0.01 sec)
Пояснение примера — HTML-страница
Когда пользователь выбирает веб-сайт в раскрывающемся списке выше, выполняется функция "showSite()". Функция запускается событием "onchange":
Код файла test.html:
Функция showSite() выполняет следующие шаги:
- Проверьте, выбран ли веб-сайт
- Создать объект XMLHttpRequest
- Создать функцию, которая будет выполнена, когда ответ сервера будет готов
- Отправить запрос к файлу на сервере
- Обратите внимание, что параметр (q) добавляется в конец URL (содержащий содержимое выпадающего списка)
Файл PHP
Серверная страница, вызываемая через JavaScript выше, — это PHP-файл с именем "getsite_mysql.php".
Исходный код в "getsite_mysql.php" выполняет запрос к базе данных MySQL и возвращает результат в HTML-таблице:
Код файла getsite_mysql.php:
Пояснение: Когда запрос отправляется из JavaScript в файл PHP, происходит следующее:
- PHP открывает соединение с базой данных MySQL
- Находит выбранный веб-сайт
- Создает HTML-таблицу, заполняет её данными и отправляет её обратно в заполнитель "txtHint"