学IT网-在线学习IT知识

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: html css js php
查看: 454|回复: 0

AJAX 数据库

[复制链接]

1380

主题

1382

帖子

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
11316
发表于 2017-7-31 20:27:36 | 显示全部楼层 |阅读模式
AJAX Database 实例
AJAX 可用来与数据库进行动态通信。
AJAX 数据库实例
下面的例子将演示网页如何通过 AJAX 从数据库读取信息:请在下面的下拉列表中选择一个客户:
Example
  1. Select a customer:Alfreds FutterkisteNorth/SouthWolski Zajazd
  2. <div id="txtHint">Customer info will be listed here...</div>
复制代码


尝试一下 »



实例解释 - showCustomer() 函数
当用户在上面的下拉列表中选择某个客户时,会执行名为 "showCustomer()" 的函数。该函数由 "onchange" 事件触发:
  1. function showCustomer(str)
  2. {
  3. var xmlhttp;
  4. if (str=="")
  5.   {
  6.   document.getElementById("txtHint").innerHTML="";
  7.   return;
  8.   }
  9. if (window.XMLHttpRequest)
  10.   {// code for IE7+, Firefox, Chrome, Opera, Safari
  11.   xmlhttp=new XMLHttpRequest();
  12.   }
  13. else
  14.   {// code for IE6, IE5
  15.   xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  16.   }
  17. xmlhttp.onreadystatechange=function()
  18.   {
  19.   if (xmlhttp.readyState==4 && xmlhttp.status==200)
  20.     {
  21.     document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
  22.     }
  23.   }
  24. xmlhttp.open("GET","getcustomer.html?q="+str,true);
  25. xmlhttp.send();
  26. }
复制代码

showCustomer() 函数执行以下任务:
  • 检查是否已选择某个客户
  • 创建 XMLHttpRequest 对象
  • 当服务器响应就绪时执行所创建的函数
  • 把请求发送到服务器上的文件
  • 请注意我们向 URL 添加了一个参数 q (带有输入域中的内容)


AJAX 服务器页面
由上面的 JavaScript 调用的服务器页面是 PHP 文件,名为 "getcustomer.php"。
用 PHP 编写服务器文件也很容易,或者用其他服务器语言。请看用 PHP 编写的相应的例子
"getcustomer.php" 中的源代码负责对数据库进行查询,然后用 HTML 表格返回结果:
  1. <%
  2. response.expires=-1
  3. sql="SELECT * FROM CUSTOMERS WHERE CUSTOMERID="
  4. sql=sql & "'" & request.querystring("q") & "'"

  5. set conn=Server.CreateObject("ADODB.Connection")
  6. conn.Provider="Microsoft.Jet.OLEDB.4.0"
  7. conn.Open(Server.Mappath("/db/northwind.mdb"))
  8. set rs=Server.CreateObject("ADODB.recordset")
  9. rs.Open sql,conn

  10. response.write("<table>")
  11. do until rs.EOF
  12.      for each x in rs.Fields
  13.            response.write("<tr><td><b>" & x.name & "</b></td>")
  14.            response.write("<td>" & x.value & "</td></tr>")
  15.      next
  16.      rs.MoveNext
  17. loop
  18. response.write("</table>")
  19. %>
复制代码


上一篇:  AJAX XML 下一篇:  AJAX ASP/PHP
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|小黑屋|学IT网-在线学习IT知识,学习编程知识 ( 京ICP备17027470号-2

GMT+8, 2019-11-17 17:59 , Processed in 0.031946 second(s), 32 queries .

Powered by xueit.wang 1.0

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表