AJAX返回数据的类型有两种,一种是TEXT类型,一种是JSON类型。
使用TEXT类型,访问数据库后将结果拼接成字符串,返回时在拆分成数组使用。
JSON直接将结果转成JSON数据,返回时直接使用。
首先引入类文件(DBDA.class.php):
class DBDA
{
public $host="localhost"; //数据库相关操作
public $uid = "root";
public $pwd = "";
public $dbname = "12345"; //数据库表名
function JSONQuery($sql,$type=1)
{
$db = new MySQLi($this->host,$this->uid,$this->pwd,$this->dbname);
$r = $db->query($sql);
if($type==1)
{
return json_encode($r->fetch_all(MYSQLI_ASSOC)); //将结果转换成JSON数据
}
else
{
return $r;
}
}
}
随便使用数据库中一张表测试:
代码:
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>Document</title>
<script src="jquery-1.11.2.min.js" type="text/javascript" charset="utf-8"></script>
</head>
<body>
<input type="button" name="dianji" id="dianji" value="点击" />
</body>
<script type="text/javascript">
$("#dianji").click(function() {
$.ajax({
type: "post",
url: "tttchuli.php",
dataType: "JSON",
success: function(r) {
alert(r[0].Name); //输出数据库中第一个名字
}
});
})</script>
</html>
处理界面(tttchuli.php):
<?php
include("DBDA.class.php");
$db = new DBDA();
$sql = " select * from login ";
echo $db->JSONQuery($sql);
?>
结果: