Jak sprawdzić, czy identyfikator e-mail istnieje, czy nie używa PHP? i uzyskać informacje o właścicielu identyfikatora e-maila? czy można uzyskać informacje o właścicielu identyfikatora e-mail? czy trzeba pracować z niektórymi protokołami, takimi jak POP? Proszę pomóż mi.Jak sprawdzić, czy identyfikator e-mail istnieje, czy nie?
Odpowiedz
Powiedzmy użytkownik przesyła następujący adres e-mail:
Kontrole chciałbyś wykonać w kolejności są tak:
- Czy adres jest ważny
- Czy domena uruchomić serwer pocztowy/MX Records
- Czy jest na czarnej liście
pierwsze ciągu PHP można potwierdzić e-mail za pomocą filter_var
tak:
$is_valid = filter_var("[email protected]",FILTER_VALIDATE_EMAIL);
Po drugie, co chcesz sprawdź, czy w domenie działa serwer e-mail, aby to zrobić, sprawdź rekordy dns dla MX, tak:
$has_dns_mx_record = checkdnsrr("stackoverflow.com","MX");
kupili także otworzyć port w domenie tak:
$socket = fsockopen("stackoverflow.com", 25);
$mail_running = (bool)$socket;
fclose($socket);
Można również sprawdzić, czy serwer SMTP reaguje z 550, czyli e-mail nie istnieje, tak jak poniżej:
SEND > helo hi
250 stackoverflow.com
SEND > mail from: <[email protected]>
250 2.1.0 Ok
SEND > rcpt to: <[email protected]>
> 550 5.1.1 <[email protected]>: Recipient address rejected: User unknown in local recipient table
Patrząc na powyższe można wysyłać polecenia do prawidłowego serwera SMTP, takiego jak helo
>mail from <...>
i sprawdzić odpowiedź 550.
Spójrz tutaj dla niektórych kodów odpowiedzi: http://www.greenend.org.uk/rjk/2000/05/21/smtp-replies.html
Ponadto należy wziąć pod uwagę komentarzu @ slebetman stwierdzające, że niewielki odsetek mail> serwery są skonfigurowane tak, aby reagować 550, aby zapobiec wąchania się poprawnych adresów e-mail.
Czarna lista kontrolna jest dość proste, to po prostu znaleźć godnej DNSBL serwer zapewniający bramę na sprawdzeniu sprawdzić domenę, aby sprawdzić, czy został on na czarnej liście, jeśli ma ona e-mail może okazać się ważne i aktywny, ale został oznaczony jako spam, dlatego jest to niezaufana wiadomość e-mail. Powinieneś poprosić o alternatywny adres e-mail, aby autoryzować pod
Oto niektóre z technik sprawdzania poprawności używanych do sprawdzania poprawności adresu e-mail. Teraz jest wiele metod sprawdzania poprawności, ale to tylko niektóre z głównych.
Ma 99% szansy na działanie. Istnieje kilka serwerów pocztowych skonfigurowanych tak, aby nigdy nie zwracały odpowiedzi 550, aby skrypty nie mogły wykryć prawidłowego adresu e-mail. Mój własny serwer e-mail jest skonfigurowany w ten sposób. Tak samo jest z pocztą Yahoo. – slebetman
Bardzo dobry punkt, nigdy o tym nie pomyślałem. – RobertPitt
Nie ma 100% gwarancji, że adres e-mail jest ważny bez wysłania wiadomości e-mail i udzielenia użytkownikowi odpowiedzi w pewien sposób. Istnieje możliwość sprawdzenia, czy adres e-mail jest poprawny, czy nie. Możesz wykonać wyszukiwanie DNS i sprawdzić, czy domena ma rekord MX. Istnieją również części protokołu SMTP, którego możesz użyć, ale nic nie nakazuje, aby serwer SMTP odpowiedział na te polecenia. Centralops.net zapewnia produkt, który może pomóc, ale znowu nie jest gwarantowany.
Jeśli istniał na to pewien sposób postępowania, dlaczego praktycznie każda witryna z funkcją rejestracji wymagałaby w jakiś sposób odpowiedzi na wiadomość e-mail? Pytanie nie ma być szyderstwem; Mam tylko nadzieję, że pomoże ci to zauważyć, że inne witryny nie były w stanie wykonać tego samego czeku, o który prosisz.
HTH
Natknąłem się na link podczas googlowania. http://www.verifyemailaddress.org/. jak mogli to zrobić? myślę, że zrobili to dobrze. – brainless
Sprawdź moją odpowiedź @brainless. – RobertPitt
Ale nie ma sposobu, aby być pozytywnym. Możesz wykonać czynności opisane przez RobertPitt, niektóre z jego list, które mam w mojej odpowiedzi (choć wyjaśnia bardziej szczegółowo), ale na koniec dnia, jedynym sposobem, aby się upewnić, jest wysłanie e-maila i użytkownik reaguje na nią w jakiś sposób. Niektóre serwery SMTP powiedzą, że adres e-mail nie istnieje od razu, ale inne po prostu akceptują pocztę, a następnie umierają w eterze. Wiele serwerów SMTP nie odpowiada na pytanie, czy istnieje adres e-mail. Wyłączyli to, aby powstrzymać spamowanie. –
- 1. Jak sprawdzić, czy identyfikator już istnieje - CodeIgniter
- 2. Jak sprawdzić, czy sesja istnieje, czy nie?
- 3. Jak sprawdzić, czy fragment istnieje?
- 4. Jak sprawdzić, czy rekord istnieje?
- 5. Jak sprawdzić, czy nieruchomość istnieje?
- 6. Jak sprawdzić, czy istnieje klasa?
- 7. Jak sprawdzić, czy dziecko istnieje?
- 8. Jak sprawdzić, czy element tablicy istnieje, czy nie w javascript?
- 9. jak sprawdzić, czy istnieje atrybut, czy nie w XSL
- 10. LINQ, aby sprawdzić, czy identyfikator istnieje na liście
- 11. Jak ustalić, czy identyfikator procesu istnieje
- 12. Czy istnieje sposób, aby sprawdzić, czy wartości nie numerycznej makro
- 13. Jak sprawdzić, czy wymieniona grupa przechwytująca istnieje?
- 14. iOS: Jak sprawdzić, czy konto pocztowe istnieje
- 15. Jak sprawdzić w SQLite, czy tabela istnieje?
- 16. Jak sprawdzić, czy plik istnieje w pilocie?
- 17. Jak sprawdzić, czy element istnieje z SimpleXML?
- 18. Jak sprawdzić, czy istnieje nazwa domeny?
- 19. Jak sprawdzić, czy katalog istnieje w Perlu?
- 20. Jak sprawdzić, czy klasa istnieje w css?
- 21. Jak sprawdzić, czy widżet istnieje w Tkinter?
- 22. Jak sprawdzić, czy istnieje głęboka wartość tablicowa?
- 23. Jak sprawdzić, czy istnieje tabela DynamoDB?
- 24. Jak sprawdzić, czy okno podrzędne istnieje?
- 25. Jak sprawdzić element div, czy istnieje?
- 26. Jak sprawdzić, czy istnieje baza danych mysql?
- 27. Jak sprawdzić, czy istnieje klucz rejestru
- 28. Jak sprawdzić, czy istnieje zawartość ng
- 29. jak sprawdzić, czy istnieje stała w php
- 30. Jak najlepiej sprawdzić, czy plik cookie istnieje?
Zakładam, że przez "id", masz na myśli "adres". Dlaczego chcesz to zrobić? Chociaż jestem pewien, że istnieje wiele ważnych przypadków użycia, brzmi to dla mnie jako spam. – inkedmn
@inkedmn: chcę go użyć na stronie rejestracji witryny, aby zweryfikować adresy e-mail, aby zapobiec spamowi i fałszywym rejestracjom! absolutnie do wykrywania oszustw! – brainless
Wysłanie linku aktywacyjnego dotyczy wyłącznie Twojej opcji. – drudge