session的奇怪問題(已經搜索過,自己還解決不了)
我的登陸主頁面,就是判斷是否登陸,直接輸入地址饒過登陸窗口,第一次出現 你無權訪問 ,session文件裡出現admin|b:0; 刷新一次,出現 你已經登陸
Notice: Undefined index: name in d:usrwwwhtmldengluindex.php on line 5
111122223333
session文件裡的那個文件又變成admin|b:1; admin的值為1了。奇怪呀!!!
這就是index.php的代碼:
$admin=false;
if(isset($_SESSION['admin'])&&$_SESSION['admin']=true)
{ echo "你已經登陸";
echo $_SESSION['name'];
}
else
{$_SESSION['admin']=false;
die("你無權訪問");
header("Location:login.htm");
}
?>
111122223333
在前面的驗證中,如果用戶名和密碼正確,則讓$_SESSION['admin'] = true;
這是 login.php代碼:
$xm=$_POST['xingming'];
$ps=$_POST['password'];
$_SESSION['admin'] = false;
$link = mysql_connect('localhost','root','');
$db = mysql_select_db('hehetsg');
$result = mysql_query("select * from user where user = '$xm' and psw ='$ps'");
if ($row=mysql_fetch_array($result))
{ if ($row['psw']==$ps and $row['flag']==1)
{ $_SESSION['name']=$row['name'];
$_SESSION['admin'] = true;
echo "歡迎管理員進入!";
echo "管理界面";
}
else
{ echo "不是管理員。對不起!";
echo "點擊返回";
}
}
else { echo "你的信息不全!";
echo "點擊返回";
}
?>
在這裡輸入登陸的信息:
登陸頁面
[ ]
echo "
";echo "
";echo "
";
�!!!!!
幫我解決才是高呀!!呵呵
在session_start()前加error_reporting(0);
isset($_SESSION['admin'])&&$_SESSION['admin']=true
是個邏輯錯�
原帖� 七月十五 � 2008-7-19 16:33 發表 [url=http://www.111cn.cn/bbs/redirect.php?goto=findpost&pid=505295&ptid=70090]鏈接標記[img]http://www.111cn.cn/bbs/images/common/back.gif[/img][/url]
在session_start()前加error_reporting(0);
感謝,但是…�
加了這個,沒有錯誤了,可是我的驗證還是不行呀
登不� 都成� 管理員登陸了�
驗證不成意義了�
原帖� dongxin1390008 � 2008-7-19 16:34 發表 [url=http://www.111cn.cn/bbs/redirect.php?goto=findpost&pid=505300&ptid=70090]鏈接標記[img]http://www.111cn.cn/bbs/images/common/back.gif[/img][/url]
isset($_SESSION['admin'])&&$_SESSION['admin']=true
是個邏輯錯�
那正確的怎麼寫呢�
die("你無權訪�");
header("Location:login.htm");
這裡也有問題
header 前面不能有任何輸�
邏輯的等於是2個等�,賦值是一個等�,
isset($_SESSION['admin'])&&$_SESSION['admin']=true
你這樣寫的話就是只要我�$_SESSION["admin"]不為空即可登�,所以後面的
正確�:
isset($_SESSION['admin'])&&$_SESSION['admin']==true
請大家能帖出正確的代碼嗎�
幫助新手�
非常感激