嗯,重新確認一次系統的設定之後發現只要玩家沒有把視窗關閉的話那麼該玩家便不會被系統踢除。
因為在更新(線上玩家)這一欄的時候會自動將該玩家的p_online_time設為目前時間,所以系統沒辦法踢除...。
以下為踢人系統(裝在控制台內)
開啟檔案wog/acpleft.php
尋找
- 代碼: 選擇全部
<tr>
<td align="left">
<p><font size="1" face="新細明體">
<input class="text" type="submit" value="停權" name="actions">
<input class="text" type="submit" value="解除停權" name="actions"></font></td>
</tr>
後面,加上
- 代碼: 選擇全部
<tr>
<td align="left">
<p><font size="1" face="新細明體">
<input class="text" type="submit" value="強制踢人" name="actions"> </font></td>
</tr>
開啟檔案wog/acpmain.php
尋找
- 代碼: 選擇全部
case "禁言":
前面,加上
- 代碼: 選擇全部
case "強制踢人":
print_header();
loginout_player();
print_footer();
break;
尋找
- 代碼: 選擇全部
//將玩家禁言
前面,加上
- 代碼: 選擇全部
//將玩家強制踢除
function loginout_player()
{
check_ulv();
if(empty($_POST["target_name"]) || $_POST["target_name"]=="" || $_POST["target_name"]=="輸入玩家名稱"){alertMsg("沒有輸入對方名稱");exit;}
global $DB_site;
$p_online_time=time()-10*60;
$check=$DB_site->query("update wog_player set p_online_time=".$p_online_time." where p_name ='".$_POST["target_name"]."' ");
echo ("<br><b><font color='Red'>使用者帳號:(".$_POST["target_name"].") 已經強制踢出遊戲。</font></b>");
}
開啟檔案wog/class/wog_act_chara.php
尋找
- 代碼: 選擇全部
setcookie("wog_cookie",$p[p_id]);
前面,加上
- 代碼: 選擇全部
$DB_site->query('update wog_player set p_online_time='.time().' where p_name='.$_POST["id"].' and p_password='.$_POST["pass"].'');
開啟檔案wog/class/wog_etc_peo.php
尋找
- 代碼: 選擇全部
$DB_site->query("update wog_player set p_online_time=".time().",p_ip='".$p_ip."' where p_id=".$userid." ");
前面,加上
- 代碼: 選擇全部
$p=$DB_site->query_first("select p_online_time from wog_player where p_id=".$userid);
if($p[p_online_time]<=time()-$wog_arry["offline_time"])
{
setcookie("wog_cookie","");
setcookie("wog_cookie_name","");
setcookie("wog_bbs_id","");
echo "<script>alert('您已被判定為登出。');</script>\n";
showscript("parent.document.URL='".$wog_arry["logout_url"]."';");
}
儲存,關閉所有檔案。
完畢。