
Проблемы, связанные с проверкой авторизован пользователь в 1-с битрикс или нет решаются следующим кодом:
<?
global $USER;
if ($USER->IsAuthorized()){ echo "Ты авторизован!";
}else{
echo "Ты не авторизован!";
}
?>
Функция CUser::IsAuthorized() проверяет авторизован ли посетитель сайта, если да, то возвращает true, иначе false. Может принимать аргумент — ID пользователя.
Задача 1: Если пользователь не авторизован, на главной странице вывести поля для авторизации, если авторизован, нормальный вид главной страницы.
Решение:
<?if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();?>
<?
global $USER;
if ($USER->IsAuthorized()){
print_r("Добро пожаловать на наш сайт!
");
print_r("ID пользователя: ".$USER->GetID()."
");
print_r("Логин пользователя: ".$USER->GetLogin()."
");
print_r("Имя и фамилия пользователя: ".$USER->GetFullName()."
");
}else{?>
<?$APPLICATION->IncludeComponent(
"bitrix:system.auth.form",
".default",
Array(
"REGISTER_URL" => "/personal/register.php",
"FORGOT_PASSWORD_URL" => "/personal/profile/?forgot_password=yes",
"PROFILE_URL" => "/personal/profile/",
"SHOW_ERRORS" => "Y"
)
);
}?>
Задача 2: Показать блок конкретному пользователю.
Решение:
<?if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();?>
<? global $USER;
if ($USER->IsAuthorized(21))
{
/*специальное предложение*/
}?>
Комментарии 0
Комментариев пока нет, стань первым!