PHP的SESSION无效,怎么都写入不进去,在别的文件就用的很好的。
<?php
session_start();
if(isset($_POST['sub'])){
require "./config.php";
if($_POST['login_name']==$admin_name && $_POST['login_pwd']==$admin_pwd){
$_SESSION['login_status']=="oko";
}else{
echo "<font color='red'><b>帐号或密码错误!</b></font>";
}
}
?>
<html>
<head>
<title>后台管理页面</title>
</head>
<body>
<?php
if($_SESSION['login_status']!="oko"){
var_dump($_SESSION['login_status']);//这个地方一直是NULL
?>
<form name="login" method="post" action="">
username:<input type="text" name="login_name" /><br/>
password:<input type="password" name="login_pwd" /><br/>
<input type="submit" name="sub" value="submit" />
</form>
<?php
}else{
echo "ll";
}
?>
</body>
</html>
代码如上,很简单,但是SESSION一直都写不进去,不知道到底是什么原因!!
------解决方案--------------------$_SESSION['login_status']
="oko"; //赋值是一个=号
------解决方案--------------------修改后的代码
if(isset($_POST['sub'])){
require "./config.php";
if($_POST['login_name']==$admin_name && $_POST['login_pwd']==$admin_pwd){
$_SESSION['login_status']="oko";//这个地方你多了个“=”
}else{
echo "<font color='red'><b>帐号或密码错误!</b></font>";
}
}else{
session_start();//session_start();运行一次就可以了,而且要放在代码的最前边
}
?>
<html>
<head>
<title>后台管理页面</title>
</head>
<body>
<?php
if($_SESSION['login_status']!="oko"){
var_dump($_SESSION['login_status']);//这个地方一直是NULL
?>
<form name="login" method="post" action="">
username:<input type="text" name="login_name" /><br/>
password:<input type="password" name="login_pwd" /><br/>
<input type="submit" name="sub" value="submit" />
</form>
<?php
}else{
echo "ll";
var_dump($_SESSION['login_status']);//要这个地方就可以打印了
}
?>
</body>
</html>