Форум 1С-Битрикс

Как реализовать авторизацию по логину, email или телефону в 1С-Битрикс

Внимание! Работает режим премодерации. Все сообщения публикуются после проверки!
Страницы: 1
Ответить
RSS
Как реализовать авторизацию по логину, email или телефону в 1С-Битрикс
Как настроить возможность авторизации в Битрикс по телефону, email и логину

Многие разработчики, работающие с Битрикс: Управление сайтом,  сталкиваются с задачей расширения стандартной системы авторизации.  Часто возникает вопрос: можно ли позволить пользователям входить на  сайт, используя телефон и пароль, email и пароль, а также логин и пароль — одновременно?
Изменено: Валерий Макеев - 28.09.2025 14:34:02
Автоматически определяем тип введенных данных  (телефон/email/логин) и выполняем корректную авторизацию через  стандартную систему Битрикс.
Код
AddEventHandler('main', 'OnBeforeUserLogin', function(&$params) {
    $input = $params['LOGIN'];
    
    if (preg_match('/^[\d\+\-\(\)\s]+$/', $input)) {
        $user = CUser::GetList('id', 'asc', ['PERSONAL_PHONE' => NormalizePhone($input)])->Fetch();
        if ($user) $params['LOGIN'] = $user['LOGIN'];
    } 
    elseif (filter_var($input, FILTER_VALIDATE_EMAIL)) {
        $user = CUser::GetList('id', 'asc', ['EMAIL' => $input])->Fetch();
        if ($user) $params['LOGIN'] = $user['LOGIN'];
    }
});

function NormalizePhone($phone) {
    return preg_replace('/[^\d]/', '', $phone);
}
Страницы: 1
Ответить
Форма ответов
Текст сообщения*
Перетащите файлы
Ничего не найдено
Файл
Загрузить картинки
 

Стоимость услуг по разработке и сопровождению сайтов на 1C-Битрикс

Модули и компоненты для «1С-Битрикс»

оценка производится на основе предоставленного Технического Задания

от 20 000 рублей
Разработка дополнительных модулей для 1С-Битрикс, расширение функционала, внедрение любых решений, требующихся для выполнения ваших бизнес-задач.

* стоимость зависит от конкретной задачи, ее объема и сложности выполняемых работ.

Лендинг

от 3 дней

от 25 000 рублей

Разработка одностраничного сайта на платформе Битрикс

* стоимость зависит от наличия верстки, использования готового решения и т.д.

Аутсорсинг

готов помочь, если нет времени

договорная

Могу взять на себя работы по full-stack

* на основе готовой верстки