【发布时间】:2015-03-30 06:42:49
【问题描述】:
我正在尝试在会话中使用 $_SESSION 变量。我做了
<?php
session_start();
?>
就在名为“login.php”的文件的顶部。
然后我设置
if(isset($_POST["id"]))
$_SESSION['ID'] = $_POST['id'];
(更新)当我使用这个重定向到另一个页面时:
if($psword === $password){
//echo $_SESSION['ID'];
header("Location: memberMain.php");
die();
exit();
} else {
echo "Wrong Password.";
// remove all session variables
session_unset();
session_destroy();
}
,$_SESSION 变量丢失。它给了我Notice: Undefined variable: _SESSION in C:\xampp\htdocs\memberMain.php on line 18 我认为这是因为域已更改。
memberMain.php:
<!DOCTYPE html>
<html>
<head>
<title>Member Home</title>
</head>
<body>
<h1>Member Home</h1>
<a href="reservation.php">Make Reservation</a>
<br>
<a href="reviewMembership.php">Review Membership</a>
<br>
<a href="logoff.php">Log Off</a>
<br>
<a href="resetPassword.php">Reset Password</a>
<?php
echo $_SESSION['ID'];
?>
</body>
</html>
我正在使用 XAMPP,所有文件都在 localhost 上运行,并且都存储在名为“htdocs”的文件夹中。变量丢失的原因是没有意义的。
感谢任何帮助。
【问题讨论】:
-
添加模具;在 header("Location: memberMain.php"); 之后
-
您需要在您打算调用
$_SESSION的每个 页面上使用session_start()。这意味着您需要在memberMain.php页面上使用它。