[ajax] 聊天室, 來一句接一句, 來一句接一句 XD

看板Ajax作者 (悟道修行者)時間14年前 (2011/07/11 19:30), 編輯推噓5(502)
留言7則, 4人參與, 最新討論串1/1
用 AJAX 寫個聊天室, 看過的 example 很少 只看過 document.getElementById("myDiv").innerHTML=xmlhttp.responseText; ... 略 xmlhttp.open("POST","get.php",true); xmlhttp.send(); 之類的, 而 get.php 裡面是 SELECT * from ...;一口氣把所有的對話顯示出來 例如: 瀏覽器看到的聊天室畫面為 Jack said: one Merry said: two John said: three _______________________________________________ |_____submit____| _______________________________ 接下來,Jack又說了four, 我要用Ajax得到Jack說了什麼,用get.php 變成得從 server 那再 Request 東西進來, Jack said: one, Merry said...... 之前抓到的東西又要再一次 Request 很浪費資源, 有沒有辦法,get.php當中的mysql_query()只要抓到目前螢幕沒有的,別人最新輸入的話 而且 Ajax 也要配合寫出來。 換句話說,xmlhttp.responseText永遠都是最新的資料,而不要從頭開始抓。 用 <div id="myDiv"></div>,邏輯上好像辦不到 請高人指點一下 多謝 :-) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.167.0.145 ※ 編輯: alfadick 來自: 218.167.0.145 (07/11 19:35)

07/11 19:45, , 1F
http://3wa.tw/chat 小弟寫的,玩看看 XD
07/11 19:45, 1F

07/11 19:48, , 2F
我是拿最後一個id來當參考讀入值,往後拿資料
07/11 19:48, 2F

07/11 20:07, , 3F
不過那時在寫的時候js很菜,寫的很雜亂~日久失修了
07/11 20:07, 3F

07/11 21:24, , 4F
為訊息編號 request時只傳回較新編號的訊息~
07/11 21:24, 4F

07/11 22:04, , 5F
拿資料時把使用端取得的最後留言時間給傳過去
07/11 22:04, 5F

07/11 22:04, , 6F
這樣後臺就可以只取出在該發言之後的訊息丟回來
07/11 22:04, 6F

07/12 09:50, , 7F
記錄timestamp吧
07/12 09:50, 7F
文章代碼(AID): #1E6jxUWu (Ajax)
文章代碼(AID): #1E6jxUWu (Ajax)