PHP - AJAX y MySQL
AJAX se puede utilizar para comunicarse interactivamente con una base de datos.
Ejemplo de base de datos AJAX
El siguiente ejemplo demostrará cómo una página web lee información de una base de datos mediante AJAX:
El archivo SQL de la tabla Websites utilizado en este tutorial:websites.sql.
Ejemplo
Explicación del ejemplo - Base de datos MySQL
En el ejemplo anterior, la tabla de la base de datos que utilizamos es la siguiente:
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 | Ejemplo | 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)
Explicación del ejemplo - Página HTML
Cuando el usuario selecciona un sitio web en la lista desplegable anterior, se ejecuta la función llamada "showSite()". Esta función es activada por el evento "onchange":
Código del archivo test.html:
La función showSite() realiza los siguientes pasos:
- Comprueba si se ha seleccionado un sitio web
- Crea un objeto XMLHttpRequest
- Crea una función que se ejecuta cuando la respuesta del servidor está lista
- Envía una solicitud al archivo en el servidor
- Ten en cuenta el parámetro (q) añadido al final de la URL (que contiene el contenido de la lista desplegable)
Archivo PHP
La página del servidor llamada anteriormente mediante JavaScript es un archivo PHP llamado "getsite_mysql.php".
El código fuente en "getsite_mysql.php" ejecuta una consulta a la base de datos MySQL y luego devuelve el resultado en una tabla HTML:
Código del archivo getsite_mysql.php:
Explicación: cuando la consulta se envía desde JavaScript al archivo PHP, ocurrirá lo siguiente:
- PHP abre una conexión a la base de datos MySQL
- Encuentra el sitio seleccionado
- Crea una tabla HTML, la rellena con datos y la envía de vuelta al marcador de posición "txtHint"