0

我已经创建了我的页面,并尝试在授予用户访问该页面的权限之前对用户进行身份验证。我的问题是我正在使用这样的方法:

if($_SESSION['username']){
echo 'PAGE CONTENT HERE';

}else{
 SEND BACK TO LOGIN PAGE
}

这适用于我的某些页面,但在我的主页上,使用我的数据库中的 php 填充选择框,当我使用上述方法时,我的所有选项都显示在选择之外(如果我不回显页面,则工作正常)

我在这里错过了一个技巧吗?

4

2 回答 2

0

尝试使用这个。

session_start();

if(empty($_SESSION['username'])){
    header("Location: page-to-redirect.php");
}

//Rest of the code....
于 2013-03-28T13:07:45.337 回答
0

不要使用 echo,尝试使用 php if/else 的替代语法:http ://www.php.net/manual/en/control-structures.alternative-syntax.php

我使用它,它不会妨碍我的任何页面内容或脚本。

<?php if(conditional): ?>
<p>plain html and what not here</p>
<?php else: ?>
<a href="#">more html here</a>
<?php endif; ?>

或使用 header("Location: redirect.php"); 的重定向 基于会话检查代码。

于 2013-03-28T13:10:58.837 回答