我正在用PHP開發一個應用程序,我需要使用會話。 我用三層體系結構開發了我的應用程序。刷新後PHP會話無法檢測
我只使用一個PHP頁面和啞表單來提交用戶動作,並且所有處理都是通過實體/函數特定的類進行的。
當頁面第一次打開時,我檢查變量,如果它從未打開過,我提出登錄表單。
當我收到此表後我檢查用戶時,如果用戶確定我開始會話
if(isset($_POST['login']))
{
if($_POST['login']=='login')
{
//valida user
$accoes=$du->login($_POST['username'],$_POST['password']);
if($accoes===false)
{
echo "<SCRIPT LANGUAGE=\"JavaScript\" TYPE=\"text/javascript\">";
echo "alert('Erro no Login');";
echo "</SCRIPT>";
unset($accoes);
}
else
{
//utilizador valido
echo "<SCRIPT LANGUAGE=\"JavaScript\" TYPE=\"text/javascript\">";
echo "alert('Utilizador válido');";
echo "</SCRIPT>";
session_start();
$user="teste";
$screen="logged";
$_SESSION['user']=$user;
}
}
}
雖然當這個頁面是通過用戶操作刷新我無法看到會議ID和會話變量。
我是否缺少類似session_commit或其他指令的內容?
session_start()在嘗試切換會話變量之前是否也出現?
它可能是PHP.ini文件中缺少的東西?
當我重裝我做的第一件事是會話變量檢查
if(session_id() != '') {
$user=$_SESSION['user'];
}
我知道我應該知道如何解決這個問題,但直到現在我用PHP的經驗是扔的Flex/Flash的那麼會話管理並不是真的有必要。
感謝您的幫助
沒有你叫在頂部爲每個頁面的session_start()? – 2013-03-25 16:36:59
*應該session_start()也出現在試圖chech會話變量之前?*是 – Tchoupi 2013-03-25 16:38:40