Your session has expired. Please log in again.

Тема в разделе "Ошибки при работе с Joomla", создана пользователем mailmoney, 18.06.2011.

  1. Offline

    mailmoney Пользователь

    Регистрация:
    14.01.2009
    Сообщения:
    241
    Симпатии:
    19
    Пол:
    Мужской
    Добрый день.
    Попробуйте кто нибудь. Установил joomla 1.5.23. не менял ничего не устанавливал.
    Регистрирую пользователя, жму войти, выйти. и снова войти. ошибка сверху Your session has expired. Please log in again.
    Со второго раза все нормально. Я так понял, система не создает сессию нового гостя (когда тот вышел из системы), если открыть одну страничку на сайте любую - она создаётся и тогда авторизация впорядке.
    Никто не сталкивался? Видимо нужно редирект сделать на какую нибудь первую страницу?
     
  2.  
  3. Offline

    mailmoney Пользователь

    Регистрация:
    14.01.2009
    Сообщения:
    241
    Симпатии:
    19
    Пол:
    Мужской
    Всем спасибо, разобрался.
    Кому нужна будет помощь:
    проблема такая возникает из за того что существует например страница которая доступна только пользователю зарегистрированному.
    он на ней останавливается, жмет кнопку выход. т.к. страница недоступная - выкидывает его на пустую страницу.
    В этой пустой странице не говориться что нужно создать сессию уже гостю.
    И когда в этот момент авторизовываемся выскакивает такая ошибка.

    Исправил так: в www\components\com_user\controller.php
    в функцию дописал последнюю строку - теперь автоматом переходит на главную где сессия создаётся.
    Код (PHP):
    1. function logout()
    2. {
    3. global $mainframe;
    4.  
    5. //preform the logout action
    6. $error = $mainframe->logout();
    7.  
    8. if(!JError::isError($error))
    9. {
    10. if ($return = JRequest::getVar('return', '', 'method', 'base64')) {
    11. $return = base64_decode($return);
    12. if (!JURI::isInternal($return)) {
    13. $return = '';
    14. }
    15. }
    16.  
    17. // Redirect if the return url is not registration or login
    18. if ( $return && !( strpos( $return, 'com_user' )) ) {
    19. $mainframe->redirect( $return );
    20. }
    21. } else {
    22. parent::display();
    23. }
    24. $mainframe->redirect( '/' );
    25. }


    Сам бы себе плюсик поставил за такой ответ)) Тему можно закрыть
     
    Dehax нравится это.

Поделиться этой страницей

Загрузка...