Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/226.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 允许收件人自动查看更新_Php_Jquery_Ajax - Fatal编程技术网

Php 允许收件人自动查看更新

Php 允许收件人自动查看更新,php,jquery,ajax,Php,Jquery,Ajax,我在测试我的网站时意识到,收到消息/评论的用户必须在看到任何警报或更改之前刷新页面 在comments.php?do=comment&id=1中,显示id为1的帖子供用户评论 我使用这个表单提交一条评论,在同一页面上通过mysql获取来显示内容 输入name=“getcomment”type=“text”value=“你的想法是什么?”/> 我在网上看到了很多关于在提交新评论(针对收件人)时自动更新内容的资源,但我不确定哪一个是最好的。请记住,这是一个规模非常小的网站 我有什么选择?(JQu

我在测试我的网站时意识到,收到消息/评论的用户必须在看到任何警报或更改之前刷新页面

comments.php?do=comment&id=1
中,显示id为1的帖子供用户评论

我使用这个表单提交一条评论,在同一页面上通过mysql获取来显示内容


输入name=“getcomment”type=“text”value=“你的想法是什么?”/>

我在网上看到了很多关于在提交新评论(针对收件人)时自动更新内容的资源,但我不确定哪一个是最好的。请记住,这是一个规模非常小的网站

  • 我有什么选择?(JQuery/Ajax似乎是最简单的)但是“轮询”数据库效率低吗

  • 我将如何实现这一点(我发现这是最困难的)


  • 您只需要每隔几秒钟轮询一次php脚本,如下所示。 记住,这是一个规模非常小的网站,你可以做你想做的事

    setInterval(function(){
       $.ajax({
         url: "getComments.php"
       }).done(function(comment) {
         // show new comments
         $('#comment_section').append(comment);
       });
    },5000); // poll every 5 seconds
    

    我认为最好的选择是使用JQuery/Ajax,因为它比使用套接字便宜得多


    如果您的用户不需要立即收到更新,您可以进行投票。

    谢谢!在
    “显示新注释”
    部分,我会在其中添加什么内容?保存我的
    SELECT
    查询的刷新方法?你这么说是什么意思?保存我的SELECT查询的刷新方法在我的
    comments.php
    中,我有一篇被评论的帖子。下面是一个
    ,包含一个
    SELECT
    查询以转发注释。这是需要自动更新的。否。。将该查询部分移动到另一个php
    getComments.php
    ,然后用ajax简单地轮询该php。只需查询?因为我在
    comments.php
    中的查询之后也使用了
    mysqli_fetch_数组
    ,你说的“便宜的替代品”是什么意思?这不是真的,带宽和性能方面的套接字要高得多。这就是我假设的,轮询数据库肯定比使用socket效率更低。请看一看,一个可以与php一起使用的框架,用于通知客户端类似的事件。关于第二个问题,我可以链接到另一个感谢,我将对此进行研究。是什么使socket.io优于其他类似服务?(如果有的话)。我个人使用signalr,但那是针对.NET的。基本上,signar做的和socket.io一样,但socket.io更成熟。它看起来肯定更简单。哦,好吧,是的,看起来确实有点混乱,但我一定会仔细阅读