我知道这已被问过很多很多次了;然而,我所看到和尝试的各种事情都没有奏效。
我想要做的就是将数据从一个页面传递到下一个页面,这样我就可以使用用户的电子邮件来处理各种数据库事务。
这是我的login.php文件(删节,仅显示登录内容):
<?php
session_start();
ini_set("display_errors", "1");
$user_email = $_POST['user_email'];
$_SESSION['user_email'] = $user_email;
$password = $_POST['user_password'];
//DB stuff
if ($num_results == 1) {
header('Location: nextPage.html');
exit;
}
else {
echo "<p> Username or Password is incorrect! </p>";
}
?>
这是我的下一页html文件:
<?php
session_start();
ini_set("display_errors", "1");
$email = $_SESSION['user_email'];
echo $email;
?>
<html>
<head>
<title> next page </title>
</head>
<body>
You have logged in!
</body>
</html>
每当我尝试回复电子邮件时,它都是空白的,当我测试它时,它会告诉我它是空的。
任何建议都会有所帮助,非常感谢!!
答案 0 :(得分:2)
您遇到问题的原因是您的header('Location: nextPage.html');
指向.html
个文件。
将会话从一个页面传递到另一个页面只能在PHP环境下工作,并且应该设置为header('Location: nextPage.php');
但是,使用.html
.htaccess
文件可以作为PHP运行
AddType application/x-httpd-php .html
如果您只打算在一个页面上包含PHP,最好以这种方式设置:
<Files nextPage.html>
AddType application/x-httpd-php .html
</Files>