繁体   English   中英

使用PHP登录到自定义CMS后重定向到其他无法正常工作的页面

[英]Redirect to other pages not working after logging into Custom CMS using PHP

我正在为自己建立的网站制作一个自定义的内容管理系统,到目前为止,在此路障之前一切都还不错。 我的代码可以从login.php页面工作到您可以输入用户名和密码的位置,它成功将我重定向到index.php页面,但是随后我决定我需要重定向所有未登​​录的人来登录.php,然后再查看CMS上的其他页面。

因此,此代码就在这里...

<?php require_once("lib/sessions.php");
      require_once("lib/functions.php");
      require_once("meta.php");
      login_confirm(); 
?>

那是我CMS中每个页面的顶部,而login_confirm函数看起来像这样...

function login_confirm() {
    if(!logged_in()) {
        redirect_to("login.php");
    }
}

function logged_in() {
    return isset($_SESSION['admin_id']);
}

$ _SESSION ['admin_id']这样在我的登录页面上设置...

$found_admin = attempt_login($username, $password); 
    if($found_admin) {
        //Success, mark user as logged in
        $_SESSION["admin_id"] = $found_admin["id"];
        $_SESSION["username"] = $found_admin["username"];
        redirect_to("index.php"); 
    } else {
        //failed
        $_SESSION["message"] = "Log in failed"; 
    }

就像我在开始时说的那样,登录页面将成功将您重定向到index.php,没有问题,但这是在我将login_confirm()放在页面顶部之前的。 现在,即使我输入了正确的凭据,无论我总是重定向到login.php,都是如此。 我认为会话没有保存或有什么...

编辑:session.php看起来像这样。 因此,会话在页面顶部开始。

<?php 
session_start(); 
ob_start();
//function for message and errors
?>

我看不到您正在使用session_start(); 使用$ _SESSION之前,必须对其进行初始化。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM