Ошибка, ничего не понимаю…

Fyntik

ЕСТЬ ОШИБКА:
Notice: main(): The script tried to execute a method or access a property of an incomplete object. Please ensure that the class definition «RedBeanPHPOODBBean» of the object you are trying to operate on was loaded _before_ unserialize() gets called or provide an autoloader to load the class definition in
Это при попытке вывести пользователя из $_SESSION[‘logged_user’]->login;
Скрипт авторизации пользователя:

Код (Text):
  1. $data = $_POST;
  2.     if ( isset($data[‘do_login’]) )
  3.    {
  4.       $user = R::findOne(‘users’, ‘login = ?’, array($data[‘username’]));
  5.       if ( $user )
  6.       {
  7.          //логин существует
  8.          if ( password_verify($data[‘password’], $user->password) )
  9.          {
  10.             //если пароль совпадает, то нужно авторизовать пользователя
  11.             $_SESSION[‘logged_user’] = $user;
  12.             echo ‘<div style=»color:dreen;»>Вы авторизованы!<br/> Можете перейти на <a href=»/»>главную</a> страницу.</div><hr>’;
  13.          }else
  14.          {
  15.             $errors[] = ‘Неверно введен пароль!’;
  16.          }
  17.  
  18.       }else
  19.       {
  20.          $errors[] = ‘Пользователь с таким логином не найден!’;
  21.       }
  22.    
  23.       if ( ! empty($errors) )
  24.       {
  25.          //выводим ошибки авторизации
  26.          echo ‘<div id=»errors» style=»color:red;»>’ .array_shift($errors). ‘</div><hr>’;
  27.       }
  28.  
  29.    }

Если не обновлять страницу то всё ок, но как только её обновить, так всё, везде эта ошибка, что бы я не выводил, логин/баланс/имя/фамилия ему без разницы, сессию я нигде не стираю в коде, я понять не могу какого….
Помогите пожалуйста!

 

MouseZver

какая ошибка ? обрубок не считается.

 

Fyntik

upload_2021-7-7_19-21-36.png

 

Sail

Положить экземпляр объекта в сессию — не самая простая задача. Вот одна из статей на эту тему: php: Хранение объектов в сессии / Хабр (habr.com). Резюме:

Если не углубляться, то можете хранить там id пользователя. Тогда, если Id пользователя присутствует в сессии — сможете нормально создать объект класса, подобно тому, как делаете это на основе имени (логина) пользователя.

 

don.bidon

— Постоянно ли храните объекты в сессиях?
— Пошёл на ..!

 

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *