Home >Backend Development >PHP Tutorial >怎样实现在线用户列表?_PHP

怎样实现在线用户列表?_PHP

WBOY
WBOYOriginal
2016-06-01 12:34:091425browse
PHP代码:
<font color="#000000"><br><br><br><font color="#0000bb"><br><br></font><font color="#ff8000">#<br><br># Author: Marco(hkfuk)<br><br>#<br><br># Contact: Crazy_Marco@msn.com<br><br>#<br><br></font><font color="#0000bb">$host</font><font color="#007700">=</font><font color="#dd0000">"localhost"</font><font color="#007700">;</font><font color="#ff8000">//mysql的host<br><br></font><font color="#0000bb">$user</font><font color="#007700">=</font><font color="#dd0000">"root"</font><font color="#007700">;</font><font color="#ff8000">//mysql的用戶名稱<br><br></font><font color="#0000bb">$pw</font><font color="#007700">=</font><font color="#dd0000">""</font><font color="#007700">;</font><font color="#ff8000">//mysql的密碼<br><br></font><font color="#0000bb">$db</font><font color="#007700">=</font><font color="#dd0000">""</font><font color="#007700">;</font><font color="#ff8000">//mysql資料庫名稱<br><br></font><font color="#0000bb">$update_time</font><font color="#007700">=</font><font color="#dd0000">"30"</font><font color="#007700">;</font><font color="#ff8000">//更新的頻率---秒数<br><br></font><font color="#0000bb">session_start</font><font color="#007700">();<br><br>if(!</font><font color="#0000bb">$_SESSION</font><font color="#007700">[</font><font color="#dd0000">'name'</font><font color="#007700">])</font><font color="#0000bb">session_register</font><font color="#007700">(</font><font color="#dd0000">"name"</font><font color="#007700">);<br><br></font><font color="#ff8000">############################################<br><br></font><font color="#0000bb">$con</font><font color="#007700">=</font><font color="#0000bb">mysql_connect</font><font color="#007700">(</font><font color="#0000bb">$host</font><font color="#007700">,</font><font color="#0000bb">$user</font><font color="#007700">,</font><font color="#0000bb">$pw</font><font color="#007700">)or die(</font><font color="#dd0000">"不可以連接資料庫"</font><font color="#007700">);<br><br></font><font color="#0000bb">$now</font><font color="#007700">=</font><font color="#0000bb">time</font><font color="#007700">();<br><br></font><font color="#0000bb">mysql_select_db</font><font color="#007700">(</font><font color="#0000bb">$db</font><font color="#007700">,</font><font color="#0000bb">$con</font><font color="#007700">)or die(</font><font color="#dd0000">"錯誤的資料庫$db"</font><font color="#007700">);<br><br>if(!empty(</font><font color="#0000bb">$name</font><font color="#007700">)){</font><font color="#ff8000">//如果用戶已經登入了<br><br></font><font color="#0000bb">$query</font><font color="#007700">=</font><font color="#0000bb">mysql_query</font><font color="#007700">(</font><font color="#dd0000">"select count(username) from online_list where username='$name'"</font><font color="#007700">,</font><font color="#0000bb">$con</font><font color="#007700">);</font><font color="#ff8000">//查詢在線到表是否已經有用戶的名稱<br><br></font><font color="#0000bb">$result</font><font color="#007700">=</font><font color="#0000bb">mysql_result</font><font color="#007700">(</font><font color="#0000bb">$query</font><font color="#007700">,</font><font color="#0000bb">0</font><font color="#007700">);</font><font color="#ff8000">//查詢的結果<br><br></font><font color="#007700">if(</font><font color="#0000bb">$result</font><font color="#007700">!=</font><font color="#0000bb">0</font><font color="#007700">){</font><font color="#ff8000">//如果用戶已經在在線列表了<br><br></font><font color="#007700">@</font><font color="#0000bb">mysql_query</font><font color="#007700">(</font><font color="#dd0000">"update online_list set second_time='$now' where username='$name'"</font><font color="#007700">,</font><font color="#0000bb">$con</font><font color="#007700">);</font><font color="#ff8000">//更新用戶的最後在線時間<br><br></font><font color="#007700">}else{</font><font color="#ff8000">//如果用戶已經不在在線列表<br><br></font><font color="#007700">@</font><font color="#0000bb">mysql_query</font><font color="#007700">(</font><font color="#dd0000">"insert into online_list(username,userip,online_time,second_time)values('$name','$REMOTE_ADDR','$now','$now')"</font><font color="#007700">,</font><font color="#0000bb">$con</font><font color="#007700">);</font><font color="#ff8000">//新增一個用戶到在線列表<br><br></font><font color="#007700">}<br><br>}<br><br><br><br>else{</font><font color="#ff8000">//如果用戶沒有登入<br><br></font><font color="#0000bb">$query</font><font color="#007700">=</font><font color="#0000bb">mysql_query</font><font color="#007700">(</font><font color="#dd0000">"select count(userip) from online_list where userip='$REMOTE_ADDR'"</font><font color="#007700">,</font><font color="#0000bb">$con</font><font color="#007700">);</font><font color="#ff8000">//查詢在線到表是否已經有訪客的ip 地址<br><br></font><font color="#0000bb">$result</font><font color="#007700">=</font><font color="#0000bb">mysql_result</font><font color="#007700">(</font><font color="#0000bb">$query</font><font color="#007700">,</font><font color="#0000bb">0</font><font color="#007700">);</font><font color="#ff8000">//查詢的結果<br><br></font><font color="#007700">if(</font><font color="#0000bb">$result</font><font color="#007700">!=</font><font color="#0000bb">0</font><font color="#007700">){</font><font color="#ff8000">//如果訪客的ip地址已經在在線列表了<br><br></font><font color="#007700">@</font><font color="#0000bb">mysql_query</font><font color="#007700">(</font><font color="#dd0000">"update online_list set second_time='$now' where userip='$REMOTE_ADDR'"</font><font color="#007700">,</font><font color="#0000bb">$con</font><font color="#007700">);</font><font color="#ff8000">//更新訪客的最後在線時間<br><br></font><font color="#007700">}else{</font><font color="#ff8000">//如果用戶列表沒有訪客的ip地址<br><br></font><font color="#007700">@</font><font color="#0000bb">mysql_query</font><font color="#007700">(</font><font color="#dd0000">"insert into online_list(username,userip,online_time,second_time)values('訪客','$REMOTE_ADDR','$now','$now')"</font><font color="#007700">,</font><font color="#0000bb">$con</font><font color="#007700">);</font><font color="#ff8000">//新增一個訪客到在線列表<br><br></font><font color="#007700">}<br><br>}<br><br></font><font color="#0000bb">$del_time</font><font color="#007700">=</font><font color="#0000bb">$now</font><font color="#007700">-</font><font color="#0000bb">$update_time</font><font color="#007700">;<br><br>@</font><font color="#0000bb">mysql_query</font><font color="#007700">(</font><font color="#dd0000">"delete from online_list where second_time<font color="#007700">,</font><font color="#0000bb">$con</font><font color="#007700">);</font><font color="#ff8000">//刪除在$update_time秒內沒有動作的用戶<br><br></font><font color="#0000bb">?><br><br></font><br><br></font></font>
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn