Formularfeldprüfung in PHP
Didi
- php
hallo alle zusammen,
habe eine eingabeprüfung in einem feld
if (eregi("[1]{3,20}$",$username)) { ////// Namenangabe richtig wenn (min 3,max 20 zeichen)
da heisst man kann nur einen namen wie franz angeben.
wie muss ich das ändern das ein vorname und nachname eingegeben weren kann. zwischen den beiden namen sollte ein oder mehrere leerzeichen erlaubt sein. beide mit min 3 und max 20 zeichen.
kann mir da jemand helfen?
Grüsse Didi
a-z0-9 ↩︎
Huhu Didi
was ist wenn jemand
Hans Joachim Müller-Schmidtbauer
oder
Donatus Wilhelm Freiherr von Koksstein
als Namen führt ;-)
Viele Grüße
lulu
wie kann man denn so heissen? ;-)
das wäre furchtbar, da hab ich garnicht dran gedacht
ein vorname muss genügen, beim nachnamen sollten doppelnamen auch erlaubt sein. stimmt.
danke
Huhu Didi
was ist wenn jemand
Hans Joachim Müller-Schmidtbauer
oder
Donatus Wilhelm Freiherr von Koksstein
als Namen führt ;-)
Viele Grüße
lulu
Moin!
das wäre furchtbar, da hab ich garnicht dran gedacht
ein vorname muss genügen, beim nachnamen sollten doppelnamen auch erlaubt sein. stimmt.
Ich hätte einen wirklich real existierenden Namen anzubieten, der folgenden Aufbau hat (ich werde ihn hier nicht veröffentlichen):
Dr. med. Xxxxxx von der Xxxxxxx-Xxxxxxxxx
12345678901234567890123456789012345678901 - 41 Zeichen.
Und du kommst nicht umhin, daß dieser Mensch 1. Doktor ist, und 2. "von der Wasweisich-Doppelname" heißt, und zu allem Überfluß nur einen Vornamen hat.
Merke also: Sobald du irgendeine Annahme machst, ist sie verkehrt.
PS: Dieser Mensch^WName muß immer dafür herhalten, ob das Adressfeld von Drucksachen noch ins Fenster des Briefumschlages paßt. :)
- Sven Rautenberg
Hallöchen!
if (eregi("[1]{3,20}$",$username)) { ////// Namenangabe richtig wenn (min 3,max 20 zeichen)
Ich würde evtl zu http://www.php.net/manual/de/function.preg-match.php, ist deutlich mächtiger, und ich weiß jetzt nicht, in wieweit das kompatibel ist! Das sähe bei mir so aus:
preg_match ( "/[2]{3,20}$/",$username)
Dann hättest Du alle Wörter, Leerzeichen, Punkte und Bindestriche. Je nach Einstellung bräuchtest Du noch aÄöÖüÜ!
Grüße
Andreas
Hallo!
if (eregia-z0-9{3,20}ZEICHEN FÜR EIN ODER BELIEBIGE LEERZEICHENa-z0-9{3,20}$",$username))
Problem dürften doch die Umlaute sein! Außerdem wenn jemadn leerzeichen, oder Punkte verwendet.
eigentlich müßte das doch gehen, evt mußt Du noch den . und - mit \ escapen, also
preg_match ( "/[1]{3,20}$/",$username)
oder nur einmal, oder Du läßt den Punkt weg, gibt nur ein paar Möglichkeiten, probier einfach!
Grüße
Andreas
\w\s.- ↩︎