Сообщение об ошибке Codeigniter с использованием ion_auth: Серьезность: Уведомление Сообщение: Неопределенное свойство: stdClass::$uid

Я получил это сообщение об ошибке при запуске проекта PHP Code Igniter с использованием ion_auth:

A PHP Error was encountered

Severity: Notice

Message: Undefined property: stdClass::$uid

Filename: models/ion_auth_model.php

Line Number: 1715

Array
(
    [identity] => [email protected]
    [username] => adekunleadedoyin
    [email] => [email protected]
    [uid] => oaT2dH1jIG
    [user_id] => 126
    [old_last_login] => 1438757260

это мой код

$query = $this->db->select('username, email, uid, password, active, last_login, id')
                          ->where($this->identity_column, $identity)
                          ->limit(1)
                          ->order_by('id', 'desc')
                          ->get($this->tables['user_reg']);

$user = $query->row();
return $this->set_session($user);

моя функция set_session приведена ниже:

public function set_session($user)
{

    $this->trigger_events('pre_set_session');

    $session_data = array(
        'identity'             => $user->{$this->identity_column},
        'username'             => $user->username,
        'email'                => $user->email,
        'uid'                  => $user->uid,
        'user_id'              => $user->id, //everyone likes to overwrite id so we'll use user_id
        'old_last_login'       => $user->last_login
    );
    return $session_data;
}

Может ли кто-нибудь сказать мне, что я делаю неправильно в моем новом ion_auth?


person Dedoyin Dekunle    schedule 05.08.2015    source источник
comment
я думаю, что в вашей пользовательской таблице нет столбца с именем UID, попробуйте вместо этого ID в качестве имени столбца   -  person Priyank    schedule 05.08.2015
comment
я добавил столбец uid, как вы можете видеть, он извлекает значение uid [uid] => oaT2dH1jIG, но не знаю, почему я все еще получаю сообщение об ошибке, когда пытаюсь сохранить UID в сеансе   -  person Dedoyin Dekunle    schedule 05.08.2015


Ответы (1)


Попробуйте это как ваш $ запрос,

$query = $this->db->select($this->identity_column.', id, username, email, last_login')
                          ->where($this->identity_column, get_cookie('identity'))
                          ->where('remember_code', get_cookie('remember_code'))
                          ->limit(1)
                          ->get($this->tables['users']);

И установите ваши $session_data как,

$session_data = array(
            'identity'             => $user->{$this->identity_column},
            'username'             => $user->username,
            'email'                => $user->email,
            'user_id'              => $user->id, //everyone likes to overwrite id so we'll use user_id
            'old_last_login'       => $user->last_login
        );
person Priyank    schedule 05.08.2015
comment
ваш запрос работает отлично, но когда я добавляю новое поле «uid», ошибка такая же - person Dedoyin Dekunle; 05.08.2015