Запомнить меня. Boxcode 8.5

Думаю, вы уже поняли о чем будет идти речь в данной статье.

При создании доски объявлений, данный функционал может быть полезен людям, которые ограничены временем действия сессии и во время какой-то операции, не в нужный момент, получают ответ “Время сессии истекло”. Решить эту проблему можно двумя способами : увеличить время действия сессии или привязать авторизацию к кукам.

В данной статье рассматриваем второй способ –  реализация функции “запомнить меня” в движке доски объявлений boxcode 8.5.

И так, что нужно сделать

  1. Открываем файлы /templates/шаблон/components/registr_enter.html и /templates/шаблон/hablon_form_enter_site.html  и добавляем в код чекбокс в нашу форму авторизации
  2. Загружаем файл в папку /generalscript/ или любую другую  – скачать
  3. Открываем файл /config/config.php  в конце кода добавляем инклуд на наш новый файл
  4. Открываем файл /script/avtoriz_include.php и заменяем все содержимое на
  5. Заменяем файл /script/components/registr/control_enter.php  – скачать
  6. Открываем файл /script/components/registr/control_data.php

    заменяем на
  7. Открываем файлы uploadfile.php, add_mark.php  в папке  /moduls/модуль/include/  (список файлов может дополнятся). Находите условие

    и полностью его удаляете . Потом находите строчку

    и после нее или после текста (если есть)  “Произошла ошибка с базой данных!” добавляете

Все! На данный момент запоминание вашей авторизации в куках должно производится . Данное решение не претендует на самое логичное и продуманное, также может содержать какие-то ошибки, о которых вы можете писать в комментариях. Тестировалось и разрабатывалось  на движке boxcode 8.5 . Другие версии не проверялись !

 

10 Комментариев
  1. Сделал все по инструкции… Если пользователь авторизован, то объявление добавляется, если нет, то ошибка “Произошла ошибка с базой данных!” Пока понять не могу из за чего.

    • попробуйте, продублировать статью изначально и потом сообщите, т.к у себя не наблюдаю данной ошибки

      • Единственные отличия моего сайта:
        1. include_once(DIR_CMS.”/generalscript/auth.php”); файл я залил в другую папку и указал путь к ней
        2. Авторизация на моем сайте организована не “логин пароль” а “email пароль”.

        • Ну пробуйте на базовом движке. Если на нем будет работать – значит ищите в вашем конкретном движке проблемы. Тут я вам вряд ли помогу

  2. Здравствуйте Саркис. Поковырял и оказалось, что проблема у меня в БД была. Теперь модуль заработал))!! Ура! Но теперь всплыла другая проблема. Если пользователь после входа в кабинет добавляет какое нибудь объявление в закладки, то его там не видно, пока не нажмешь “выход”. Что может быть? Вы проверяли этот момент?

    • Здравствуйте . Все, изложенное в статье, делалось предварительно на сайте
      http://cat.hr00.ru/demo/8.x/

      Поэтому, если вы обнаружили, что ошибки повторяются на этом же сайте тоже, то буду смотреть, что не так я описал в статье !

      • Там нельзя зарегиться, чтобы проверить как работет скрипт после авторизации.

        Доска бесплатных объявлений
        Сайт не доступен
        Произошла ошибка с базой данных

          • Спасибо большое. Разобрался. Проблема была из за места размещения кода
            session_auth_user::init_authoriz_user_sc();
            if ( $GLOBALS[“user_to_site”] && $GLOBALS[“id_user_to_site”] > 0 )
            {

            }

            в файле add_mark.php

            Сейчас вроде все работает)

Комментировать

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