0

我是ajax技术的初学者。我有一个用于执行 mysql_query 的 php,我想在客户端使用结果。

我的database.php

$q=mysql_query("SELECT name FROM customers");
$res=mysql_fetch_array($q);
echo json_encode($res);

和我的client.php

<div id="output">this element will be accessed by jquery and this text replaced </div>

<script id="source" language="javascript" type="text/javascript">

$(function () 
{
$.ajax({                                      
  url: 'database.php',                  //the script to call to get data          
  data: "",                        

  dataType: 'json',                //data format      
  success: function(data)          //on recieve of reply
  {
    var name = data[0];              

     $('#output').html("<b>id: </b>"+name);

    } 
});
}); 

</script>

这是我找到的一些教程。正如我看到的database.php作品。它打印正确的数据,但在client.php我什么也得不到。可能是什么问题呢?

---------已编辑---------

因此,似乎在 Web 服务器上运行 php 4.4.7 并且看起来 json_encode() 函数因此无法正常工作。我找到了一个“解决方案”。我包括 upgrade.php,据我了解,它为旧版本的 php 实现了新方法。这是它的网站http://include-once.org/p/upgradephp/

我无法升级 php 版本,所以这可能是一个好的解决方案吗?目前它不起作用

4

5 回答 5

0
$.ajax({                                      
  url: '/database.php',      //Correct path.                 
  //data: "",                       
  type : 'Get',
  dataType: 'json',                   
  success: function(data)          
  {
     alert(JSON.stringify(data)); 
     var name = data[0];    
     $('#output').html("<b>id: </b>"+name);
  } 
});
于 2012-05-14T08:05:38.113 回答
0
$.getJSON("database.php",function(data){
var entries = data;
$.each(entries,function(index,entry){
    //do stuff with json entry here
});
});
于 2012-05-14T08:09:02.157 回答
0

首先尝试提醒或提醒您的价值..如果它根据您的价值来做..

 <div id="output">this element will be accessed by jquery and this text replaced </div>

    <script id="source" language="javascript" type="text/javascript">

    $(function () 
    {
    $.ajax({                                      
      url: 'database.php',                  //the script to call to get data          
      data: "",                        

      dataType: 'json',                //data format      
      success: function(data)          //on recieve of reply
      {
       alert(data);  // check data value is coming or not..
        var name = data[0];              

         $('#output').html("<b>id: </b>"+name);

        } 
    });
    }); 

    </script>

为您检查它的印刷价值...

于 2012-05-14T07:55:49.960 回答
0

在 database.php 中使用此代码

    $q=mysql_query("SELECT name FROM customers");

    while($res=mysql_fetch_array($q))
{
$a[]=$res['name'];
}
    echo json_encode($a);
于 2012-07-05T08:51:42.523 回答
0

正确地是这样:

数据库.php

if (isset($_POST['getData'])) {
    $q=mysql_query("SELECT name FROM customers");
    $res=mysql_fetch_array($q);
    echo json_encode($res);
    die();
}

客户端.php

<div id="output">this element will be accessed by jquery and this text replaced </div>

<script id="source" language="javascript" type="text/javascript">

$(function () 
{
    $.ajax({                                      
        url: 'database.php',                  //the script to call to get data          
        type: "post",
        data: { getData: true },
        dataType: 'json',                //data format      
        success: function(data)          //on recieve of reply
        {
            var name = data[0];              

            $('#output').html("<b>id: </b>"+name);

        } 
    });
}); 

</script>
于 2012-05-14T08:27:01.193 回答