Seite 1 von 1
Benutzername "ohne Sonderzeichen" bei Registrierun
Verfasst: 22.08.2006 15:37
von Toni
Hallo zusammen,
sorry, mir ist aber zum Titel nichts besseres eingefallen.
Nun zum Problem:
Damit die Benutzernamen nicht zu wild aussehen, lasse ich nur noch folgende Sonderzeichen bei der Registrierung zu: Bindestrich, Punkt, Leerzeichen.
Leider kommt es teilweise trotzdem zu Benutzernamen wie: "Timo" und "Timo." oder "Mustermann" und "Muster-Mann". Diese werden dann sehr leicht im Forum verwechselt.
Wuerde jetzt gerne bei der Registrierung die Benutzenamen ohne Sonderzeichen vergleichen. Damit koennte ich diese aehnlichen Namen reduzieren.
Hat jemand eine Idee dazu ?
Gruss Toni
Verfasst: 22.08.2006 15:44
von gloriosa
Hallo,
auch Du solltest schon die, viel zu selten benutzte, boardeigene Funktion
[ externes Bild ] Suchen kennen um Beiträge mit der
Lösung zu finden !

Verfasst: 22.08.2006 16:15
von Toni
Hallo Gloriosa,
mag sein, dass ich mich nicht praezise genug ausgedrueckt habe, aber manchmal macht es auch Sinn den Inhalt des Beitrags wirklich zu verstehen und nicht gleich auf die boardeigene Funktion "SUCHE" zu verweisen.
Bevor ich einen Beitrag poste, beschaeftige ich mich normalerweise etliche Tage vorher mit der SUCHE.
Den verlinkten Beitrag kenne ich mittlerweile auswendig. Leider trifft der ueberhaupt nicht auf meine Anfrage zu.
Somit erhaelst du den Smilie

zurueck.
Habe bereits Sonderzeichen im Forum reduziert. Ganz abschaffen will ich sie nicht. Jetzt geht es darum z.B.
die Registrierung eines "Muster-Mann" zu verhindern, wenn es bereits einen "Mustermann" gibt oder eines "Timo.", wenn es bereits einen "Timo" gibt.
Ich weiss, hierzu sind sicherlich einige Zeilen an Code notwendig um dies zu realisieren.
Gruss Toni
Verfasst: 22.08.2006 16:21
von gloriosa
Hallo,
schon mal etwas von der Funktion
Bannen von Benutzernamen bzw. verbieten von Benutzernamen (siehe ACP --> Benutzer) gehört ?

Verfasst: 22.08.2006 16:33
von Banger
gloriosa hat geschrieben:Hallo,
schon mal etwas von der Funktion
Bannen von Benutzernamen bzw. verbieten von Benutzernamen (siehe ACP --> Benutzer) gehört ?

Wenig hilfreich. Soll er für jeden vorhandenen Benutzer alle möglichen Abweichungen bannen?
Toni hat geschrieben:Jetzt geht es darum z.B.
die Registrierung eines "Muster-Mann" zu verhindern, wenn es bereits einen "Mustermann" gibt oder eines "Timo.", wenn es bereits einen "Timo" gibt.
Hi Toni,
umfangreicheren Code kann ich Dir mangels Zeit gerade nicht nennen, aber mal so als abstrahierten Anhaltspunkt:
Code: Alles auswählen
$vergleich = preg_replace('/[^A-Za-zÄÖÜäüüß]/', '', $username);
$vergleich kannst Du dann gegen die bereits vorhandenen Usernamen testen.
Argh, mir fällt gerade ein, dass das nicht klappt, wenn bereits ein User mit Sonderzeichen im Namen in der DB steht. Ich denk nochmal drüber nach
EDIT: am performantesten wäre es, wenn Du in der Usertabelle eine weitere Spalte mit dem "bereinigten" Usernamen ablegst, gegen den Du $vergleich abgleichst.
Verfasst: 22.08.2006 16:47
von Toni
Hallo Banger,
hatte bereits an mir gezweifelt.
Jetzt bin ich aber beruhigt, dass mich jemand verstanden hat...
Du hast das Problem vollkommen verstanden.
Die Sonderzeichen aus dem neuen Benutzernamen zu extrahieren bekomme ich noch hin, aber was mache ich mit den exitierenden Benutzernamen in der DB, welche Sonderzeichen enthalten.
Hatte bereits mal damit probiert, dass ich nach jedem Zeichen ein "%" setze.
Z.B. bei Maus dann %m%a%u%s.
Dies fuehrt aber dazu, dass auch der Benutzer "Markus" darunter faellt.
EDIT: Sehe gerade, du hast deinen Beitrag editiert. Der Vorschlag hoert sich gut an. Bezweifle nur, dass ich den selbststaendig umsetzen kann.
Gruss Toni
Verfasst: 22.08.2006 17:16
von blubbin
ähm... ich mag ja nur gern einen Mod wiedersprechen, aber wo ist das Problem, bei den verbotenen Benutzernamen einfach
einzugeben? Die * funktionieren laut Beschreibung im ACP als Platzhalter, allerdings müssten bei dieser Version die Benutzernamen, die es mit " schon gibt geändert werden. Die Anderen Zeichen, die verboten werden sollten, könnte man ja aus einer Zeichentabelle etc. nehmen. ... aber egal...
Verfasst: 03.09.2006 16:52
von Kewwwin
Kann man die Sonderzeichen die wie ein Leerzeichen aussehen, allerdings kein Leerzeichen ist, sondern ein Sonderzeichen auc sperren. (Ausführung: [Alt Gr] gedrückt lassen, dann einzeln erst [0], dann [1], dann [6] und dann [0] dann alle Tasten loslassen) Wie kann man das auch untrdrücken. Kann man das auch im ACP eintippen oder sperrt er dann auch Leerzeichen?