gpt4 book ai didi

php - 使用 JQuery 实时更新?

转载 作者:行者123 更新时间:2023-11-29 04:04:28 34 4
gpt4 key购买 nike

目前,我有一个 Javascript (JQuery) 前端,它定期向一个单独的 PHP 脚本发出请求,该脚本返回帖子。

然而,为了提高效率,我只想将结果添加到数组中,甚至不查看现有帖子。

就目前而言,我已经尝试使用时间(即“SELECT * FROM table WHERE time >= $time”)来这样做,但是,我已经意识到它的局限性和无法符合我最初的想法。

有什么想法吗?我更愿意这样做,而不必将我的脚本改造成使用 XML 来传输数据——但是,如果这是唯一的情况,我将很乐意效劳。 :)

最佳答案

您的问题在很多方面都缺乏细节。我假设您要定期调用 PHP 脚本。我假设 posts 表有一个自动递增 ID。这样您就可以将其传递给查询并获取更新的帖子。

var current_id = 1234; // this will need to be filled in somehow

setInterval(get_latest_posts, 10000);

function get_latest_posts() {
$.getJSON('/latest', {current_id: current_id}, function(data) {
current_id = data.new_id;
// process data.posts
});
}

PHP 脚本:

<?php
mysql_connect(...);
mysql_select_db('...');

// retrieve newer posts
$current_id = intval($_POST['current_id']);
$sql = <<<END
SELECT * FROM posts WHERE id > $current_id
END;
$query = mysql_query($sql);
$new_id = $current_id;
$posts = array();
while ($row = mysql_fetch_array($query)) {
$posts[] = $row;
$new_id = max($new_id, $row['id']);
}

// return the posts as a JSON object
header('Content-Type: application/json');
echo json_encode(array(
'new_id' => $new_id,
'posts' => $posts,
));
?>

这个主题有很多变体。

关于php - 使用 JQuery 实时更新?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1898949/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com