AJAX 数据库示例
AJAX可用于与数据库进行交互式通信。
AJAX 数据库示例
以下示例将演示网页如何使用 AJAX 从数据库获取信息:
示例解释 - showCustomer() 函数
当用户在上面的下拉列表中选择一个客户时,会调用一个函数 showCustomer()
执行。该函数由onchange
事件:
显示客户
函数 showCustomer(str) {
如果 (str == "") {
文档.getElementById(“txtHint”).innerHTML =“”;
返回;
}
const xhttp = 新的 XMLHttpRequest();
xhttp.onload = 函数(){
文档.getElementById (“txtHint”).innerHTML = this.responseText;
}
xhttp.open("GET", "getcustomer.html?q="+str);
发送();
}
这 showCustomer()
函数执行以下操作:
- 检查是否选择了客户
- 创建 XMLHttpRequest 对象
- 创建在服务器响应准备就绪时执行的函数
- 将请求发送到服务器上的文件
- 请注意,URL 中添加了一个参数 (q)(包含下拉列表的内容)
AJAX 服务器页面
上面的 JavaScript 调用的服务器上的页面是一个名为“getcustomer.html”的 PHP 文件。
“getcustomer.html”中的源代码对数据库运行查询,并在 HTML 表中返回结果:
<?php
$mysqli = 新 mysqli("服务器名称", "用户名", "密码", "数据库名称");
如果($mysqli->connect_error){
退出('无法连接');
}
$sql = "SELECT 客户 ID,公司名称,联系人姓名,地址,城市,邮政编码,国家
来自客户,其中 customerid =?“;
$stmt = $mysqli->准备($sql);
$stmt->bind_param("s", $_GET['q']);
$stmt->执行();
$stmt->store_result();
$stmt->bind_result($cid,$cname,$name,$adr,$city,$pcode,$country);
$stmt->获取();
$stmt->关闭();
回显<table> “;
回显<tr> “;
回显<th>客户ID</th> “;
回显<td> “.$cid。”</td> “;
回显<th>公司名称</th> “;
回显<td> “. $cname。”</td> “;
回显<th>联系人姓名</th> “;
回显<td> “. $name。”</td> “;
回显<th>地址</th> “;
回显<td> “. $adr。”</td> “;
回显<th>城市</th> “;
回显<td> “.$城市。”</td> “;
回显<th>邮政编码</th> “;
回显<td> “.$pcode”。</td> “;
回显<th>国家</th> “;
回显<td> “. $country。”</td> “;
回显</tr> “;
回显</table> “;
?>