4

我正在使用 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;
?>

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

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

4

3 回答 3

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>

这应该适合你

于 2013-03-27T11:50:57.657 回答
2

您需要在 PHP 中遍历结果

while( $random_story = mysql_fetch_object($query) ) {
    echo $random_story->title;
}
于 2013-03-27T08:35:20.200 回答
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>

这是缓存问题我只是关掉缓存现在一切正常

于 2013-03-27T10:37:51.467 回答