php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2007

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 04.03.2007, 09:27  
Erfahrener Benutzer
 
Registriert seit: 21.12.2004
Beiträge: 311
kampfnickel
Standard Groß- und Kleinschreibung in HTML Textfeldern

Hallo zusammen,
ich hoffe mal, dass ich dies im richtigen Board poste...:

es dreht sich um die beachtung der Groß- und Kleinschreibung in HTML Textfeldern.
dies würde ich gerne auf ein Loginskript mit PHP beziehen.
oft oder immer ist es ja so, dass der benutzername beliebig geschrieben werden kann (z.B. user, User, UsEr, etc) und man sich mit dem richtigen Passwort trotzdem einloggen kann.
Nun glaube ich mal gelesen zu haben, dass die Groß- und Kleinschreibung in "password" textfeldern automatisch streng beachtet wird. nun wollte ich mal wissen, ob das auch für die "normalen" textfelder gilt, oder ob die anders gehandhabt werden.

Ich habe den Login bisher immer so gelöst, dass ich den Usernamen in der DB mit Hilfe von PHP verkleinert habe (StrToLower()) und dasselbe mit dem im textfeld eingetragenen usernamen (weil das eingetragene 1:1 auf die nächste seite übergeben wurde). Anhand der beiden kleingeschriebenen usernamen habe ich dann verglichen, ob diese übereinstimmen.

nun meine frage...: ist das sinnlos, dass ich diesen schritt mache mit dem verkleinern vor dem vergleichen oder ist es notwendig um einen Login mit einem beliebig geschriebenen usernamen zu gewährleisten?!

ich hoffe es ist einigermaßen klar, was ich möchte

MfG
__________________
Rollt nen Ball und die Ecke und ist weg!
kampfnickel ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 04.03.2007, 10:24  
Moderator
 
Benutzerbild von agrajag
 
Registriert seit: 02.10.2006
Beiträge: 3.820
PHP-Kenntnisse:
Fortgeschritten
agrajag wird schon bald berühmt werdenagrajag wird schon bald berühmt werden
Standard

Hallo kampfnickel,

Das hat nichts damit zu tun ob es sich um ein Textfeld oder ein Password-Feld handelt - übertragen wird es immer so wie es eingegeben wurde.
Vergleichst du die Strings in PHP wird die Groß/Kleinschreibung auch beachtet.

Anders sieht das ganze wieder aus wenn dein Login z.B. irgendwie über eine (MySQL-) Datenbank läuft und du dort per WHERE username ="$username" suchst. Dann hängt es davon ab welchen Typ bzw. welche Kollation die entsprechende Spalte hat. Wählst du eine mit dem Anhängsel _ci dann spielt Groß/Kleinschreibung keine Rolle (case-insensitiv).

Deine Vermutung, dass Groß/Kleinschreibung bei Passwort-Feldern immer automatisch streng beachtet wird kommt wohl daher, dass wenn du ..._ci-Spalten verwendest zwar der Username beliebig geschrieben werden kann, es beim Passwort aber keinen Unterschied macht: Vom Passwort wird (meist) nur ein (MD5) Hash gespeichert und der ist natürlich Unterschiedlich für verschiedene schreibweisen.
__________________
Today you...Tomorrow me.
agrajag ist offline  
Alt 04.03.2007, 10:30  
Erfahrener Benutzer
 
Registriert seit: 08.11.2004
Beiträge: 2.079
Der_Gerhard ist zur Zeit noch ein unbeschriebenes Blatt
Der_Gerhard eine Nachricht über ICQ schicken
Standard

Zumnächst mal:
Das hat alles überhaupt nix mit irgendwelchen Textfeldern oder Passwort-Feldern zu tun.
Die eingegebenen Daten werden immer korrekt an das Script übergeben, d.h. exakt so wie eingegeben.

Was Du dann damit anstellst, ist Deine Sache. Du kannst auf korrekte Schreibweise achten oder sie ignorieren.

Bei Passworten wird das normalerweise nicht ignoriert, weil man damit ja gerade mehr Sicherheit reinkriegt, indem die verfügbaren Zeichen wesentlich erweitert werden.


Dann zu Deiner Frage:
Wenn Du in PHP Strings vergleichst, sind Groß- und Kleinbuchstaben selbstverständlich unterschiedlich.
'Hallo' != 'hallo'

Um das zu vermeiden kannst Du stricmp() verwenden. Da wird das ignoriert.

Wenn Du den Vergleich im MySQL machen lässt, wird Groß- und Kleinschreibung default-mäßig erstmal ignoriert.

EDIT:
Hmpf. Man sollte sich nicht unterm Tippen einen Kaffee holen. Da wird man gnadenlos überholt ^^
__________________
**********************************
Nein, ich bin nicht die Signatur.
Ich putze hier nur.
**********************************
Der_Gerhard ist offline  
Alt 04.03.2007, 15:20  
Erfahrener Benutzer
 
Registriert seit: 21.12.2004
Beiträge: 311
kampfnickel
Standard

ok, danke

also bleib ich weiterhin dabei, beide strings erst in kleinbuchstaben umzuwandeln

@Der_Gerhard:
laut php.net gibts keine funktion stricmp() - zumindest leitet die seite gleich weiter auf strcmp(). und diese vergleicht beide strings binär und da wird zwischen groß- und kleinschreibung unterschieden?!
__________________
Rollt nen Ball und die Ecke und ist weg!
kampfnickel ist offline  
Alt 04.03.2007, 15:36  
Erfahrener Benutzer
 
Registriert seit: 08.11.2004
Beiträge: 2.079
Der_Gerhard ist zur Zeit noch ein unbeschriebenes Blatt
Der_Gerhard eine Nachricht über ICQ schicken
Standard

Hmpf. Hast Recht.
Das Ding heißt strcasecmp(), wie man da ja schon in der "siehe auch" Liste sehen kann.
__________________
**********************************
Nein, ich bin nicht die Signatur.
Ich putze hier nur.
**********************************
Der_Gerhard ist offline  
Alt 04.03.2007, 15:37  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard

Er meint strcasecmp()

Für MySQL gibt es BINARY:
http://dev.mysql.com/doc/refman/5.1/...binary-op.html
Zergling-new ist offline  
Alt 04.03.2007, 16:41  
Erfahrener Benutzer
 
Registriert seit: 13.08.2007
Beiträge: 1.976
KingCrunch befindet sich auf einem aufstrebenden Ast
KingCrunch eine Nachricht über ICQ schicken KingCrunch eine Nachricht über AIM schicken KingCrunch eine Nachricht über MSN schicken KingCrunch eine Nachricht über Yahoo! schicken
Standard

Naja, für Denkfaule gibts noch die Variante und dann des Vergleichs
PHP-Code:
strtolower($string1) == strtolower($string2
__________________
Nicht jeder Fehler ist ein Bug.
KingCrunch ist offline  
Alt 04.03.2007, 16:55  
Erfahrener Benutzer
 
Registriert seit: 21.12.2004
Beiträge: 311
kampfnickel
Standard

jo, das war ja meine bisherige variante, welche sich bisher auch als äußerst nützlich erwiesen hat
__________________
Rollt nen Ball und die Ecke und ist weg!
kampfnickel ist offline  
Alt 04.03.2007, 17:01  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard

Wozu das ganze?
Zergling-new ist offline  
Alt 04.03.2007, 17:49  
Erfahrener Benutzer
 
Registriert seit: 13.08.2007
Beiträge: 1.976
KingCrunch befindet sich auf einem aufstrebenden Ast
KingCrunch eine Nachricht über ICQ schicken KingCrunch eine Nachricht über AIM schicken KingCrunch eine Nachricht über MSN schicken KingCrunch eine Nachricht über Yahoo! schicken
Standard

Also, nich im Detail durchgelesen, aber ein Anwendungsgebiet (was mich auch interessiert ) wäre, dass man vermeidet, dass sich irgendjemand den Namen "ADministrator" anlegt, obwohls "Administrator" schon gibt. Wäre quasi Amtanmaßung, obwohl derjenige dann ja trotzdem (bei sauberer Programmierung) nich die Rechte besitzen sollte.
__________________
Nicht jeder Fehler ist ein Bug.
KingCrunch ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] HTML Mail mit Lücken mitten in den Worten, wie kommt das? DeeFour PHP-Fortgeschrittene 2 29.05.2008 15:47
einzelne Teile aus HTML includieren mibmib PHP Tipps 2008 4 03.04.2008 11:55
PHP: HTML E-Mail versenden kampfnickel PHP Tipps 2008 6 22.08.2007 13:32
Variable und komplette HTML Datei chrisonline PHP Tipps 2007 3 24.05.2007 15:30
PHP und HTML sinnvoll verbinden Fatal Error PHP Tipps 2007 10 07.01.2007 15:12
<if> </if> in einer HTML Datei fuer Templ PHP-Fortgeschrittene 6 03.11.2005 12:05
Kontaktformular, welches auf neue html Seite führt PHP Tipps 2005-2 4 20.07.2005 11:21
[Erledigt] ereg_replace(); - groß und kleinschreibung? PHP-Fortgeschrittene 5 07.02.2005 14:40
HTML Tabellenzeile in Tabelle einfügen? Datenbanken 2 28.01.2005 00:28
IMAP: Bild(er) in HTML Part richtig darstellen PHP-Fortgeschrittene 1 07.10.2004 12:21
{$varname.optelement} mit preg_match aus HTML extrahieren PHP Tipps 2004 0 11.09.2004 04:13
Unterschied HTML und PHP PHP Tipps 2004 4 28.08.2004 19:02
Validitor (HTML 4.01) = Schwachsinn? Filewalker Off-Topic Diskussionen 19 03.08.2004 15:27
ausgefuehrtes php file als html speichern PHP Tipps 2004 8 28.07.2004 17:59
[Erledigt] PDF aus HTML erzeugen ? PHP-Fortgeschrittene 2 05.06.2004 02:10

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
html spielt groß kleinschreibung eine rolle, vermutung groß oder klein, textfeld php groß und kleinschreibung, automatische groß- und kleinschreibung mit php, groß und kleinschreibung in html, kleinschreibung in html, php textfeld groß, html kleinschreibung, php password groß- und kleinschreibung, der strenge glauben groß kleinschreibung

Alle Zeitangaben in WEZ +2. Es ist jetzt 18:35 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.