Пример базы данных MySQL с PHP и AJAX
- Предыдущая страница XML AJAX
- Следующая страница responseXML AJAX
AJAX 可用于与数据库进行交互式通信。
AJAX 数据库实例
在下面的 AJAX 实例中,我们将展示网页如何使用 AJAX 技术从 MySQL 数据库中读取信息。
在下拉列表中选择一个客户
在此处将列出客户信息。
这个应用程序由四个元素组成:
- MySQL 数据库
- 一个简单的 HTML 表单
- JavaScript
- PHP 页面
数据库
数据库看起来如下在本例中使用的:
id | CustomerID | CompanyName | ContactName | Address | City | PostalCode | Country |
---|---|---|---|---|---|---|---|
1 | Alibaba | Alibaba Group | Ma Yun | ...... | Hangzhou | 310002 | China |
2 | APPLE | Apple Inc. | Tim Cook | ...... | Cupertino | 95014 | USA |
3 | BAIDU | BAIDU Inc. | Li YanHong | ...... | Beijing | 100080 | China |
4 | Canon | Canon USA Inc. | Tsuneji Uchida | ...... | New York | 11042 | USA |
例子解释
在上面的例子中,当用户在上面的下拉列表中选择客户时,会执行名为“showUser()”的函数。
该函数由 onchange 事件触发。
这是 HTML 代码:
实例
PHP 文件
上面的 JavaScript 调用的服务器上的页面是一个名为“getuser.php”的 PHP 文件。
源代码“getuser.php”对 MySQL 数据库执行查询,并在 HTML 表中返回结果:
<?php $q = intval($_GET['q']); $con = mysqli_connect('MyServer','MyUser','MyPassword','Customers'); if (!$con) { die('Could not connect: ' . mysqli_error($con)); } $sql="SELECT * FROM customerslist WHERE id = '".$q."'"; $result = mysqli_query($con,$sql); echo "<table>"; while($row = mysqli_fetch_array($result)) { echo "<tr><th>CustomerID</th><td>" . $row['CustomerID'] . "</td></tr>"; echo "<tr><th>CompanyName</th><td>" . $row['CompanyName'] . "</td></tr>"; echo "<tr><th>ContactName</th><td>" . $row['ContactName'] . "</td></tr>"; echo "<tr><th>Address</th><td>" . $row['Address'] . "</td></tr>"; echo "<tr><th>City</th><td>" . $row['City'] . "</td></tr>"; echo "<tr><th>PostalCode</th><td>" . $row['PostalCode'] . "</td></tr>"; echo "<tr><th>Country</th><td>" . $row['Country'] . "</td></tr>"; } echo "</table>"; mysqli_close($con); ?>
Объяснение: когда запрос отправляется из JavaScript в файл PHP, происходит следующее:
- PHP открывает соединение с сервером MySQL
- Найден правильный клиент
- Создайте таблицу HTML, заполните данные и отправьте обратно "txtHint" как占位щик
- Предыдущая страница XML AJAX
- Следующая страница responseXML AJAX