CONTROL_LOGON::ctl_login PHP Method

ctl_login() public method

ctl_login function.
public ctl_login ( ) : void
return void
    function ctl_login()
    {
        $_arr_adminLogin = $this->mdl_admin->input_login();
        if ($_arr_adminLogin["alert"] != "ok") {
            return $_arr_adminLogin;
        }
        $_arr_adminRow = $this->mdl_admin->mdl_read($_arr_adminLogin["admin_name"], "admin_name");
        if ($_arr_adminRow["alert"] != "y020102") {
            return $_arr_adminRow;
        }
        if (fn_baigoEncrypt($_arr_adminLogin["admin_pass"], $_arr_adminRow["admin_rand"]) != $_arr_adminRow["admin_pass"]) {
            return array("forward" => $_arr_adminLogin["forward"], "alert" => "x020207");
        }
        if ($_arr_adminRow["admin_status"] != "enable") {
            return array("forward" => $_arr_adminLogin["forward"], "alert" => "x020402");
        }
        $_str_adminRand = fn_rand(6);
        $this->mdl_admin->mdl_login($_arr_adminRow["admin_id"], fn_baigoEncrypt($_arr_adminLogin["admin_pass"], $_str_adminRand), $_str_adminRand);
        fn_session("admin_id", "mk", $_arr_adminRow["admin_id"]);
        fn_session("admin_ssin_time", "mk", time());
        fn_session("admin_hash", "mk", fn_baigoEncrypt($_arr_adminRow["admin_time"], $_str_adminRand));
        return array("admin_id" => $_arr_adminLogin["admin_id"], "forward" => fn_forward($_arr_adminLogin["forward"], "decode"), "alert" => "y020201");
    }

Usage Example

Example #1
0
}
include_once BG_PATH_FUNC . "init.func.php";
//管理员通用
fn_init(true, true, "Content-Type: text/html; charset=utf-8", true, "ctl");
include_once BG_PATH_INC . "is_install.inc.php";
//验证是否已登录
include_once BG_PATH_FUNC . "session.func.php";
//载入 session 函数
include_once BG_PATH_CONTROL . "admin/ctl/logon.class.php";
//载入设置控制器
$ctl_logon = new CONTROL_LOGON();
//初始化登录
switch ($GLOBALS["act_post"]) {
    case "login":
        //登录
        $arr_logonRow = $ctl_logon->ctl_login();
        if ($arr_logonRow["alert"] != "y020201") {
            header("Location: " . BG_URL_ADMIN . "ctl.php?mod=logon&act_get=logon&forward=" . $arr_logonRow["forward"] . "&alert=" . $arr_logonRow["alert"]);
        } else {
            $_str_forward = base64_decode($arr_logonRow["forward"]);
            if (stristr($_str_forward, "logon")) {
                $_str_forward = BG_URL_ADMIN . "ctl.php";
            }
            header("Location: " . $_str_forward);
        }
        exit;
        break;
    default:
        switch ($GLOBALS["act_get"]) {
            case "logout":
                //登出