所以我正在开发一个简单的PHP登录表单。我的第一页是index.php,其中包含一个发布到process.php的表单
<form action="process.php" method="POST">
<li><label>Username: </label><input type="text" name="user"> </input></li>
<li><label>Password: </label><input type="password" name="pass"></input></li>
<li><label> </label><input type="submit" name="loginbutton" value="Log In" id="button"></li>
</form>
简单的HTML,没什么复杂的。在下一页,我在开头有一些看起来像这样的东西:
$_SESSION['name'] = $_POST['user']; $_SESSION['password'] = $_POST['pass']; header('Location: thirdpage.php');
在thirdpage.php上我想echo $_SESSION['name'];
,但它根本不起作用;页面上没有任何内容。我觉得我错过了一些非常明显的东西。
答案 0 :(得分:2)
Process.php:
start_session();
$_SESSION['name'] = $_POST['user'];
$_SESSION['password'] = $_POST['pass'];
header('Location: thirdpage.php');
第三页:
session_start();
echo $_SESSION['name'];
这应该有效,当您希望使用会话变量时,必须始终执行session_start();
。
这是一个例子,你应该在你的POST数组上执行验证,如果你打算在完整的生产中使用它