我有這樣的代碼如何讓一個計數器在多個請求中工作?
if (empty($sid)) {
$sid = 0;
} else {
$sid++;
}
$_SESSION['words'][$sid] = $try;
$ SID腳本無處設置。
當我加載該頁面$ sid的值保持在0.它應該增加。 我真的很感謝一些幫助。
我有這樣的代碼如何讓一個計數器在多個請求中工作?
if (empty($sid)) {
$sid = 0;
} else {
$sid++;
}
$_SESSION['words'][$sid] = $try;
$ SID腳本無處設置。
當我加載該頁面$ sid的值保持在0.它應該增加。 我真的很感謝一些幫助。
局部變量不像會話或cookie,它們在頁面重新加載時(每次往返)都會重置。
使用會話或cookie來存儲$sid
值。
您需要保存在會話cookie的或的sid
值,那麼你可以檢查這樣的:
嘗試使用isset
$sid = $_SESSION['sid']; OR
$sid = $_COOKIE['sid'];
if (isset($sid)) {
$sid = 0;
} else {
$sid++;
}
$_SESSION['sid'] = $sid;
$_SESSION['words'][$sid] = $try;
希望它會幫助你。
您必須將sid值保存在cookie或會話中,並使用該值來檢查.. :) –
當頁面加載時它會進入如果條件接收。因爲它獲得$ sid變量blank.So在頁面頂部聲明變量並檢查它 – Hkachhia
以下是文檔的說明:「如果var存在並且具有非空非零值,則空將返回FALSE,否則返回TRUE。」在你的情況下,因爲$ sid不存在,所以'empty($ sid)'將總是返回TRUE並執行你的'if'條件的第一部分,即'$ sid = 0;' –