每次我的while循环从数据库中获取一些数据时,如何插入一大块代码

时间:2013-06-29 17:56:01

标签: php jquery ajax

我的数据库中有一张表。我使用while循环来遍历它们。并使用获取的数据创建一个HTML div。我使用了LIMIT 10,因为帖子中的条目会随着用户将帖子插入表格而不断变化

$get_ids=mysql_query("SELECT * FROM posts ORDER BY id LIMIT 10");
while($row = mysql_fetch_array($get_ids)){
            $sm=$row['message'];
            echo "<div>".$sm"</div>";
}

我想知道的是我如何使用jquery使这个脚本每隔1秒左右将这10个div插入到我的DOM中。请帮助请紧急!!!!

3 个答案:

答案 0 :(得分:1)

您将该代码放在一个单独的文件中(例如:divfill.php),然后使用类似的东西

$.get({
    'url': 'divfill.php',
    'success': function(data) {
       $("#content").html($("#content").html() + data);
    }
});

答案 1 :(得分:1)

尝试谷歌搜索一些jquery&amp; php webservice示例。基本上你应该做这样的事情:

//Javascript function which fetches the single data as J.D.Smith suggested
function getHtml()
{
   $.get({
      'url': 'Address of your php webservice',
      'success': function(data) {
           $("#content").html($("#content").html() + data);   //Append html to your page
       }
   });
}

//Call the function every 10 sec, place it in $(document).ready() or anything else you use
window.setTimeout(function () {
        getHtml();
    }, 10000);

此代码更像是工作代码

的说明性示例

答案 2 :(得分:0)

在我的情况下,我在我的js文件中添加了以下方法,

    //call the target function after 250 ms
function async(targetFn, callback) {
    setTimeout(function () {
        targetFn();
        callback();
    }, 250);
}

而且,我将此功能称为如下所示,

async(BindValuesInLookup, function () {
         BuildGrid()
         GetInfo();
    });

BindValuesInLookup是目标函数。它在250ms后被解雇。完成后,将执行回调函数。因此,您可以在循环中使用此功能,并将超时时间增加到1000(1秒)。

谢谢, VIM