所以我有一个登录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>
但它不起作用...... 请帮我在这段代码中找到错误
答案 0 :(得分:2)
在每个脚本的顶行调用session_start()
,并始终检查变量是否设置为授权/调试目的。像这样的东西
if(isset($_SESSION['username'])){
//welcome user
}
else
{
//sorry, you need to log in
}
确保您在error_reporting(E_ALL)
之前设置ini_set("display_errors", 1);
和session_start()
,然后将{{1}}放在脚本的顶部。这个建议是为了回应你的“请帮我找到这段代码中的错误”
答案 1 :(得分:0)
在将任何输出或标头发送到浏览器之前,将session_start()放在所有页面的顶部。