警告:未定义的数组键“user_data”

问题描述 投票:0回答:0

我有一个变量的问题,如果会话被激活并且我在标题中收到消息,我用来设置它。

这里是它的定义:

header.php : `名义)):?> 名字?>

`

然后我的班级登录: `

类登录扩展控制器 {

public function index()
{
    if($_SERVER['REQUEST_METHOD'] == "POST")
    {
        $user = $this->load_model("User");
        $user->login($_POST);
    }

    $data['page_title'] = "Home";
    $this->view("index", $data);
}

} `

和我的班级用户:

`公共函数登录($POST) {

    $data = array();
    $db = Database::getInstance();

    $data['email']      = trim($POST['email']);
    $data['password']   = trim($POST['password']);

    if(empty($data['email']) || !preg_match("/^[a-zA-Z_-]+@[a-zA-Z]+.[a-zA-Z]+$/", $data['email']));
    {
        $this->error .= "Merci d'entrer un email valide.<br>";
    }

    if(strlen($data['password']) < 8)
    {
        $this->error .= "Votre mot de passe doit contenir 8 caractères minimum.<br>";
    }

    if($this->error == ""){

        //comfirm
        $data['password'] = password_verify($data['password']);

        //check if email already exists
        $sql = "select * from users where email = :email && pass = :password limit 1";
        $result = $db->read($sql,$data);
        show($result);
        if(is_array($result)){

            $_SESSION['user_url'] = $result[0]->url_address;
            header("Location: " . ROOT . "home");
            die;
        }

        $this->error .= "Mauvais email ou mot de passe.<br>";

    }

    $_SESSION['error'] = $this->error;
}
    
    public function check_login($redirect = false, $allowed = array())
{

    $db = Database::getInstance();

    if(count($allowed) > 0){
    
        $arr['url'] = $_SESSION['user_url'];
        $query = "select * from users where url_address = :url limit 1";
        $result = $db->read($query,$arr);
            
        if(is_array($result))
        {
            show($result);
            $result = $result[0];
            if(in_array($result->rank, $allowed)){

                return $result;
            }

        }
        
        header("Location: " . ROOT . "Home");
        die;

    }else{
        $c = count($allowed); 
        if(NULL != $c)
        {
            $arr = false;
            $arr['url'] = $_SESSION['user_url'];
            $query = "select * from users where url_address = :url limit 1";

            $result = $db->read($query,$arr);
            
            if(is_array($result))
            {
                return $result[0];
            }
        }

        if($redirect){
            header("Location: " . ROOT . "Home");
            die;
        }
    }

    return false;

}

`

当我调用我的控制器 home.php 时: `

Home类扩展控制器 {

public function index()
{

    $User = $this->load_model('User');
    $user_data = $User->check_login();

    if(is_object($user_data)){
        $data['user_data'] = $user_data;
    }

    $data['page_title'] = "Accueil de votre boutique";
    $this->view("index", $data);
}

} `

但仍未定义....为什么?

感谢您的帮助

一切我能但没有找到任何解决方案

arrays key undefined warnings
© www.soinside.com 2019 - 2024. All rights reserved.