Перейти к контенту
  • 0

Кто как бореться с мертвыми e-mail


Alex

Вопрос

Кто как бореться с мертвыми e-mail, а также с левыми.

 

Есть такие участники, которые задают такой e-mail, что если что то уйдет письмом на этот емаил то у Вас будут проблемы.

 

А также мертвые емаилы, дают вам сообщения почтовиков что нет такого адресата.

 

Как Вы выходите из этого положения?

Ссылка на комментарий
Поделиться на других сайтах

Рекомендуемые сообщения

  • 0

Alex

Лично я в админке поставил e-mail validation - если мыло мертвое, то человек просто не зарегистрируется...

Ссылка на комментарий
Поделиться на других сайтах

  • 0

d1pro

 

А где ты влючил Здесь

Перевод от Игорька

------------------------------------------------------------------------------------------------------------------

Подтверждать новые регистрации через e-mail?

Используйте подтверждение после проверки администратором или подтверждение через e-mail

-------------------------------------------------------------------------------------------------------------------

Ссылка на комментарий
Поделиться на других сайтах

  • 0

А сделать функцию, которая проверит е-мейл на существование сложно?

 

   function getmxrrWin($host)
  {
         $ret = false;
         $mxhosts=array();
         if (empty($host)) return $ret;
  	 
         $p_pipe = popen("nslookup -type=MX $host", "r");
         $output="";
         while (!feof($p_pipe))
         {
  	 $output .= fgets($p_pipe, 4096);
         }
         pclose($p_pipe);

         preg_match_all("/mail exchanger = (.*)/", $output, $rg_hosts);
         if (count($rg_hosts) >= 1)
        {
  	 $i=0;
  	 foreach($rg_hosts[1] as $key=>$value)
    	 {
             $mxhosts[$i] = $value;
                   $i++;
      	 }
      	 $ret=true;
         }

         return $mxhosts;
  }

   function is_correct_mail($email, $is_unix)
   {

       if (empty($email)) return 0;
       if (!preg_match("/@(.*)/", $email, $h)) return 0;
       $host=strtoupper($h[1]);
       $mxhosts = array();

       if ($is_unix==1)
       {   
               $r = getmxrr($host, $mxhosts);
       }else{
$mxhosts = getmxrrWin($host);
               $r = (count($mxhosts)>0);
       }
       if ($r===false) return 0;
       return 1;
   }

 

Причем даже с решением под Windows... Если е-мейл не имеет MX хоста, то он левый... Вопросы?

Ссылка на комментарий
Поделиться на других сайтах

  • 0
а это проверить на предмет существования е-мейл в принципе (при смене/регистрации), чтобы не волновать пользователя - а вдруг он ошибся при вводе?
Ссылка на комментарий
Поделиться на других сайтах

  • 0

Этот код универсален - ты можешь вставить его там, где идет проверка поля е-майл на введенное значение (раз).

 

Далее - на базе этого кода ты можешь сделать в админ панели проверку "разослать PM пользователям с некорректным е-мейл" или "Удалить всех пользователей с некорректным е-мейл"...

 

Свобода действий!

Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить на вопрос...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.