我正面臨PHP響應的問題。我用了3秒延遲的Ajax來檢查用戶的日誌。當用戶帳戶與兩個用戶同時使用時,必須踢一個帳戶。我曾經跟蹤數據庫中的日誌ID,如果與會話相同。問題是即使沒有其他用戶使用他/她的帳戶,一些用戶也會被踢。我試圖print_r
的查詢語句,它返回不同的值。這可能是其他用戶的迴應。PHP返回其他用戶請求的輸出
我使用IIS服務器和FastCGI進行PHP響應。
有人可以告訴我這是怎麼可能的,並給我想法來解決這個問題?謝謝。
下面是一些代碼:
檢查記錄在數據庫中使用Ajax:
public function CheckLogStatus($name, $email, $sess_code) {
$qry = "Select log from $this->tablename where name='$name' and email='$email'";
//when I print this statement it returns different values of $name and $email
$result = mysql_query($qry) or die(mysql_error());
if(!$selResult = mysql_fetch_array($result)) {
return false;
}
if(!isset($_SESSION)) {
session_start();
}
if(!isset($selResult['log']) && $selResult['log'] != '') {
if($selResult['log'] != $sess_code) {
//$_SESSION['LOGS'] = 'USED';
return false;
}
}
return true;
}
Post teh codez pl0x – 2013-04-04 23:10:22
沒有任何代碼,它很難幫助 – Yeak 2013-04-04 23:10:48
+1,我想到的第一件事是你可能忘記在db中實現「註銷」。 – void 2013-04-04 23:11:19