Posted 22 декабря, 20212 yr comment_175999 Здравствуйте. Форум расположен по адресу site.ru/forum/, нужно со страницы site.ru проверить авторизован ли пользователь на форуме. Какой наиболее быстрый способ это сделать? Подключившись к классу require $_SERVER['DOCUMENT_ROOT'].'/forum/init.php'; Или через получения куки ips4_IPSSessionFront и поиск в БД запросом? Link to comment https://ipbmafia.ru/topic/23908-proverka-avtorizacii/ Share on other sites Больше вариантов
22 декабря, 20212 yr Author comment_176000 Загрузка страницы при проверке авторизации через классы форума занимает 0.013140201568604 сек require $_SERVER['DOCUMENT_ROOT'].'/forum/init.php'; \IPS\Session\Front::i(); $member_IPS = \IPS\Member::loggedIn(); В то время как проверка запросом через БД страница загружается за 0.0060040950775146 сек. $sql = $pdoBDforum->prepare("SELECT * FROM `core_sessions` LEFT JOIN `core_members` USING(`member_id`) WHERE `id` = :cookie"); $sql->execute(array(':cookie' => $_COOKIE['ips4_IPSSessionFront'])); Но тут правда есть проблемка, кука ips4_IPSSessionFront постоянно пропадает, такое ощущение, что каждые 10-30 минут )) И появляется только если снова зайти на форум. Link to comment https://ipbmafia.ru/topic/23908-proverka-avtorizacii/?&do=findComment&comment=176000 Share on other sites Больше вариантов
24 декабря, 20212 yr Author comment_176057 Как выяснилось этот код тоже не работает до тех пор пока я не зайду на форум. Как только захожу на форум и потом возвращаюсь на главную страницу сразу получаю информацию о пользователе. В чем проблема, кто знает? require $_SERVER['DOCUMENT_ROOT'].'/forum/init.php'; \IPS\Session\Front::i(); $member_IPS = \IPS\Member::loggedIn(); Link to comment https://ipbmafia.ru/topic/23908-proverka-avtorizacii/?&do=findComment&comment=176057 Share on other sites Больше вариантов
24 декабря, 20212 yr comment_176059 $sessionId = isset( \IPS\Request::i()->cookie['IPSSessionFront'] ) ? \IPS\Request::i()->cookie['IPSSessionFront'] : \IPS\Session::i()->id; Link to comment https://ipbmafia.ru/topic/23908-proverka-avtorizacii/?&do=findComment&comment=176059 Share on other sites Больше вариантов
28 декабря, 20212 yr Author comment_176109 HooLIGUN поясните пожалуйста немного по коду, что вот это значит? Правильно ли понимаю, что если не существует куки IPSSessionFront, то они будут установлены и возвращены? Каким сроком жизни? \IPS\Session::i()->id Полный код проверки авторизации должен выглядеть следующим образом? require $_SERVER['DOCUMENT_ROOT'].'/forum/init.php'; \IPS\Session\Front::i(); $sessionId = isset( \IPS\Request::i()->cookie['IPSSessionFront'] ) ? \IPS\Request::i()->cookie['IPSSessionFront'] : \IPS\Session::i()->id; $sql = $pdoBDforum->prepare("SELECT * FROM `core_sessions` LEFT JOIN `core_members` USING(`member_id`) WHERE `id` = :cookie"); $sql->execute(array(':cookie' => $sessionId)); $dataBD = $sql->fetch(); Link to comment https://ipbmafia.ru/topic/23908-proverka-avtorizacii/?&do=findComment&comment=176109 Share on other sites Больше вариантов
29 декабря, 20212 yr Author comment_176110 Получаю ID авторизации, но почему-то с таблицы core_sessions в БД постоянно пропадают данные об авторизации. Пустой member_id и другие поля.. Link to comment https://ipbmafia.ru/topic/23908-proverka-avtorizacii/?&do=findComment&comment=176110 Share on other sites Больше вариантов
4 января, 20222 yr Author comment_176231 Есть знатоки?) Link to comment https://ipbmafia.ru/topic/23908-proverka-avtorizacii/?&do=findComment&comment=176231 Share on other sites Больше вариантов
12 июня, 20231 yr Author comment_193884 Снова возвращаюсь к теме. require $_SERVER['DOCUMENT_ROOT'].'/forum/init.php'; \IPS\Session\Front::i(); $member_IPS = \IPS\Member::loggedIn(); Почему данный код не возвращает информацию о пользователе за пределами форума, если на форум не заходили более N минут. Если открыть страницу форума, а потом закрыть её. То данный код возвращает информацию о пользователе. Хочу проверить с других страниц сайта, авторизован ли пользователь на форуме... Link to comment https://ipbmafia.ru/topic/23908-proverka-avtorizacii/?&do=findComment&comment=193884 Share on other sites Больше вариантов
19 июня, 20231 yr Author comment_194010 up? Link to comment https://ipbmafia.ru/topic/23908-proverka-avtorizacii/?&do=findComment&comment=194010 Share on other sites Больше вариантов
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.