PHP/MySQL/jQuery/AJAX 类似 Twitter 的新闻提要更新

标签 php javascript jquery mysql ajax

我怎样才能让我的网站上的新闻提要在设定的时间间隔内检查是否有新的状态更新,然后显示一个按钮说“(?)新消息”,然后当它被点击时只加载新的并将它们附加到同一个 feed div 中?

我想到了几种方法,但它们都以复杂的方式结束,因为我不想替换已经加载的那些(因为我有 10 个的限制并且我在底部有一个加载更多按钮加载较早的帖子)。

最佳答案

您可以执行以下步骤:

  1. 制作一个 PHP 脚本,在没有新消息时返回新消息或 false
  2. 使用 jQuery 将 Ajax 调用写入 PHP 脚本
  3. 检查响应是否返回false或数据,将其显示到页面上的某个div
  4. 如果返回了一定数量的消息,计算它们并删除已加载的消息以保持在 10 条消息的限制范围内
  5. 设置执行 Ajax 调用的时间间隔

试试吧。当您有一些代码时:编辑您的问题(根据您的尝试),如有必要,我们可以进一步帮助您。 SO 不是您可以“订购”现成脚本的地方;-)

伪代码

PHP

if(amount of results from database after last update time) {

    return messages

}else{

    return false

}

jQuery

send last update time with Ajax

if(return of Ajax == false) {

    do nothing

}else{

    prepend messages to certain div
    remove last messages to stay at limit of 10 messages
    set last update time

}

关于PHP/MySQL/jQuery/AJAX 类似 Twitter 的新闻提要更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17786081/

相关文章:

javascript - 创建 'divs' 层并在单击相应按钮时显示它们

javascript - BlueImp Gallery 允许垂直拖动图像

jquery - 文档准备好后无法选择元素

php - 如何在 echo 调用中运行函数

javascript - 选择复选框不适用于 JavaScript

php - 如何在 Yii2 中显示带有子类别的类别

javascript - 上一页 下一页 Javascript

php - 将多个选择选项放入 PHP 数组

javascript - 来自其他组件的 Angular 5 输入数组,导致长度为 0

javascript - 无法在 Node.js 循环中设置超时