Überprüfung der Feldeingabe
Mike
- perl
0 Fonk0 Struppi0 elcappuccino
Hi, wie kann ich überprüfen ob ein User in ein Feld genau folgendes eingegeben hat: domain.de ? Also keine Lehrzeichen und dann ein Punkt z.B.!
Mike
Hi,
ich würd's einfach mit'nem JavaScript, dass onClick ausgeführt wird, machen:
<SCRIPT LANGUAGE='JavaScript'>
function checkEingabe() {
if (document.forms[0].elements[0].value == "domain.de")
document.forms[0].submit();
else
alert("Falsche Eingabe");
}
</SCRIPT>
Wenn du einfach nur überprüfen willst, dass das Feld nicht leer ist benutze ich immer folgende Funktion:
<SCRIPT LANGUAGE='JavaScript'>
function checkFields() {
check = document.forms[0].elements[0].value.replace(/ /g,"");
if (check == "")
{
alert("Nichts eingegeben!");
}
else
document.forms[0].submit();
}
</SCRIPT>
Hoffe das hilft irgendwie,
Gruß
Frank
Hi, wie kann ich überprüfen ob ein User in ein Feld genau folgendes eingegeben hat: domain.de ? Also keine Lehrzeichen und dann ein Punkt z.B.!
if(CGI::param('feldname') eq 'domain.de')
{
# ok
}
else
{
# falsch
}
Struppi.
Hi, wie kann ich überprüfen ob ein User in ein Feld genau folgendes eingegeben hat: domain.de ? Also keine Lehrzeichen und dann ein Punkt z.B.!
Mike
Ich nehme an, es geht darum, korrekte Daten zu erhalten
da hilft die Vorgeschlagene JavaScript Lösung nichts, weil Ich ja BrowserSeitig Javascript ganz einfach deaktivieren kann
Statt ein perlmodul einzubinden, wie vorgeschlagen, geht auch eine einfach RegExpr Bedingung.
domain.de
besteht aus folgenden Zeichenklassen:
^vom Anfang
\w+ (ein Buchstabenkette)
. der Punkt
\w+ für die Topleveldomainkennung
$ bis zum Ende
If($string =~ /^\w+?.\w+$/){mach etwas}
Der Punkt muss maskiert werden . weil ein . sonst für irgendein Zeichen (also auch für ein Leerzeichen) gilt
erlaubt folgende gültige Strings:
"wort.wort"
"ein_wort.ein_wort"
"EIN_WORT.EiNwOrt"
und wenn man die Topleveldomain noch eingrenzen will
If($string =~ /^\w+?.\w{2,3}$/){mach etwas}
erlaubt nur noch Buchstabenketten aus 2 oder 3 Zeichen nach dem Punkt.
??? Gibt es Topleveldomains mit mehr als 3 Zeichen???
Bleibt noch das Problem
meine-domain.com
If($string =~ /[1]+?.\w+$/){mach etwas}
\w- ↩︎