| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Общие вопросы > Проверка E-mail |
| Автор: MeIsGremlin 7.4.2006, 23:12 |
| Доброго времени суток, Кто знает как проверить при помощи php существование почтового адреса? То есть мне просто нужно знать существует он или нет. Пару классов которые я отрыл подсоединяются к нему через imap и там нужен пароль. Что в общем не то что мне нужно. |
| Автор: Danox 8.4.2006, 13:29 | ||
| Функция проверки существования сервера в введенном адресе электронной почты Cepera:
|
| Автор: ZlojEzh 8.4.2006, 13:39 | ||
если помимо существования хоста надо проверить еще и существование такого пользователя - можно законнектиться через smtp и дать серверу комманду
варианты ответа сервера можно посмотреть http://www.ietf.org/rfc/rfc0821.txt |
| Автор: MeIsGremlin 10.4.2006, 15:48 | ||||||||
Эта функция просто проверяет есть ли mail.ru например. Но а как проверить есть ли какой-то user@mail.ru ? Добавлено @ 15:53
Эта команда может быть отключена. И подсоединиться к smtp кажется можно в php при помощи imap_open? правильно ? Но опять же нужен пароль. |
| Автор: MeIsGremlin 10.4.2006, 19:59 |
| Надо будет попробовать. |
| Автор: MeIsGremlin 11.4.2006, 22:43 | ||||||||
А можно небольшой пример этого? Я так понял нужно на какой-то свой сервер подключатсья и от туда отправлять запросы. А есть что-то менее хитрозакрученное? |
| Автор: ZlojEzh 12.4.2006, 01:19 | ||
| вот, накатал сходу еще не проверял
только сейчас заметил одну проблему - реальное имя смтп-сервера может не совпадать со второй частью емейла как бороться, пока не знаю... |
| Автор: MeIsGremlin 13.4.2006, 17:57 |
| Смотри что получается telnet smtp.mail.ru 25 Trying 194.67.23.111... Connected to smtp.mail.ru. Escape character is '^]'. 220 mail.ru ESMTP Thu, 13 Apr 2006 18:45:48 +0400 helo smtp.mail.ru 250 mx5.mail.ru Hello smtp.mail.ru [217.77.214.110] auth login 334 VXNlcm5hbWU6 ZXRvIG1vZSBtaWxv 334 UGFzc3dvcmQ6 QSB4eWkgdGViZQ== 235 Authentication succeeded helo smtp.mail.ru 250 mx5.mail.ru Hello smtp.mail.ru [217.77.214.110] MAIL FROM:user@mail.ru 250 OK RCPT TO:popa@geeksforless.net 250 Accepted Data 354 Enter message, ending with "." on a line by itself hello man . 250 OK id=1FU36d-000MxY-00 quit После этого приходит mail delivery system ко мне на user@mail.ru ну эт что мне теперь парсить новые сообщения и смотреть не mail delivery system ли они? как-то неправильно. Да и таких как прийдет. Ящика не хватит Обратил внимаение на RCPT TO:popa@geeksforless.net 250 Accepted Оно его приняло. |
| Автор: ZlojEzh 13.4.2006, 21:27 |
| коннектиться надо не на свой smtp-сервер, а на тот, где надо ящик проверить в твоем примере - на geeksforless.net другой сервер будет принимать письмо и перенаправлять его дальше но тут возникает другая проблема: сервер может попросить логин-пароль как с бороться с таким вариантом пока не знаю будем подумать... |
| Автор: MeIsGremlin 17.4.2006, 15:14 |
| Та не ты перепутал наверно. Я на mail.ru соединяюсь и отправляю письмо на несуществующий адрес с mail.ru на geeksforless.net и мне на mail.ru приходит письмо что popa@geeksforless.net не существует. Но во время соединения с smtp адрес принимается |