首頁 > 後端開發 > php教程 > my summer holiday英文作文 用PHP+MySql寫聊天室

my summer holiday英文作文 用PHP+MySql寫聊天室

WBOY
發布: 2016-07-29 08:34:30
原創
1226 人瀏覽過

大家好!好久沒看到大家了,上次寫了用PHP的透過檔案操作的聊天室,當然是漏洞百出的,而且每一次刷新螢幕都很糟糕的!我想了好久,是不是能有一種方法不要刷新,就能取得發言的訊息了?多用一個框架就能實現這個效果了,即多用一個框架我們稱為getmsg,我們讓getmeg去獲取信息而且保證每一次取得的信息是最新的,就是上次取得的發言就不要了,上次我編的就是每一次取得資訊都是重複的,這樣效果不好。
     我的設計思想是:每一次發言,都把它提交到伺服器上,然後保存到一個資料庫裡,每格幾秒鐘getmsg就去伺服器上取得最新發言數據,並保證上次取得的發言就不要取下來了,然後把取下來的發言疊加到一個專門顯示發言的視窗(listmsg)去。這樣我們就感覺listmsg視窗不會有重刷新的感覺而且,只是看到發言信息不斷加進去,這樣就有很好的效果,
怎樣在一個框架把信息加到另個框架去了?用JavaScript就可以實現這個想法的:

當然你得在mysql裡建兩個表,一個表用於保存發言信息,一個表用於保存幾個在線的,在列在線人數時,我們讓它每個60秒刷新一次,並把一分鐘以前的發言刪掉,並看某個發言人是不是很長時間沒發言了,是的話,就刪掉他,
由於表的子段很簡單,在這裡就不要寫出來了,看程式就會知道了。這個程式在網路下測試的效果都很好!
表格的名稱是:chat和chat_getmsg

if(!isset($username))  
    $$username= “客人”;
  $c
  mysql_select_db("yourdadabase",$conid);
$dstr=date("YmdHis");
$sql="insert chat_getmsg(使用者名稱,shijian)values('$username','$dstr')";
mysql_query($sql,$conid);
$sql="update chat_getmsg set shijian='$dstr' where username='$username'";
mysql_query($sql,$conid);
mysql_close($conid);
? charset=gb2312">

  
  
    
    
  
    
   n" ?>
   n"; ?>
  

<br>
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板