我试图创建一个单页脚本,其动作设置为服务器php self,但是当我输入正确的密码后运行脚本时,我会收到“你必须提供密码”。我做对了吗请让我知道我的错误
login.php
<?php
$pass = 'defense6';
if(isset($_POST['submit'])){
if(($_POST['password'] == $pass)) {
$_SESSION['password'] = md5($_POST['password']);
header('Location: index.php');
} else {
echo 'Password Invalid';
}
}
else {
echo 'You must supply a password.'.$_SESSION['password'] ;
}
?>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST">
Password: <input name="password" type="password" /><br/><br/>
:
<input type="submit" name="submit" value="Login" style="float:right;" />
<br/>
<p></p>
</form>
的index.php
<?php
$pass = 'defense6';
if($_SESSION['password'] == md5($pass)) {}
else {header('Location: login.php');}
?>
答案 0 :(得分:1)
您需要在使用会话的每个页面上添加seesion_start()
。
session_start()
根据通过GET或POST请求传递的会话标识符创建会话或恢复当前会话,或通过cookie传递。
答案 1 :(得分:1)
在页面的开头添加session_start(),以帮助维护跨请求的会话。