使用jquery自动刷新获得echo“test”但它不会从mysql查询中获取数据..我该如何解决?

时间:2013-09-21 08:44:41

标签: php jquery mysql

我将尝试尽可能清楚地解释这一点。我有一个自动刷新脚本。此脚本自动刷新div。我想在这个div中调用一个php文件,里面有mysql ..当我尝试调用那个php文件时,只有手动回声显示。它没有显示任何数据库..如果我检查PHP文件,我看到它自己的工作..我该如何解决这个问题?感谢。

我的剧本:

<script>
$(document).ready(function() {
    $("#feeds").load("sagmenu.php");
    var refreshId = setInterval(function() {
        $("#feeds").load("sagmenu.php");
    }, 2000);
    $.ajaxSetup({ cache: false });
});
</script>

<div id='feeds'></div>

我的PHP:

<?php 
$feeddatagetsq = mysql_query("SELECT * FROM feed ORDER BY id DESC");
$feeddataget = mysql_fetch_array($feeddatagetsq);

echo $feeddataget['id'];   //this does not display.. I want this to display..
echo "test"; //this displays..
?>

2 个答案:

答案 0 :(得分:0)

load()函数仅加载文件的html部分。因此,如果您希望数据库中的数据只是回显它

答案 1 :(得分:0)

我的朋友,$feeddataget['id']不是单一记录。它返回超过1行(显然只有ID列)。所以根据我的说法,你不能简单地通过回显到PHP文件来发送它。

请改用:

echo json_encode($feeddataget['id']);

在JS文件中,使用: var foo = $.parseJSON(responseText);(如果你想通过JQuery实现它) 并且,var foo = JSON.parse(responseText);(如果你想在没有JQuery的情况下这样做)

现在,foo是一个包含您从PHP文件返回的所有ID的数组。