【问题标题】:how can I refresh the query inside the div如何刷新 div 内的查询
【发布时间】:2013-03-17 06:42:37
【问题描述】:

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

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

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

【问题讨论】:

  • Please, don't use mysql_* functions 在新代码中。它们不再被维护并且是officially deprecated。看到红框了吗?改为了解准备好的语句,并使用 pdomysqli
  • 感谢您提供的链接,因为我还在学习中,这对我有很大帮助
  • 尝试自己运行 php 脚本,检查显示的内容,您还必须循环遍历结果集
  • @Lappies 是的,它的工作和非常刷新会改变行,但我需要 jquery 自动刷新 div,它的刷新成功但 php 文件总是得到相同的结果,因为它没有刷新我需要的只是刷新php文件

标签: php javascript jquery mysql


【解决方案1】:

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

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

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

这应该适合你

【讨论】:

    【解决方案2】:

    你需要在 PHP 中循环遍历结果

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

    【讨论】:

    • 谢谢你,但同样的事情只有一行然后总是得到同一行为什么随机不起作用?
    • 它的 30 行,我显示所有然后我使用 LIMIT 1 它现在只显示一个并且不刷新
    【解决方案3】:

    好的,我搞定了

    <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-02-09
      • 2016-02-21
      • 2018-03-27
      • 1970-01-01
      • 1970-01-01
      • 2018-11-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多