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); ?>
结果: