Показать сообщение отдельно
  #6 (permalink)  
Старый 08.09.2016, 21:12
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Оно мне не нужно, я и без этого знаю что функция mail не производит никаких проверок. Спокойно можно отослать письмо по адресу as@as.as. Используя не sendmail, а SMTP еще что-то можно сделать, но...
Можно проверить функцией getmxrr(), но только почтовый ретранслятор, не более. Чтобы проверить есть ли адрес почтовый нужно иметь прямой доступ к порту 25, что вряд ли вам разрешит хостер.

В общем ожидать от mail(), что адрес не верный, это полная чушь.

А не "пускать" пользователя на страницу после определенного действия, так это просто перенаправить его, а не издеваться на клиенте над адресом. Тем более он может просто набрать адрес в адресной строке браузера и JS по барабану.

//в самом начале кода, до любого вывода в браузер
session_start();
if($_SESSION['done']) {
    header('location: url');
    exit;
}

//основной код
if(expert) {
    //что-то проверяем, и если сделано, то определяем перенаправление
    $_SESSION['done'] = 1;    
}


Пока в сессии будет этот признак пользователь на эту страницу уже не попадет.

Функция mail(), чтобы знать чего она возвращает.

Последний раз редактировалось laimas, 08.09.2016 в 21:22.
Ответить с цитированием