Newsgroup: it.comp.lang.delphi
Titolo: verifica indirizzo email

qualcuno ha qualche suggerimento da darmi su come verificare 
l'esistenza di un indirizzo email inserito in un edit (verifica 
sia come mittente che come destinatario).
Grazie mille.
NR
-- 
Postato da Virgilio Newsgroup: lo usi da web ma con le funzioni del newsreader 
http://newsgroup.virgilio.it
Gerarchie it, italia, it-alt, tin, it.binari. Unico!


Puoi interrogare il server di posta del destinatario e se ti risponde con un 
codice di ok allora esiste altrimenti no.
 

Cooper ha scritto:

Come gia' riferito,
credo sia possibile testare l'esistenza in viandogli un'email con un 
componente per protocollo SMTP, conoscendo il nome del server e 
valutando la risposta.
Ho visto pero' che alcuni indirizzi vengono accettati lo stesso 
all'invio pero' piu' tardi il server di posta ti avvisa con un'email che 
l'indirizzo non esiste.
Giorgio


Inviare una email non ï¿œ la strada giusta... intanto perchï¿œ se la invii essa 
viene ricevuta dal destinatario... e il destinatario si ritroverebbe con 
qualcosa di indesiderato nella sua casella di posta elettronica.
Per il resto come vedi ï¿œ sempre il server l'ultimo ad avere la parola, 
quindi a maggior ragione si fa prima a interrogare il server e in 
particolare l'esistenza o meno del record MX.
 

 sia come mittente che come destinatario).
Non puoi farlo.
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 particolare l'esistenza o meno del record MX.
Non � possibile farlo in maniera sicura. I server potrebbero avere
politiche diverse nella gestione degli utenti non esistenti; molte volte,
per esempio, l'indirizzo del destinatario non esiste ma non si riceve
alcuna risposta.


 componente per protocollo SMTP
Stai scherzando vero?


Andrea Laforgia ha scritto:

e perchï¿œ mai!??!
ho una form di registrazione dove va inserito il contatto 
proprio e poi inserire il destinatario della registrazione (se 
non esiste, perchï¿œ cmq dovrei mettere un valore di default), 
quindi necessito di verificare che il contatto inserito sia 
corretto (visto che serve x registrare un software)..


Cooper ha scritto:

scusa la mia ignoranza, ma quando parli di recor mx, io casco 
dal pero..
suggerimenti su quali componenti usare (in delphi7)?



Ehm a volte le battute vengono senza accorgersene...
Ciao Giorgio 

 corretto (visto che serve x registrare un software)..
Puoi verificare se � corretto SINTATTICAMENTE (quindi valido) ma non che
sia 
esistente o attivo o avere la casella piena, senza inviare dei comandi al 
server (vedi qua un esempio: 
http://www.howtodothings.com/computers/a1169-
validating-email-addresses-in-delphi.html)
E' per questo che la maggioranza dei metodi di iscrizione online
richiedono 
una conferma (inviata via email) DOPO il termine della procedura di 
registrazione, che andr� a buon fine solo DOPO che � stata data, appunto,
la 
conferma.
P.S: 
Ciao
ACSH



Se l'email esiste viene restituito senz'altro un messaggio dal server 
(questo sempre) se non erro � il codice 200 ma non ricordo adesso.
Quindi ammesso quanto dici tu, si pu� porre tranquillamente uno stato di 
attesa di 2 ore ad esempio se non viene restituito il codice "200" o 
comunque un altro codice di errore allora significa che l'email non esiste.
 

 (questo sempre) se non erro � il codice 200 ma non ricordo adesso.
non sempre. Con Aruba ad esempio si pu� impostare il mailserver in modo da 
accettare, e contestualmente cancellare, tutte le email indirizzate a 
destinatari inesistenti.
Sandra 

 comunque un altro codice di errore allora significa che l'email non >esiste.
Non hai capito. Il server pu� comunque risponderti ok. Il tuo metodo non �
affidabile e contattare un server in maniera massiva (metti il caso che
bisogna controllare un bel numero di indirizzi) pu� creare le condizioni
per un denial of service, per cui bisogna stare molto attenti a dare
consigli di questo genere. Non esiste un metodo affidabile per verificare
l'esistenza di un indirizzo e-mail.


 e perch� mai!??!
Per i motivi gi� spiegati nella parte del thread che evidentemente non hai
(ancora?) letto. Quando dico "non puoi farlo", intendo che non puoi
verificare se un indirizzo e-mail esiste, che � quanto chiedi. E' ovvio
che puoi realizzare un form, � ovvio che puoi metterci un bottoncino
"Verifica esistenza", � ovvio che sulla carta puoi fare tutto quello che
vuoi. Ma poi a quel bottone ci devi associare del codice e siccome non c'�
un metodo valido per sapere, a priori, se un indirizzo e-mail esiste, quel
bottone non pu� fare nulla di concreto. Ti � pi� chiaro cos�?


 
scusa.. sembrava volessi dire che non posso farlo, come se fare 
tale verifica fosse un reato.
ho capito male..
perï¿œ se mi rispondi quasi scocciato, allora non posto nessuna 
richiesta...



Ogni controllo credo richieda il verificarsi di un evento... chi lo 
scaturisce questo evento? Mi sembra un po' la storiella del virus albanese 
:)
In ogni caso il reato c'ï¿œ, quella di inviare email non desiderate. 

 tale verifica fosse un reato.
Non ho mai parlato di "reato" (anche se invadere la privacy dei privati
spedendo loro e-mail indesiderate o interrogare server chiedendo loro
servizi per i quali non sono appositamente studiati pu� metterti in un bel
po' di difficolt�), ma ho specificato bene nel thread il perch� la cosa
non si possa fare. Questo � un ng tecnico, ti rispondo sul piano tecnico.
Non capisco da cosa tu deduca il tono "quasi scocciato".
Tutti i servizi di registrazione funzionano secondo lo stesso algoritmo:
ricevo la richiesta di registrazione, invio all'indirizzo e-mail
specificato in fase di richiesta un messaggio contenente un link di
validazione, valido l'indirizzo una volta che l'utente accede al link di
validazione che gli ho inviato.
