свойство класса установлено по умолчанию после функции заголовка - PullRequest
0 голосов
/ 02 мая 2020

У меня есть класс контроллера пользователя, который содержит свойство и несколько методов. Я изменил значение свойства в одном методе (метод loginCheck), затем использовал функцию заголовка для вызова другого метода (метод профиля) этого класса. проблема в том, что свойство в новом методе было установлено по умолчанию, а значение, которое я дал свойству, не существует! Я был бы благодарен, если бы вы помогли мне в этом случае.

 class UserController{

    private $user_info = [];

    public function login(){
        if ($_SERVER['REQUEST_METHOD'] == "POST"){
            $post_array = [];
            $post_array['login_email'] = htmlspecialchars($_POST['email']);
            $post_array['login_password']= htmlspecialchars($_POST['password']);
            $post_array['security_question'] = htmlspecialchars($_POST['security_question']);
            $post_array['security_answer'] = htmlspecialchars($_POST['security_answer']);
            $this->loginCheck($post_array);
        }else{
            if (Auth::login_status() == false){
                require_once 'mvc/view/login.php';
            }else{
                header("Location:../home/index");
            }
        }
    }



    private function loginCheck($post_array){

        $result = UserModel::getUser($post_array['login_email'],md5($post_array['login_password']));

        if ($result == []){
            $post_array['user_existence'] = false;
        }else{
            $post_array['user_existence'] = true;
        }

        $security = new Security();
        $validator = new Validator($post_array,$security);
        $errors = $validator->validate();
        if ($errors == []){
            $this->user_info = $result;
            new Auth($post_array['login_email'],$post_array['login_password']);
            header("Location:../user/profile");
        }else{
            $_SESSION['form_error'] = $errors;
            header("Location:../user/login");
        }
    }


    public function profile(){
        var_dump(Auth::login_status());
        var_dump($this->user_info);
        exit();
    }
}

На самом деле, когда я дам дамп $ user_info, он равен пустому массиву!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...