当前位置: 首页 > 面试题库 >

jQuery每X分钟/秒重新加载一次AJAX数据

司徒志强
2023-03-14
问题内容

我编写了一个CMS,其中记录了谁最近登录了系统。目前,此数据通过Ajax馈入jQuery
UI选项卡。我想将此信息放入主页的侧边栏中,并每30秒(或一定时间)通过AJAX加载。

我将如何去做?PHP响应是否需要JSON编码?我对AJAX和JSON数据还很陌生。

这是我目前用于从用户表中提取详细信息的PHP-

<?php
$loginLog = $db->query("SELECT name_f, name_l, DATE_FORMAT(lastLogin, '%a, %b %D, %Y %h:%i %p') AS lastLogin FROM user_control ORDER BY lastLogin ASC LIMIT 10");
while ($recentLogin = $loginLog->fetch()) {
echo $recentLogin['name_f'] . " " . $recentLogin['name_l'] . " - " . $recentLogin['lastLogin'];
}
?>

谢谢! 更新

好的,这就是我到目前为止所拥有的..我所坚持的部分是如何遍历JSON并将其输入到框中。只要我仅使用一个结果并确保它不在[]中,它就可以正常工作。我只是在学习Ajax和JSON,由于某种原因,它对我来说并不容易。

Javascript-

$(document).ready(function(){

                function refreshUsers(){

                    $.getJSON('json.php', function(data) {

                            for (var i = 0; i < data.length; i++) {

                                $("#loadHere").html('<p>' + data.name + ' ' + data.lastLogin + '</p>');

                            }

                });

            }

                var refreshInterval = setInterval(refreshUsers, 30 * 1000);

                refreshUsers();

            });

我的PHP脚本输出的内容-

[{"name":"Joe Smith","lastLogin":"Fri, May 21st, 2010 08:07 AM"},{"name":"Jane Doe","lastLogin":"Fri, May 21st, 2010 07:07 AM"}]

谢谢!


问题答案:

PHP方面,请使用json_encode()。

客户端,使用$ .getJSON():

function refreshUsers(){
  $.getJSON(url, postData, function (data, textStatus){
    // Do something with the data
  });
}

// Keep interval in a variable in case you want to cancel it later.
var refreshInterval = setInterval(refreshUsers, 30 * 1000);

有了这些2,您应该有很多入门知识。不仅如此,您还会要求我们为您服务:)



 类似资料:
  • 问题内容: 我从修改了自己需求的网站上获得了此代码: 在test.php中: 所以我想在链接div中每5秒调用一次test.php。我该怎么做呢? 问题答案: 试试看 希望这可以帮助。

  • 问题内容: 如何在特定时间段内调用Ajax请求?我应该使用Timer插件还是jQuery为此提供插件? 问题答案: 您可以使用内置的javascript setInterval。 或者如果您是更简洁的类型…

  • 问题内容: 我有这段代码,但是当有人在我的网站上时,值可能会更改。我需要每30秒左右更新#finance div。能做到吗? 问题答案: 您可以将代码放在这样的单独函数中: 然后设置一个计时器,每30秒调用一次该函数: 祝好运!;)

  • 问题内容: 我在Django中的应用程序 可以 创建一些 非常大的SQL查询。我目前使用一个对象,作为我需要的数据,然后使用一个,以返回要显示给用户的内容。 显然,我可以让用户等待一分钟,同时正在执行这些许多查询集并从数据库中提取查询,然后返回此单一HTML页面。 理想情况下,我想在需要时更新页面,例如: 这可能吗? 问题答案: 我最近发现HttpResponse可以是生成器: 这将逐步将结果返回

  • 问题内容: 我正在使用Python和PyGTK。我对运行某个功能感兴趣,该功能每隔几分钟从串行端口获取数据并保存一次。 当前,我正在时间库中使用sleep()函数。为了能够进行处理,我将系统设置如下: 这种设置使我从串口读取数据的间隔为5分钟。我的问题是我希望能够让我的readserial()函数每隔5分钟暂停一次,并且能够一直执行操作,而不是使用time.sleep()函数。 关于如何解决这个问

  • 问题内容: 我想知道如何每x秒重绘和更新JPanel的背景…这是我的代码: 我的代码有2个问题:1-JPanel根本没有被绘制。2-第一张可以打印,然后每次打印数量增加一倍。有什么建议吗?先感谢您 更新:我以这种方式解决了这个问题: 更新2: 问题答案: 使用Swing计时器,