如何刷新div内的查询

时间:2013-03-27 08:32:43

标签: php javascript jquery mysql

我使用JavaScript刷新div内容并加载包含查询的PHP文件以从MySQL获取数据。

这是我的jQuery代码:

<script type="text/javascript">
    var auto_refresh = setInterval(
    function ()
    {
    $('#random_notes').load('include/blocks/random_stories.php').fadeIn("slow");
    }, 2000); // refresh every 10000 milliseconds
</script>
<div id="random_notes" class='random'>s</div>

这是我的PHP文件:

<?php
    include "../../cp/config.php";
    $query = mysql_query("SELECT title FROM stories ORDER BY RAND()");
    $random_story = mysql_fetch_object($query);
    echo $random_story->title;
?>

页面加载并显示一行。刷新不会从数据库中获取另一行。我错过了什么?

还有另一段好的代码可以做同样的事情吗?每当我做任何事情时,这段代码都需要清理缓存。

3 个答案:

答案 0 :(得分:4)

我刚测试了你的逻辑,它对我来说很好,这就是我所拥有的

<div id="random_notes">
sdas
</div>

<script>
$(document).ready(function(){
    setInterval(function() {
        $('#random_notes').load('include/blocks/random_stories.php').fadeIn("slow");
    }, 5000)
});
</script>

这应该对你有用

答案 1 :(得分:2)

你需要在PHP中循环结果

while( $random_story = mysql_fetch_object($query) ) {
    echo $random_story->title;
}

答案 2 :(得分:0)

好的,我完成了修复

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

<div id="random_notes" class='random'>s</div>

这是cach问题我只是把现在的一切都变好了