Hi,
if(preg_match("#[^-a-zA-ZüäöÄÖÜéÉèß\s]#",$name)){$_SESSION['name'] = "falsche Eingabe";}else{$_SESSION['name'] = $name;}}
Wenn ich in das Formular Müller als Name eingebe, wird das als falsche Eingabe gewertet.
In welcher Zeichenkodierung liegen deine Daten und dein Script vor?
Sofern du UTF-8 verwendet - damit kann PHP noch (immer) nicht richtig umgehen.
Es betrachtet ein ü nicht als ein Zeichen - sondern die beiden Bytes, die es in UTF-8 repräsentieren, als einzelne Zeichen.
Für reguläre Ausdrücke bietet PHP aber den Modifier u an, mit dem du dafür sorgen kannst, dass das Suchmuster "korrekt" als UTF-8 behandelt wird.
MfG ChrisB
--
“Whoever best describes the problem is the person most likely to solve the problem.” [Dan Roam]
“Whoever best describes the problem is the person most likely to solve the problem.” [Dan Roam]