MySQL Welche Zeichen darf man verwenden

matzseesi

Erfahrenes Mitglied
Hi Leute

Folgendes Problem
Sagen wir wir haben eine funktionierende Userumgebung.
Alles läuft über MySQL jetzt will sich jemand mit dem Usernamen /nick\ registrieren doch das haut nicht hin! anscheinend kann mysql die Zeichen "/" und "\" nicht vertragen.

Welche Zeichen (Sonderzeichen) gibt es da noch die man nicht in einem Usernamen verwenden kann sodass ich sie als bei der Registrierung rausfiltern kann!

Grüße Posseidon
 
Bevor du einen Code in die Datenbank einfügst, solltest du immer den einzufügenden String mit addslashes() bearbeiten. Dann sollten dem Namen keine Grenzen gesetzt sein!
 
dh

Sonst kann alles eingegeben werden?

sagen wir mal jemand gibt

\Patrick ein

dann kommt dass durch die addslashes() fkt so weiter \\Patrick
und wird dann auch so \Patrick in die ddb gespeichert?
wie siehts mit " bzw ' aus?
 
Nein \Patrick wird dann natürlich auch so (\\Patrick) bzw. ' (\') in die Datenbank gespeichert. Deshalb solltest du den jeweiligen String beim Auslesen auch wieder mit stripslashes bearbeiten!
 
hmm

Und dann wird jedes Zeichen sozusagen regulär für die Datenbank gemacht. Dann kann sozusagen alles eingegeben werden.
 
moment!

Ich habe nochmal einiges ausprobiert und habe herausgefunden, dass ich dir gerade einen Schwachsinn erzählt habe ;-)

Trotz addslashes() werden die Daten nämlich trotzdem ohne den hinzugefügten Slashes eingefügt! Das heißt, das stripslashes bei der Ausgabe kannst du dir schenken!

Sorry, hatte vorhin kleinen Denkfehler :rolleyes:
 
Zurück