当前位置:编程学习 > JS >>

PHP和AJAX的MySQL数据库的例子

PHP和AJAX的MySQL数据库的例子

用户信息将在这里列出。

这个例子包含了四个要素:

MySQL数据库
一个简单的HTML表单
一个JavaScript
一个PHP网页



数据库
这个数据库我们将使用在这个例子中看起来像这样:

id FirstName LastName Age Hometown Job
1 Peter Griffin 41 Quahog Brewery
2 Lois Griffin 40 Newport Piano Teacher
3 Joseph Swanson 39 Quahog Police Officer
4 Glenn Quagmire 41 Quahog Pilot

<html>
<head>
<script src="selectuser.js"></script>
</head>
<body>
<form> 
Select a User:
<select name="users" onchange="showUser(this.value)">
<option value="1">Peter Griffin</option>
<option value="2">Lois Griffin</option>
<option value="3">Glenn Quagmire</option>
<option value="4">Joseph Swanson</option>
</select>
</form>
<p>
<div id="txtHint"><b>User info will be listed here.</b></div>
</p>
</body>
</html>

例如解释-的H TML表单
正如你所看到的,这只是一个简单的HTML格式的下拉框中所谓的“用户”的名字和“身份证”从数据库,作为选择的价值。

该段以下的形式包含一个专区所谓的“ txtHint ” 。该专区是用作预留位置信息检索的网络服务器。

当用户选择的数据,一个函数称为“ showUser ( ) ”执行。执行的职能是引发的“ onchange ”事件。

换句话说:每一次变化的用户的价值在下拉框中,功能showUser ( )被调用。




的JavaScript
这是JavaScript代码存储在文件中“ selectuser.js ” :

var xmlHttp
function showUser(str)
{ 
xmlHttp=GetXmlHttpObject()
if (xmlHttp==null)
 {
 alert ("Browser does not support HTTP Request")
 return
 }
var url="getuser.php"
url=url+"?q="+str
url=url+"&sid="+Math.random()
xmlHttp.onreadystatechange=stateChanged 
xmlHttp.open("GET",url,true)
xmlHttp.send(null)
}
function stateChanged() 
{ 
if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
 { 
 document.getElementById("txtHint").innerHTML=xmlHttp.responseText 
 } 
}
function GetXmlHttpObject()
{
var xmlHttp=null;
try
 {
 // Firefox, Opera 8.0+, Safari
 xmlHttp=new XMLHttpRequest();
 }
catch (e)
 {
 //Internet Explorer
 try
  {
  xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
  }
 catch (e)
  {
  xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
 }
return xmlHttp;
}

例如解释
该stateChanged ( )和GetXmlHttpObject职能是一样的PHP的AJAX章建议,您可以去那里解释这些。

该showUser ( )函数

如果一个项目在下拉框中选择执行的功能如下:

吁请GetXmlHttpObject函数创建一个XMLHTTP物件
界定了网址(档)传送给服务器
添加一个参数( Q )的网址与内容的下拉框
添加一个随机数字,以防止服务器使用快取档案
呼叫stateChanged改变时,就会触发
开幕XMLHTTP物件与特定网址。
发送一个HTTP请求到服务器



PHP页面
该服务器的页面要求的JavaScript ,是一个简单的PHP文件名为“ getuser.php ” 。

该网页是PHP写成的,并使用一个MySQL数据库。

该代码运行一个SQL查询的数据库,并返回结果作为HTML表:

<?php
$q=$_GET["q"];

$con = mysql_connect('localhost', 'peter', 'abc123');
if (!$con)
 {
 die('Could not connect: ' . mysql_error());
 }

mysql_select_db("ajax_demo", $con);

$sql="SELECT * FROM user WHERE id = '".$q."'";

$result = mysql_query($sql);

echo "<table border='1'>
<tr>
<th>Firstname</th>
<th>Lastname</th>
<th>Age</th>
<th>Hometown</th>
<th>Job</th>
</tr>";

while($row = mysql_fetch_array($result))
 {
 echo "<tr>";
 echo "<td>" . $row['FirstName'] . "</td>";
 echo "<td>" . $row['LastName'] . "</td>";
 echo "<td>" . $row['Age'] . "</td>";
 echo "<td>" . $row['Hometown'] . "</td>";
 echo "<td>" . $row['Job'] . "</td>";
 echo "</tr>";
 }
echo "</table>";

mysql_close($con);
?>
转载请注明来自http://www.zhaoxi.org/wy/yw.html
补充:网页制作,js教程 
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,