You may also want to consider using the Email::Valid module. http://search.cpan.org/author/MAURICE/Email-Valid-0.14/Valid.pm
http://danconia.org Randal L. Schwartz wrote: >>>>>>"Octavian" == Octavian Rasnita <[EMAIL PROTECTED]> writes: >>>>> > > Octavian> I've tried to verify if an email address exists using the > Octavian> Net::SMTP module but the result is always 1, doesn't matter > Octavian> if the address exists or not. > > Right. Get used to it. Every gateway machine will have to say "yes". > (Such as "stonehenge.com"'s mail handler.) And most other machines > are now saying "yes" to every "verify" (or "no", or "get lost") > because of spammers. Sick, isn't it? > > This is a FAQ, by the way. > > $ perldoc -tq "valid mail" > Found in /usr/libdata/perl5/pod/perlfaq9.pod > How do I check a valid mail address? > You can't, at least, not in real time. Bummer, eh? > > Without sending mail to the address and seeing whether there's a > human on the other hand to answer you, you cannot determine > whether a mail address is valid. Even if you apply the mail > header standard, you can have problems, because there are > deliverable addresses that aren't RFC-822 (the mail header > standard) compliant, and addresses that aren't deliverable which > are compliant. > > Many are tempted to try to eliminate many frequently-invalid > mail addresses with a simple regex, such as > "/^[\w.-]+\@(?:[\w-]+\.)+\w+$/". It's a very bad idea. However, > this also throws out many valid ones, and says nothing about > potential deliverability, so it is not suggested. Instead, see > http://www.perl.com/CPAN/authors/Tom_Christiansen/scripts/ckaddr > .gz, which actually checks against the full RFC spec (except for > nested comments), looks for addresses you may not wish to accept > mail to (say, Bill Clinton or your postmaster), and then makes > sure that the hostname given can be looked up in the DNS MX > records. It's not fast, but it works for what it tries to do. > > Our best advice for verifying a person's mail address is to have > them enter their address twice, just as you normally do to > change a password. This usually weeds out typos. If both > versions match, send mail to that address with a personal > message that looks somewhat like: > > Dear [EMAIL PROTECTED], > > Please confirm the mail address you gave us Wed May 6 09:38:41 > MDT 1998 by replying to this message. Include the string > "Rumpelstiltskin" in that reply, but spelled in reverse; that is, > start with "Nik...". Once this is done, your confirmed address will > be entered into our records. > > If you get the message back and they've followed your > directions, you can be reasonably assured that it's real. > > A related strategy that's less open to forgery is to give them a > PIN (personal ID number). Record the address and PIN (best that > it be a random one) for later processing. In the mail you send, > ask them to include the PIN in their reply. But if it bounces, > or the message is included via a ``vacation'' script, it'll be > there anyway. So it's best to ask them to mail back a slight > alteration of the PIN, such as with the characters reversed, one > added or subtracted to each digit, etc. > > > > -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]