Bestimmte Benutzernamen nicht zulassen (German / Deutsch)
Hallo
Warum wird
$name
ein Leerzeichen vorangestellt?
Das Leerreichen stelle ich bei Stringtests immer voran, weil als Ergebnis auch die Position 0 (false
) geliefert werden kann. kann man sich schenken wenn man mitif (xxx) === trueprüft.
Ja, mit typsicherer Prüfung kann man sich das Leerzeichen schenken, zumal es ja nach der Prüfung wieder weg muss.
Was machst du, wenn mehrere Namen gesperrt werden sollen?
if(stristr($testname, 'xxxx1') or stristr($testname, 'xxxx2') or stristr($testname, 'xxxx3'))Wenn da viele Namen getestet werden sollten, müsste man die Namen in ein array schreiben und in einer Schleife prüfen.
Wenn ich einen Namen gegen eine Liste gesperrter Namen prüfen wollte, wäre diese Liste entweder ein Array (in_array($name, $arrayBlockedNames)
), womit sich die Schleife erübrigte, oder ich würde das mit einer Abfrage gegen eine Liste in der DB erledigen (SELECT COUNT(*) AS gesperrt FROM tblBlah WHERE namen = 'Name'
). Kommt als Ergebnis gesperrt = 0
zurück, ist alles i.O., ist das Ergebnis gesperrt > 0
(sollte, wenn keine Doppelungen da sind, 1
sein), ist der Name gesperrt.
Tschö, Auge
--
Trenne niemals Müll, denn er hat nur eine Silbe!