string nach @ Zeichen durchsuchen
Andy
- php
Hallo,
ich bekomme den Wert eines Input Feldes auf eine Seite und möchte
dort überprüfen ob dieser Wert ein @ enthält, damit ich weiß ob es
sich um eine e-mail adresse handelt oder nicht.
weis jemand eine möglichkeit dies zu realisieren?
Danke!
Gruß, Andy
Hallo,
weis jemand eine möglichkeit dies zu realisieren?
if ($email != "" AND !preg_match("/[1]+@.+.\D{2,5}$/", $email)) {
$errors[] = "die E-Mail-Adresse sieht nicht richtig aus";
}
Ich habe es mir irgendwann so von irgendwo angeeignet und es funktioniert bei mir, vielleicht hilft es dir.
Grüße
Jeena Paradies
^@ ↩︎
Hi,
if ($email != "" AND !preg_match("/[1]+@.+.\D{2,5}$/", $email)) {
$errors[] = "die E-Mail-Adresse sieht nicht richtig aus";
Das passiert bei Verwendung dieses Ausdrucks aber auch bei korrekten Mail-Adressen. Es gibt mindestens eine TLD mit mehr als 5 Zeichen.
cu,
Andreas
^@ ↩︎
Hallo,
weis jemand eine möglichkeit dies zu realisieren?
if ($email != "" AND !preg_match("/[1]+@.+.\D{2,5}$/", $email)) {
$errors[] = "die E-Mail-Adresse sieht nicht richtig aus";
}Ich habe es mir irgendwann so von irgendwo angeeignet und es funktioniert bei mir, vielleicht hilft es dir.
ich hab mir irgendwann mal das zusammengeschustert ;-)
_EMAILDOPPELT = damit wird überprüft, ob die eMail schon in der DB eingetragen ist
_EMAILCHECK = damit wird geprüft, ob der Syntax richtig ist
_EMAILPING = damit wird geprüft, ob die Domain ein Ping zurück gibt
die Werte kann ich in meiner Config Datei entweder auf true oder false setzen..
function _emailCheck($eMail){
global $language;
$check[0] = false;
if(empty($eMail)){
$check[0] = true;
$check[1][] = $language['LANG_REGISTER_FEHLER_EMAIL1'];
}
else{
if (_EMAILDOPPELT){
$row = _db_select('_id', 'auth', '_email', $eMail);
if($row){
$check[0] = true;
$check[1][] = $language['LANG_REGISTER_FEHLER_EMAIL2'];
}
}
if (_EMAILCHECK){
if (!eregi('^([a-z0-9.\_-]+)@([a-zäöü0-9.-]+.[a-z]{2,})$', $eMail)){
$check[0] = true;
$check[1][] = $language['LANG_REGISTER_FEHLER_EMAIL3'];
}
}
if (_EMAILPING && !$check[0]){
require ('Net/Ping.php');
$domain = strstr($eMail, '@');
$domain = substr($domain, 1);
$ping = Net_Ping::factory();
if(!PEAR::isError($ping)){
$ping->setArgs(array('count' => 1));
$result = $ping->ping($domain);
if (isset($result->message)){
$check[0] = true;
$check[1][] = _textReplace($language['LANG_REGISTER_FEHLER_EMAIL4'], array($domain));
}
}
}
}
return $check;
}
^@ ↩︎
hi,
_EMAILPING = damit wird geprüft, ob die Domain ein Ping zurück gibt
du möchtest doch wohl nicht meine emailadresse als ungültig abtun, nur weil du meine domain zeitweise mal nicht anpingen kannst?
das könnte ja verschiedenste ursachen haben ...
daraus schlüsse über die existenz meiner mailadresse ziehen zu wollen, wäre unfug.
gruß,
wahsaga
Hi,
_EMAILPING = damit wird geprüft, ob die Domain ein Ping zurück gibt
du möchtest doch wohl nicht meine emailadresse als ungültig abtun, nur weil du meine domain zeitweise mal nicht anpingen kannst?
Ach, bei einem Support-Anfrage-Formular bei einem Provider käm das doch gut: ;-)
"Hilfe, mein Webserver www.example.org ist nicht mehr erreichbar! mailto:ich@www.example.org"
wird dann beantwortet mit:
"Wir können Ihre Anfrage nicht entgegennehmen, weil Ihr Webserver nicht erreichbar ist." ;-)
cu,
Andreas
Hallo,
_EMAILPING = damit wird geprüft, ob die Domain ein Ping zurück gibt
du möchtest doch wohl nicht meine emailadresse als ungültig abtun, nur weil du meine domain zeitweise mal nicht anpingen kannst?Ach, bei einem Support-Anfrage-Formular bei einem Provider käm das doch gut: ;-)
"Hilfe, mein Webserver www.example.org ist nicht mehr erreichbar! mailto:ich@www.example.org"
wird dann beantwortet mit:
"Wir können Ihre Anfrage nicht entgegennehmen, weil Ihr Webserver nicht erreichbar ist." ;-)
wie soll man denn auch den kleinen denn eine eMail schicken, wenn sein Server nicht erreichbar ist?
um Registrierungsinformationen zu schicken, sollte der Server schon on sein *g*
man muss das ja auch nicht aktivieren, dafür gibt es ja true/false :-P
hi,
wie soll man denn auch den kleinen denn eine eMail schicken, wenn sein Server nicht erreichbar ist?
ein server kann ja auch _temporär_ nicht erreichbar sein.
um Registrierungsinformationen zu schicken, sollte der Server schon on sein *g*
wie gesagt, wenn der server mal temporär nicht erreichbar ist, ist die mail deshalb ja nicht sofort unzustellbar.
die mail zuzustellen, wird über einen gewissen zeitraum hin mehrmals versucht - also bitte nicht aus "ping geht zum zeitpunkt xy nicht" nicht auf "mail kann nicht zugestellt werden" schließen.
gruß,
wahsaga
hi,
ich bekomme den Wert eines Input Feldes auf eine Seite und möchte
dort überprüfen ob dieser Wert ein @ enthält,
schau dir die stringfunktionen von PHP an, http://de.php.net/manual/de/ref.strings.php.
z.b. strpos().
damit ich weiß ob es
sich um eine e-mail adresse handelt oder nicht.
hurra, jetzt weißt du das blubb@jodel eine emailadresse ist.
oder doch nicht ...?
gruß,
wahsaga
Hallo Andy!
Wenn du eine eMail-Adresse validieren möchtest, so solltest du nicht nur auf das @-Zeichen prüfen.
Nähere Informationen und eine Lösungsmöglichkeit findest du im folgenden Artikel der dclp-FAQ:
15.11. Wie kann ich feststellen, ob eine Mailadresse äußerlich gültig ist?
http://www.dclp-faq.de/q/q-mail-adresse-gueltig.html