Загрузка страницы..
Как проверить, авторизован ли пользователь на сайте в CMS 1с-Битрикс?
Проверка, авторизован ли пользователь на сайте CMS 1с-Битрикс
2015-02-26T10:02 26 февр. 2015 10:02
Просмотров: 2746

1c-bitrix

Проблемы, связанные с проверкой авторизован пользователь в 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

Коментарий пока нет, стань первым!

Добавить комментарий

Яндекс.Метрика Яндекс.Метрик