Как на сайте при регистрации отсеивать не существующие emailы?

Добрый день!
Видел на сайтах (не почтовых) при регистрации не возможно ввести не существующий имейл.
Такую функцию предоставляет какой-то сервис или просто есть код, который опрашивает почтовый сервис?
Спасибо!
  • Вопрос задан
  • 322 просмотра
Решения вопроса 2
@Ariurn
1) Проверка с помощью регулярки (чтобы не писали абракадабру):
function validateEMAIL($EMAIL) {
$v = "/[a-zA-Z0-9_-.+]+@[a-zA-Z0-9-]+.[a-zA-Z]+/";
return (bool)preg_match($v, $EMAIL);
}

2) Проверить наличие MX-записи в домене (гарантия того, что такой домен существует и обрабатывает поступающие почтовые запросы):
if (!checkdnsrr($domain, 'MX')) {
// domain is not valid
}

Но учтите, что всё это не является достаточным условием того, что такой e-mail существует на данном домене.
Ответ написан
RomaZveR
@RomaZveR
CEO AlertMoney, PHP/Golang Developer
Через SMTP проверять существование ящика, команда HELO если не ошибаюсь. В гугле/гитхабе есть примеры
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
Не регистрировать пользователя без линка подтверждения, который отправляется на E-Mail сразу после ввода E-mail адреса.
После перехода по линку (и подтверждения со стороны сервера его корректности), уже просим ввести доп. поля: username и пароль.
Пока нет подтверждения почты - нельзя занять себе желаемый username.
Также, можно сделать наоборот: отправку e-mail на сайт с клиента почты через "mailto:".
Ответ написан
Комментировать
@devlocal
Элементарно. отправлять код подтверждения на почту, после ввода которого при регистрации полностью регистрировать пользователя. Или регистрировать пользователя и отправлять код на почту и пока не введет в своем кабинете этот код, функции будут ограниченны, а если по истечению какого то периода не подтвердили то вообще удалять аккаунт. По моему вариантов куча. Такое чувство что вы ни разу ни где не проходили регистрацию на сайтах
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы