所以我有一个php文件中的日志,在它检查用户名和密码是否正确后,它会重定向到主页面。重点是我想记住它是哪个用户,所以这将只是他的会话。
这是登录部分:
if(mysql_num_rows($result) > 0)
{
session_start();
$_SESSION['username'] = $username;
$_SESSION['password'] = $password;
header('Location: ../Main_page/main_page.php');
}
所以现在在主页上我使用:
<?php
$user = $_SESSION['username'];
?>
在我之后,如果我想输出例如用户名,我想使用例如:
<dt>Welcome, <em><?php echo $_SESSION['username']?></em></dt>
但它不起作用。。。请帮助我查找此代码中的错误
在每个脚本的顶部行调用session_start()
,并始终检查变量是否设置用于授权/调试目的。像这样的
if(isset($_SESSION['username'])){
//welcome user
}
else
{
//sorry, you need to log in
}
在将session_start()
放在脚本顶部之前,请确保还设置了error_reporting(E_ALL)
和ini_set("display_errors", 1);
。此建议是对您的"请帮助我查找此代码中的错误"
在将任何输出或标头发送到浏览器之前,将session_start()放在所有页面的顶部。