Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/10.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向Ajax发送请求?_Php_Ajax - Fatal编程技术网

如何让PHP向Ajax发送请求?

如何让PHP向Ajax发送请求?,php,ajax,Php,Ajax,如何通过Ajax向其他用户发送PHP请求 例如,如果用户A按下该按钮,则用户B和其他人都不会立即弹出通知。在我的应用程序中,我使用$\u SESSION声明一个登录用户,并使用我自己从头构建的书面登录系统 我只希望PHP向特定用户发送带有一些数据的请求。正如Barmar所说,WebSockets是处理连续轮询场景的事实标准 但是,如果您的应用程序不需要实时更新,并且用户数量永远不会超过一定数量,则可以使用JavaScript计时器从AJAX事务加载生成的XML,并通过DOM更新页面。要意识到扩展

如何通过Ajax向其他用户发送PHP请求

例如,如果用户
A
按下该按钮,则用户
B
和其他人都不会立即弹出通知。在我的应用程序中,我使用
$\u SESSION
声明一个登录用户,并使用我自己从头构建的书面登录系统


我只希望PHP向特定用户发送带有一些数据的请求。

正如Barmar所说,WebSockets是处理连续轮询场景的事实标准

但是,如果您的应用程序不需要实时更新,并且用户数量永远不会超过一定数量,则可以使用JavaScript计时器从AJAX事务加载生成的XML,并通过DOM更新页面。要意识到扩展连续轮询应用程序有多么困难

如果您选择使用连续轮询AJAX,预期的设计将遵循以下原则:

  • 用户
    A
    将数据发布到服务器上的PHP程序
  • PHP程序将用户的操作保存到数据库中的“缓存”表中
  • 用户
    B
    的客户端最终向服务器发出AJAX请求
  • “缓存”表中包含该用户用户ID(
    $\u会话['user\u ID']
    或类似内容)的任何项目都将被返回 发送到用户的客户端
  • 用户
    B
    的客户端提醒他们已收到消息
  • 请记住,即使您仅每30秒进行一次轮询,如果有足够的用户,在轮询消息时,您可能会在自己的服务器上进行DDoS攻击


    • WebSocket RFC-

    • WebSocket基础知识-


    AJAX请求从浏览器发送到服务器,而不是从另一个方向。如果服务器需要发送到浏览器,则需要使用WebSocket建立永久连接。或者你可以在AJAX中使用定期轮询。@Barmar我曾考虑过定期轮询,但它似乎不专业。@Barmar barman在说什么。如果您要使用web套接字,请查看NodeJ和。也没有PHP请求这样的东西,你指的是http请求。@Maantje好极了,这就是我要找的。谢谢看看服务器端js。它取代了对setinterval的需求,基本上是从服务器推送请求