Intereting Posts
Существуют ли случаи, когда деструктор в PHP НЕ вызывается? Regex & PHP – изолировать атрибут src от тега img PHP: setlocale в Windows 7 Убить запрос MySQL на прерывание пользователя Как использовать графический API Facebook для извлечения фан-фотографий, загруженных на стену страницы поклонников? php mongodb найти n-й элемент в коллекции Open Window.open () С помощью данных POST и получения данных с помощью PHP Объект stdClass и петли foreach Как обращаться с PHP-переключателем с разными типами? Обновление статуса Facebook через php Как обрабатывать JSON в PHP? php: SQLSTATE Соединение не может быть выполнено, потому что целевая машина активно отказалась от него Как использовать расширение Pthreads PHP в Ubuntu что я могу сделать, чтобы оптимизировать следующую функцию или какую-то другую вещь, чтобы уменьшить потребление памяти? UPDATE / DELETE в mysql и получить список уязвимых идентификаторов строк?

FOSUser Bundle – запрет входа пользователей в систему

Я создал loginsuccesshandler.php и проверял, включен ли пользователь так

public function onAuthenticationSuccess(Request $request, TokenInterface $token) { $user = $token->getUser(); if(!$user->isEnabled()) {//do not pass go $request->getSession()->invalidate(); $this->security->setToken(null); //$token->setToken(null); return new RedirectResponse($this->router->generate('account_disabled')); } 

Эта строка

  $request->getSession()->invalidate(); 

вызывает следующую ошибку:

 Warning: SessionHandler::write(): Parent session handler is not open in /var/www... 

Но я не могу удалить его, потому что если пользователь щелкнет флажок «Запомнить меня», они все равно будут зарегистрированы.

У меня была та же проблема с выходом FOS, но я добавил это в конфигурацию

  logout: invalidate_session: false 

Related of "FOSUser Bundle – запрет входа пользователей в систему"

Ты делаешь это неправильно. Symfony уже имеет встроенный механизм для достижения этого:

  1. Внедрите AdvancedUserInterface для своего класса User .
  2. …вот и все. Подробнее см. http://symfony.com/doc/current/cookbook/security/entity_provider.html#forbid-inactive-users