Avatar billede euhp Nybegynder
13. februar 2001 - 15:19 Der er 4 kommentarer og
1 løsning

CGI til email verification søges

Jeg skal bruge et program, som kan verificere email adresser.

Det er IKKE nok at den blot checker @ og . - det skal lave NSlookup, kigge på MX, logge på mailserveren og checke om modtageradressen eksisterer. Jeg har selv noget perl code, men det kræver brug af en ekstern nslookup for at virke, og jeg kender ikke Perl på højt niveau.

Det må GODT skrives i VB eller C++, men det skal kunne compiles til Windows, enten med Visual C++ eller GCC (Cygwin). Hvis du vil se min perl kode med tilhørende nslookup, så giv besked :-)

Mvh
-peter
Avatar billede thomasledet Nybegynder
13. februar 2001 - 18:58 #1
at et program \"ringer op\" til pågældende mailserver og spørger efter en konto er ikke nødvendigvis en god måde at checke om en email er korrekt... ikke alle servere er sat op til denne tjeneste og nogle servere sender måske svar tilbage i et format perl ikke lige forventer...

den bedste løsning er til stadighed et script, der sender brugeren mail, hvor denne så skal klikke et link (med noget unikt for netop denne bruger) eller copy-paste en bestemt kode (igen unik for brugeren) over på en form for webside... det er det eneste, der rigtig virker...

dog kan man forinden have lave et test for @ og . og om domænet faktisk findes... skriver brugeren så noget junk bliver denne gjort klar over, at man faktisk mener seriøst, at man ønsker en gyldig emailadresse... man kan også gøre opmærksom på HVORFOR denne email adresse er så vigtig og at man ikke har tænkt sig at sælge den eller sende en masse spam... folk holder deres mail-adresser tæt ind til kroppen... og med god grund!
Avatar billede klaus_ Nybegynder
12. marts 2001 - 14:08 #2
Jeg bruger et cpan modul der hedder Mail::CheckUser.

Den gør følgende..

* checker syntaxen..
* checker MX-record
* checker om mailkontoen finden findes på mailserveren

Hvis serveren ikke lige vil svare returnere den sand. Men det kan konfigueres.

Her er et link.

http://search.cpan.org/doc/ILYAM/Mail-CheckUser-0.92/CheckUser.pm
Avatar billede webgeniet Nybegynder
23. april 2001 - 17:42 #3
Indsæt nedenstående funktion:

sub tjekmail {

$fejl = \"\";

($email) = @_;

@maildel = split(//,$email);

@gyldigetegn = split(//,\"abcdefghijklmnopqrstuvwxzyABCDEFGHIJKLMNOPQRSTUVWXZY-_@.\");

for ($a=0; $a<length($email); $a++) {

if($maildel[$a] eq \'@\'){

$snabantal++;

$snabela = $a;

}

elsif($maildel[$a] eq \'.\'){

$punkantal++;

$punktum{$a} = \"ja\";

} else {

$gyldigt = \"nej\";

foreach $tegn (@gyldigetegn) {

if($maildel[$a] eq $tegn){

$gyldigt = \"ja\";

}

}

}

if($gyldigt eq \'nej\'){

$fejl = \"ja\";

}

}

if($fejl ne \'ja\' && $snabantal eq 1 && $punkantal >= 1 && !$punktum{0} && !$punktum{$snabela-1} && !$punktum{$snabela+1} && !$punktum{length($email)-1} && !$punktum{length($email)-2}){

} else {

$fejl = \"ja\";

}

return($fejl);

}

du kan bruge den ved at skrive:

$email = \"ko@ko.dk\";

if(tjekmail($email)){

print \"E-mail er IKKE gyldig\";

}
Avatar billede webgeniet Nybegynder
23. april 2001 - 17:43 #4
Jeg ved godt svaret ikke er fuldstændigt, men det er nok det nærmeste nogen kan komme.
Avatar billede euhp Nybegynder
07. april 2007 - 04:46 #5
Beklager meget forsinkelsen (på 6 år!!!) men havde overset denne.

Webgeniet... Du har ikke forstået min problemstilling så jeg giver pointene til klaus_ som gav mig direktioner. Nu har jeg godtnok ikke brug for det mere og fandt en bedre løsning, men pointene er stadig hans :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester