ThWboard Support-Forum (Archiv)

Ort: / Boardübersicht / Vorschläge / besseren Emailcheck!!! beim registrieren!


Seite 1 von 1

Luki schrieb am 27.08.2003 um 22:37 Uhr

Um falsche Formularangaben noch weiter ausschließen zu können, gibt es einen kleinen Trick. Die meisten Formular-Überprüfer testen nämlich nur, ob die angegebene Email-Adresse ein "@"-Zeichen enthält oder gültig mit Punkt und Domain-Endung erscheint. Es geht besser.

Sogar bei Amazon lässt sich mit "haha@schaut_fast_echt_aus.com" noch ein Kundenkonto anlegen. Das müsste nicht sein...

Ein einfache PHP-Funktion überprüft, ob das Formular-Feld "email" ein Wert enthält, dieser korrekt erscheint und ob es die Domain überhaupt gibt. Praktisch für Offline-Entwickler: Wird das Skript lokal aufgerufen, wird der Domaincheck nicht ausgeführt.

Gibt es zur angegebenen Email-Adresse, zum Beispiel office@drweb.de auch die entsprechende Domain http://drweb.de, ist das Skript gültig, ansonsten liefert es den Wert false zurück.

/* checks user input email */
function valid_email($email) {

global $REMOTE_ADDR;

if (!empty($email) AND
ereg("^([a-zA-Z0-9\.\_\-]+)@([a-zA-Z0-9\.\-]+\.[A-Za-z][A-Za-z]+)$",
$email)) {
if ($REMOTE_ADDR != "127.0.0.1") {
list($user, $host) = explode("@", $email);
if (checkdnsrr($host)) {
return $email;
} else {
return false;
}
} else {
return $email;
}
} else {
return false;
}

}



wie / wo baue ich den ein?

MrNase schrieb am 27.08.2003 um 23:39 Uhr

functions.inc.php, da ist schon eine zum testen der eMails drin. Wenn dort nicht, dann in der do_register.php :)

theDon schrieb am 27.08.2003 um 23:47 Uhr

inc/functions.php

/edit
fsck, die nase war schneller
edit/

Luki schrieb am 28.08.2003 um 15:56 Uhr

Feature sollte Standard im THWB werden

MrNase schrieb am 28.08.2003 um 16:13 Uhr

Von wem hast du die Funktion ;)

Wenn sie besser ist sollte sie wirklich standart werden :)

urlauber schrieb am 28.08.2003 um 16:33 Uhr

habe bei was änliches (allerdings nicht im Forum):

if(!$email==""){
if(!ereg("^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@([a-zA-Z0-9-]+\.)+([a-zA-Z]{2,4})$",$email)){
$error_msg.="- Bitte gib eine <b>gültige E-Mail-Adresse</b> an !<br>";
}
}


überprüft allerdings nur die korrekte Schreibweise, hab ich aus nem PHP-Lernbuch !

MrNase schrieb am 28.08.2003 um 16:38 Uhr

So ähnlich ist es auch beim ThWboard :)

theDon schrieb am 28.08.2003 um 16:45 Uhr

ich bin dafür, eine preg zu nehmen.

MrNase schrieb am 28.08.2003 um 16:56 Uhr

Schlag einen vor ;)

Luki schrieb am 28.08.2003 um 17:35 Uhr

von der DRweb website:

http://drweb.de/programmierung/php_emailcheck.shtml

seikeinfloh schrieb am 28.08.2003 um 19:50 Uhr

Funktion ist ja schon ganz nett, aber nen besseren Regulären Ausdruck gibts bei Selfhtml:

http://selfaktuell.teamone.de/tippstricks/programmiertechnik/email/index.html

chris2000 schrieb am 02.11.2003 um 19:15 Uhr

ich meine mal irgendwo gelesen zu haben, dass sich e-mail-adressen nicht mit regulären ausdrücken verifizieren lassen. ich meinte das ginge auch syntaktisch nicht. aber wie auch immer.

warum können mitglieder <imframes> in ihrem profil unter wohnort einbinden? das habe ich gerade irgendwo im profil gesehen. IMO ist das ein viel größeres sicherheitsproblem, wenn dann plötzlich javascript und anderes ausgeführt werden kann. ich habe das ganze zwar in meinem browser deaktiviert, aber trotzdem!

MrNase schrieb am 02.11.2003 um 19:24 Uhr

Ist in der 2.82 gefixt. (siehe News, ganz oben ;))

Seite 1 von 1