Conoscete qualcosa?
Grazie
--
http://www.maxori.it
L'Arte � la capacit� di fare cose di nessun valore
e di riuscire a venderle
F. Zappa
> Sto cercando in rete una classe o uno script per verificare se un
> indirizzo email è esistente o meno, ma non ho trovato nulla. Non so se
> ho sbagliato con le keywords, sta di fatto che trovo solo materiale
> riguardante la correttezza dell'indirizzo, non la sua effettiva
> esistenza.
Non esiste uno script del genere, l'unica cosa che puoi fare è madare una
mail e controllare se ti viene tornata o meno una mail di indirizzo non
esistente.
Ma di certo non puoi verificare niente all'atto della spedizione della
mail.
> Non esiste uno script del genere, l'unica cosa che puoi fare � madare una
> mail e controllare se ti viene tornata o meno una mail di indirizzo non
> esistente.
> Ma di certo non puoi verificare niente all'atto della spedizione della
> mail.
Immaginavo...
Controller� uno ad uno i vari "user unknow" sul mailserver.
Grazie RedWiz.
Max
> Sto cercando in rete una classe o uno script per verificare se un
> indirizzo email � esistente o meno, ma non ho trovato nulla.
> Non so se ho sbagliato con le keywords, sta di fatto che trovo solo
> materiale riguardante la correttezza dell'indirizzo, non la sua
> effettiva esistenza.
Devi verificare la correttezza dell'indirizzo e-mail di un utente? Manda
all'indirizzo che ha inserito una mail con un link da cliccare per la
validazione.
Y.
> Non esiste uno script del genere, l'unica cosa che puoi fare è madare una
> mail e controllare se ti viene tornata o meno una mail di indirizzo non
> esistente.
> Ma di certo non puoi verificare niente all'atto della spedizione della
> mail.
Non è vero, le seguenti condizioni possono essere verificate in tempo reale:
* esistenza del dominio
* esistenza del MX
* se il MX principale è contattabile, verifica dell'esistenza dell'utente
Y.
> Non � vero, le seguenti condizioni possono essere verificate in tempo reale:
>
> * esistenza del dominio
> * esistenza del MX
> * se il MX principale � contattabile, verifica dell'esistenza dell'utente
>
> Y.
Parli della funzione di php checkdnsrr() ?
Dar� un'occhiata a php.net.
Grazie
Max
>
> Devi verificare la correttezza dell'indirizzo e-mail di un utente? Manda
> all'indirizzo che ha inserito una mail con un link da cliccare per la
> validazione.
Putroppo la faccenda � diversa, mi � stato chiesto di verificare
l'esistenza di molte centinaia di indirizzi di una newsletter vecchia di
alcuni anni.
La tua soluzione pu� essere valida, vedo anche le altre risposte poi ci
penser�.
Grazie intanto.
Max
> Non è vero, le seguenti condizioni possono essere verificate in tempo
> reale:
>
> * esistenza del dominio
> * esistenza del MX
> * se il MX principale è contattabile, verifica dell'esistenza
> dell'utente
Mi sfugge come implementare il terzo passaggio.
C'è un modo per interrogare il db dell'MX ?
(non si finisce mai di imparare)
> Putroppo la faccenda � diversa, mi � stato chiesto di verificare
> l'esistenza di molte centinaia di indirizzi di una newsletter vecchia di
> alcuni anni.
Se � un compito da svolgere una tantum, allora la soluzione di RedWiz �
sicuramente la pi� appropriata.
Y.
>
> Mi sfugge come implementare il terzo passaggio.
> C'� un modo per interrogare il db dell'MX ?
> (non si finisce mai di imparare)
Ho trovato questa funzione, ora la testo:
function check_email($email) {
if(preg_match('/^\w[-.\w]*@(\w[-._\w]*\.[a-zA-Z]{2,}.*)$/',
$email, $matches))
{
if(function_exists('checkdnsrr'))
{
if(checkdnsrr($matches[1] . '.', 'MX')) return true;
if(checkdnsrr($matches[1] . '.', 'A')) return true;
}else{
if(!empty($hostName))
{
if( $recType == '' ) $recType = "MX";
exec("nslookup -type=$recType $hostName", $result);
foreach ($result as $line)
{
if(eregi("^$hostName",$line))
{
return true;
}
}
return false;
}
return false;
}
}
return false;
> Se � un compito da svolgere una tantum, allora la soluzione di RedWiz �
> sicuramente la pi� appropriata.
>
> Y.
Si, � giusto per ripulire un p� il database
> Mi sfugge come implementare il terzo passaggio.
> C'è un modo per interrogare il db dell'MX ?
Devi usare SMTP.
Fai come se mandassi un mail ma ti fermi prima.
Io lo faccio da Linux da linea di comando, sicuramente ci sarà il modo
di farlo anche da PHP.
Guarda questo log di sessione, leggermente modificato per motivi di
privacy :)
$ netcat mx.example.com 25
220 nabucodonosor.example.com ESMTP Sendmail 8.14.1/8.12.10/SuSE Linux
0.7; Wed, 12 May 2010 14:24:49 +0200
HELO myhost.mydomain.com
250 nabucodonosor.example.com Hello myhost.mydomain.com [4.2.42.24],
pleased to meet you
MAIL FROM: yossa...@operamail.com
250 2.1.0 yossa...@operamail.com... Sender ok
RCPT TO: scono...@example.com
550 5.1.1 scono...@example.com... User unknown
Se � una cosa una tantum o cmq che non presuppone l'uso di applicazione
web ci sono programmi gi� fatti (servono esattamente a questo, a pulire
db immensi degli spammer tenendo solo indirizzi buoni).
Il funzionamento � quello gi� descritto da altri prima di me nel thread.
L'unico limite sono tutte le mail aziendali per cui l'accesso �
consentito solo dalla intranet, che te li da come morti mentre non lo sono.
--
Z.
>Guarda questo log di sessione, leggermente modificato per motivi di
>privacy :)
>$ netcat mx.example.com 25
>220 nabucodonosor.example.com ESMTP Sendmail 8.14.1/8.12.10/SuSE Linux
>0.7; Wed, 12 May 2010 14:24:49 +0200
>HELO myhost.mydomain.com
>250 nabucodonosor.example.com Hello myhost.mydomain.com [4.2.42.24],
>pleased to meet you
>MAIL FROM: yossa...@operamail.com
>250 2.1.0 yossa...@operamail.com... Sender ok
>RCPT TO: scono...@example.com
>550 5.1.1 scono...@example.com... User unknown
Attenzione che non � detto che si possa interrogare il MX, a meno di non
essere noi stessi dei MX registrati.
$ netcat mx.example.com 25
220 nabucodonosor.example.com ESMTP Sendmail 8.14.1/8.12.10/SuSE Linux
0.7; Wed, 12 May 2010 17:34:17 +0200
HELO myhost.mydomain.com
250 nabucodonosor.example.com Hello myhost.mydomain.com [151.49.4.132],
pleased to meet you
MAIL FROM: yossa...@operamail.com
501 5.7.1 yossa...@operamail.com... Sender refused by the DNSBL
zen.spamhaus.org
Connection closed by foreign host.
(E va tenuto conto di SPF. Per esempio, con la tua email tutto bene. Ma,
se usassi la mia email di GMail, un server ben nato mi rimbalzerebbe).
(E vari controlli in sequenza possono essere considerati "hammering" - e
determinare il tarpitting del server che ci avesse provato).
Leonardo
--
Los pellegris perjurs, fraiditz,
Qi nos an sai en camp geqitz,
Qi los manten e cortz es tortz,
Que chascuns val mens vius que mortz.
>Se � una cosa una tantum o cmq che non presuppone l'uso di applicazione
>web ci sono programmi gi� fatti (servono esattamente a questo, a pulire
>db immensi degli spammer tenendo solo indirizzi buoni).
>Il funzionamento � quello gi� descritto da altri prima di me nel thread.
>L'unico limite sono tutte le mail aziendali per cui l'accesso �
>consentito solo dalla intranet, che te li da come morti mentre non lo sono.
L'unico metodo buono � quello suggerito da Yossarian: inviare una email
con un link per la validazione e niente altro (niente pubblicita' della
ditta, per es., al di la' del marchio), a parte una richiesta esplicita
all'invio di mail (a meno che non si abbia gia' avuto PER ISCRITTO tale
consenso) e i riferimenti alla legge sulla privacy.
Il gruppo adatto mi sembra it.news.net-abuse .
Leonardo (uno di quei bastardi che per lavoro sabotano i programmi per
la verifica bulk di centinaia o migliaia di indirizzi)
Con Joomla e il modulo Community Builder "teoricamente" se po ff�:
Dall'help dell'opzione "verifica ajax e-mail durante la registrazione
degli utenti":
"ATTENZIONE: il tuo sistema PHP non ha la funzione "getmxrr()" istallata
e attivata. Poich� � una funzionalit� solo per Linux, questo � normale
sui server Windows, quindi email DNS e SMTP checking non saranno
disponibili, a meno che questa sia attivata.
--- Verifica se una email � valida durante l�iscrizione, controllando il
formato e-mail esatto, l�esistenza degli MX DNS records, e la
disponibilit� ad accettare le email in arrivo da questo indirizzo da
parte del SMTP. Puoi anche verificare che l�email non sia gi� stata
registrata. ATTENZIONE: questo controllo-email-gi�-registrata potrebbe
sollevare PROBLEMI DI PRIVATEZZA sul tuo sito web e/o nel tuo paese,
poich� dalla pagina di iscrizione, chiunque potrebbe controllare se un
indirizzo � iscritto! Per favore utilizzalo solo dopo esserti assicurato
che non v�oli la normativa di legge. Per il controllo SMTP, il tuo
server deve avere un indirizzo IP fisso, l�indirizzo email del sito deve
essere valido e questo server deve essere elencato fra i mittenti
autorizzati (SPF record) per funzionare correttamente con molti
indirizzi email. Sei avvisato che sebbene questa funzionalit� sia
protetta, in alcune circostanze potrebbe essere abusata. Questa �
sperimentale, non ancora ottimizzata per grandi siti: prova prima!"
--
Traveller, not tourist!
www.inter-rail.it
> Il 12/05/2010 14.11, MacMax ha scritto:
> > Sto cercando in rete una classe o uno script per verificare se un
> > indirizzo email � esistente o meno, ma non ho trovato nulla.
> > Non so se ho sbagliato con le keywords, sta di fatto che trovo solo
> > materiale riguardante la correttezza dell'indirizzo, non la sua
> > effettiva esistenza.
> >
>
> Con Joomla e il modulo Community Builder "teoricamente" se po ff�:
>
> Dall'help dell'opzione "verifica ajax e-mail durante la registrazione
> degli utenti":
>
> ATTENZIONE: questo controllo-email-gi�-registrata potrebbe
> sollevare PROBLEMI DI PRIVATEZZA sul tuo sito web e/o nel tuo paese,
> poich� dalla pagina di iscrizione, chiunque potrebbe controllare se un
> indirizzo � iscritto! Per favore utilizzalo solo dopo esserti assicurato
> che non v�oli la normativa di legge.
Grazie,
Per quello che vorrei fare non credo che sia un problema perch�, come
dicev nel mio post iniziale, lo userei solo una-tantum per verificare
una lista di email di una newsletter.
Max
Grazie, molto interessante!
Per caso hai avuto occasione di testarlo?
Non ho guardato a fondo il codice ma credi che sia possibile inserirlo
all'interno di un ciclo oppure deve essere usato manualmente per ogni
indirizzo?
Max
Allora, ho testato questo script confrontando dei risultati a campione
con le email che sono state rifiutate.
Direi che la sua affidabilit� per ora � del 100%, non so se continuando
con i test possano esserci delle incongruenze, ma direi che di pi� non
si pu� chiedere.
Che dire... grazie!
Max
> Il gruppo adatto mi sembra it.news.net-abuse .
Tanti auguri. ;)
ciao, f.
non funziona in quanto anche se previsto dalle RFC e' possibile sapere
se c'e' una mail C/O un provider, solo che x evitare spam di massa
viene disattivato
> Non so se ho sbagliato con le keywords, sta di fatto che trovo solo
> materiale riguardante la correttezza dell'indirizzo, non la sua
> effettiva esistenza.
gli mandi una mail e speri che risponda (clikki su un link che termina
la registratione o confermi la mail
>
> Conoscete qualcosa?
> Grazie
phpclasses
anzi se e' vecchia gli mandi un messaggio del tipo:
lei _pinco pallino_ e' ancora interessato a ricevere la NS newsletter
clikki QUI (grande) per vedere la novita da noi proposte o le news
qui per essere cancellato.
- chi non ha risposto lo segni come da ricontrollare
- chi vuole essere cancellato lo cancelli
dopo 20 gg ricontrolli e termini
> Non � vero, le seguenti condizioni possono essere verificate in tempo
> reale:
>
> * esistenza del dominio
> * esistenza del MX
Queste ok, se il dominio non ha problemi di dns al momento della verifica.
> * se il MX principale � contattabile, verifica dell'esistenza
> dell'utente
Questa invece � molto improbabile, tra filtri antispam, greylisting e
chi pi� ne ha pi� ne metta.
Rischi addirittura che se il server web � in qualche blacklist, ma non
lo � il suo relay, lo script php possa mandare email ma si convinca
che non esiste nessun utente di cui vuol verificare l'esistenza.
Se ad esempio non sei un smtp gi� conosciuto, al primo tentativo
il mio server smtp ti risponde con "421 temporary envelope failure".
Che fai, lo consideri un errore?
--
ValeRyo
XT600 "Katoki Pajama" - http://www.slimmit.com/go.asp?7Y9
GamerTag: http://card.mygamercard.net/IT/nxe/ValeRyo76.png
Ciao, potresti dirmi come dovrei fare per testarlo anche io? thnx!
> Ciao, potresti dirmi come dovrei fare per testarlo anche io? thnx!
Lo script è piuttosto semplice, prova ad analizzarlo e vedrai che
necessita solo di un parametro; l'email.
Nella pagine con l'elenco degli iscritti ho inserito un link che apre un
popup passando l'email come GET.
In questa finestra c'è una funzione che prende il valore di GET, lo
passa allo script il quale restituisce tutti i dati necessari.
Questa operazione può prendere alcuni secondi, è per questo motivo che
non puoi farlo in automatico passando tutte le email tramite un ciclo,
deve proprio essere fatta a mano, verificando gli indirizzi uno ad uno.
Max
--
http://www.maxori.it
L'Arte è la capacità di fare cose di nessun valore