如果没有登录,请将用户重定向到另一个页面?

时间:2017-10-15 10:49:39

标签: php session

这一开始看起来很混乱,但我的网站上有登录系统。我的网站上也有一个论坛。我想要做的就是这样做,如果人们点击论坛按钮并且他们没有登录,就会将他们带到登录页面,但如果他们是,则会将他们带到论坛。我有这个,但我想再做一件事。我也想这样做,如果人们进入网址并输入www.example.com/forums.php,它会检查他们是否已登录,如果他们不是,请将他们带回登录页面,如果是的话,继续把它们带到那里。我试过这个,但它只适用于我说的第一部分,而不是其他部分。

<!-- Main Content -->
        <p class="japanese">プレーンズ</p>
        <p class="dev" contenteditable>currently under development</p>
        <p class="clock"></p>
        <p class="login"><a href="login.php">login</a></p>
        <p class="register"><a href="register.php">register</a></p>
        <?php
            if (isset($_SESSION['u_username'])) {
                echo '<p class="forums"><a href="forums.php">forums</a></p>';
            } else {
                echo '<p class="forums"><a href="login.php">forums</a></p>';
            }
        ?>

1 个答案:

答案 0 :(得分:1)

forums.php之上,检查会话是否处于活动状态,如果没有,则发出HTTP重定向。

<?php
if (!isset($_SESSION['u_username'])) {
    header('Location: login.php');
    exit();
}

exit对于避免在重定向用户时在页面上运行更多代码非常重要。

重定向应该在任何输出发生之前放置,这意味着它应该放在正在执行的文件的顶部。