2011-12-09 28 views
0

我想在我的網站上進行聊天。 非常基本我希望人們登錄聊天。當他們這樣做時,我會向他們展示最後5次的信息。在我的網站上製作聊天功能

當某人正在寫入某些內容時,它將被放入數據庫,然後使用數據庫中的新文本重新加載該站點。所以它只在用戶寫入內容時才起作用,因爲只有在按下'Write'時它纔會更新。

爲了讓它更好,我正在考慮讓javascript查找數據庫的內容,並每隔3-5秒。

這是正確的做法還是有更好的方法?

+0

這是相當給自己實現一個很難的事情。爲什麼不使用現成的聊天部件? http://sixrevisions.com/tools/10-free-website-chat-widgets-to-make-your-site-interactive/ –

+0

寫一個網站的聊天應用程序並不重要。我建議你找到並使用已經存在的工具。您尚未指定要使用的數據庫,或者查看數據庫內容的javascript意味着什麼,所以我無法真正判斷您的解決方案,除非要說除非您非常仔細地使用正確的解決方案來實施解決方案工具不能很好地工作。 – Cam

+0

如何使用node.js? :) – Oyeme

回答

1
Yes, recently i've made a simple groupchat application with javascript and php and i used to check the text file where all the chat messages i'm writing to for every 2 secs....    

<div id="chatbox"></div>//html div element where i've to paste the message data 



$("#submitmsg").click(function(){ 
    $.post("post.php", {text: send_mymsg});//where am sending my data to a php file to write into a html file "log.html" 
} 

function loadLog(){ 
    $.ajax({ 
      url: "log.html", 
      cache: false, 
      success: function(html){ 
       $("#chatbox").html(html); 
     }); 
} 
setInterval (loadLog,2000); 
3

很多網站上的聊天服務都使用java或flash,而不是JavaScript中,原因是這些語言提供套接字支持,這意味着他們可以有一個永久的開放連接到服務器進行更新。

與JavaScript你必須定期輪詢服務器使用ajax或彗星這是一個長輪詢技術,但它不得不重新建立連接時不時。

當html5更廣泛時,您將能夠使用web-sockets來偵聽服務器的更新,但現在ajax或基於flash的插件(甚至只是提供js使用的套接字)是最可行的選項。

像這樣將提供一個插座SWF-JS型橋樑談談你的服務器

http://code.google.com/p/jssockets/