Php 使用javascript进行聊天

Php 使用javascript进行聊天,php,javascript,ajax,chat,Php,Javascript,Ajax,Chat,我想用javascript制作一个聊天系统。我不想要任何现有的应用程序。我需要知道聊天是如何工作的?我可以在没有任何数据库的情况下完成吗?这就像每隔x秒检查数据库中的特定字段一样。或者可以使用http请求吗?如果可以,我对php页面的请求如何更新其他客户端浏览器中的div 代码示例不胜感激 Node.js是一个流行的客户端服务器/客户端库,许多人利用它进行聊天。他们的网站上甚至有一个带有源代码的演示 对于一个没有库的类似概念,我建议使用javascript html5套接字。首先,是的,没有数据

我想用javascript制作一个聊天系统。我不想要任何现有的应用程序。我需要知道聊天是如何工作的?我可以在没有任何数据库的情况下完成吗?这就像每隔x秒检查数据库中的特定字段一样。或者可以使用http请求吗?如果可以,我对php页面的请求如何更新其他客户端浏览器中的div


代码示例不胜感激

Node.js是一个流行的客户端服务器/客户端库,许多人利用它进行聊天。他们的网站上甚至有一个带有源代码的演示


对于一个没有库的类似概念,我建议使用javascript html5套接字。首先,是的,没有数据库也可以实现这一点。事实上,平面文件可能更好,这取决于您的具体要求

至于你的第二个问题,不,你不应该每x秒检查一次更新。通过每x秒检查一次,您正在浪费宝贵的服务器资源,特别是如果您的聊天系统是数据库驱动的。Comet(或长轮询)是一种特别适合聊天的技术。它的工作原理如下:

客户端创建与服务器的连接,该连接保持打开状态,直到服务器指示有更新。然后服务器将更新推送到客户端并断开连接。然后,客户端重新连接到服务器并等待另一个更新。只要用户在页面上,此过程就会持续


这种方法比每x秒调用一次服务器要高效得多。这也意味着内容一可用就被推送到客户端。

听起来你可能想看看node.js:如果你想使用JavaScript(也在服务器端),你可以用node.js和DNode很容易地做到这一点。只需在客户端以调用任何JavaScript函数的方式调用服务器函数。我不喜欢使用任何库…然后我建议您熟悉JavaScript的本机html5套接字功能:@JinuJD该库仅作为构建聊天服务器的基础框架存在,正如您可能使用.NET framework编写winforms应用程序一样。利用图书馆没有错!明白…但如果我需要创建一个库呢?为什么要重新发明轮子?将这些开放源代码库合并到您自己的库中,用于您的自定义目的。那么…如何使用javascript检查是否有更新?您将使用AJAX。PHP做“后端”工作,即检索新内容,并使用Javascript将内容放在页面上。在Google搜索“PHP comet chat”,您将找到该系统的一系列示例实现。但基本上,它们都是按照我概述的原则工作的。