Перейти к содержанию
IPS Invision Community 🇷🇺

Авторизация и Выход (с другой страницы форума)


Рекомендуемые сообщения

Здравствуйте друзья, работаю с версией 4.3.3,  проблема следующая:

После того, как я использую авторизацию, с разным промежутком времени она просто слетает, вот функция:

require_once './forum/init.php';

\IPS\Dispatcher\Build::i();
$lang = \IPS\Lang::load( \IPS\Lang::defaultLanguage() );
$member = \IPS\Member::loggedIn();
$member_id = $member->member_id;

$csrfKey = \IPS\Session::i()->csrfKey;

if (empty($member_id)){
	
// ...... .. ......	
}else{
	
			
$name = $member->name;
$photo = $member->photo;
$group_id = $member->member_group_id;
$group_name = $member->groupName;
$email_ipb = $member->email;
\IPS\Member::loggedIn()->language()->parseOutputForDisplay( $group_name );	
	
}


function doLogin( $username, $password )
{
	
	$member_login = \IPS\Member::load( $username, 'name' );
	
		if ( $member_login->member_id ){
			
			$member = \IPS\Login\Handler::findMethod( 'IPS\Login\Handler\Standard' )->authenticatePasswordForMember( $member_login, $password);	
				
			if ( $member ){

			\IPS\Session::i()->setMember( $member_login );
			/* Set the cookie */
			$device = \IPS\Member\Device::loadOrCreate( $member_login );
			$device->updateAfterAuthentication( TRUE );
			
			
				return "ok";
			
			}
			else
			{
				
				return "incorrect_password";
				
			}
	
		}
		else
		{
			
			return "user_not_exist";	
			
		}
	
}

Так же есть функция , которая проверяет авторизацию:

function authorization() {
		global $member_id;
		if (empty($member_id)) {
			return 0;
		} else {
			return 1;
		}
	}

Простыми словами, сначала $member_id считывается а потом в один прекрасный момент просто перестаёт, помогает либо повторный вход (не на долго) либо переход на форум и возврат обратно (не на долго)!

Прошу вашей помощи, сам уже просто голову сломал.

Ссылка на комментарий

Создайте учетную запись или войдите, чтобы комментировать

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти
×
×
  • Создать...
Вверх
Вверх