使用Ajax和PHP从MySQL检索数据时出错

时间:2015-01-21 19:03:06

标签: php jquery mysql ajax

我想使用ajax从mysql获取数据,但它不起作用。当我运行以下代码时

这是ajax的脚本

  $( document ).ready(function() {
        $.ajax({
            type: "GET",
            url: "page/tester.php",
            dataType: "html",
            data:null,
            cache:false, //same get error
            contentType: "application/json; charset=utf-8",
            success: function(data)
            {
                alert("test");
            },
            error:function()
            {
                alert("sux");
            }
        });});

这里是php文件的脚本

<?
    //$account=$_GET["query"];
    $account="name";
    $password="pass";
    $pass=hash("whirlpool",$password);
    $qy=mysql_query(sprintf("SELECT * FROM `user` WHERE `Username`='{$account}' AND `Password`='{$pass}'"));
    if(mysql_num_rows($qy)==1)
    {
        $result=json_encode(mysql_fetch_assoc($qy));
    }
    echo "queryResults('" . $result . "');";
?>

php文件的结果,如果我只是打开它:

queryResults('{"ID":"1","Nickname":"Dorin Yanke","Username":"mineralo","Password":"70b993a77bd5c5c3d9313a746079f5b6149231bfabf4a790556cb7daeafeca091e4bcc930aad28a6791492594b30e212661c09b0e9ef482593781ceda1415f70","Admin":"5","Online":"0","Toolbar_Color":"default","Profile_Pic":"default.png"}');

现在工作正常,现在离开了如何在数组中输入所有这些东西,以便能够管理所有信息,如“data ['ID']”

2 个答案:

答案 0 :(得分:-2)

自PHP 5.5.0起,不推荐使用Mysql_query。此外,我不知道您将在何处连接到您的数据库。在您尝试处理ajax查询之前,您的页面是否可以显示一些能够连接并查询数据库的确认信息?

答案 1 :(得分:-2)

在网址末尾添加一个随机数。

url:“page / tester.php?random_number =”+ Math.random()

注意:将缓存设置为false只能在HEAD和GET请求中正常工作。 http://api.jquery.com/jquery.ajax/

另请注意,从jquery 1.8开始:

弃用注意:自jQuery 1.8起,不推荐使用jqXHR.success(),jqXHR.error()和jqXHR.complete()回调。要准备最终删除的代码,请改用jqXHR.done(),jqXHR.fail()和jqXHR.always()。

http://api.jquery.com/jquery.ajax/

请在投票前阅读文档。