2013-05-26 64 views
0

我有一個問題,我無法解決。PHP和jQuery - 聊天安全

我建立了一個在線遊戲聊天,我希望每個頁面都有不同的聊天室。 網址如下= play.php?plc=[arena/advanture/bank/...]

我有一個名爲pages的SQL表,它定義了每一頁。對於instanse:

╔════╦══════════════╗ 
║ id ║ name  ║ 
╠════╬══════════════╣ 
║ 1 ║ arena  ║ 
║ 2 ║ advanture ║ 
║ 3 ║ bank   ║ 
║ 4 ║ weapons  ║ 
╚════╩══════════════╝ 

的每一頁都做他的潮頭計算,如果你被允許進去,或者你不能。 如果你不能,我做header()exit;

我會解釋它是如何連接到問題的。

ajax文件無法知道GET主文件有(play.php)。 [或mabye是的?] 所以我不能得到頁面ID。

我想將<input>與隱藏類型,但然後它會是hackble。如果用戶無法進入頁面,他可以將輸入值更改爲某個ID,並訪問該頁面的聊天。

我希望我解釋我自己好,我的英文不太好......

+1

使用會話也許......? – bwoebi

+1

我想你應該使用會話 –

回答

1

的Ajax的文件可以通過window.location獲得帕拉姆,但你應該在PHP中使用會話,否則用戶可以操縱這個價值,並閱讀所有聊天,即使他們不在那裏。

session_start(); 

$_SESSION['area'] = ...; 
+0

謝謝!我忘了它 – HtmHell

+0

會話不會阻止用戶更改地址欄中的查詢字符串(因此,會話變種),除非查詢字符串包含服務器端腳本可以解析的ID –

+0

是,corse'$ _SESSION如果不允許用戶進入該區域,則不應設置['區域']'。 – kelunik