我是php的新手,所以我需要帮助。我有一个page = start和一个page = login。在page = login中,我有一个导航到page = register的链接。但它没有做任何事情。
页=起动
$page = 'home';
if (isset($_GET['page']) && file_exists('pages/'.$_GET['page'].'.php')) {
$page = $_GET['page'];
}
if (empty($_SESSION['Auth']) && $page != 'login') {
header('location:index.php?page=login');
} elseif (!empty($_SESSION['Auth']) && $page == 'login') {
header('location:index.php?page=home');
}
if (file_exists('actions/'.$page.'.php')) {
include('actions/'.$page.'.php');
}
页=登录
<form name="login" action="index.php?page=login&action=login" method="post">
<p class="log">Hey! Log In</p>
<input type="text" name="username" id="username"/><br/><br/>
<input type="text" name="password" id="password"/><br/><br/>
<input type="submit" name="submit" value="submit"/>
</form>
<a href='index.php?page=register'>Register</a>
答案 0 :(得分:0)
在没有看到任何更多代码的情况下,当您尝试访问注册页面时,我猜您在没有$_SESSION['Auth']
时会重定向。您可能希望添加一个例外,以便任何人都可以访问它。
e.g。
$whiteListedPages = array('login', 'register');
if (empty($_SESSION['Auth']) && !in_array($page, $whitelistedPages)) {
header('location:index.php?page=login');
}