Seite 1 von 1

Case Sensitive Formulareingaben

Verfasst: 05.07.2003 14:33
von Alderan
Hallo!

Ich habe ein kleines Problem mit einer Passwortabfrage unter PHP. Ich habe eine Mysql - Datenbank und die Eingaben aus einem Html Formular

Als erstes verbinde ich mit der Datenbank und wähle den Datensatz des angegebenen Usernamens an:

Code: Alles auswählen

mysql_connect($sqlhost,$sqluser,$sqlpass);
mysql_select_db($dbase);
$sql=("select * from db WHERE name='$HTTP_POST_VARS[username]");
$result=mysql_query($sql);
IF(@$zeile=mysql_fetch_array($result)){;}
else{echo"$text Ein Fehler ist aufgetreten ($_SERVER[SCRIPT_FILENAME])!!$texte";exit;};
Dann vergleiche ich die Passwörter:

Code: Alles auswählen

IF($HTTP_POST_VARS!=$zeile[pass]) die("$text dein Passwort ist Fehlerhaft $texte");
Das funktioniert alles fast Fehlerfrei bis darauf, dass der Username nicht Case Sensitiv behandelt wird :evil:!! In einem Späteren Skript muss ich dann den Eingegebenen Usernamen mit dem Aus der Tabelle vergleichen, das mache ich mit PHP, doch dann wird er wieder Case Sensitiv behandelt und ich kann nicht mehr Fehlerfrei vergleichen!!!!! Wie kann ich erzwingen das mysql diesen Namen Case Sensitiv behandelt??? Oder kann ich PHP zwingen ihn nicht Case Sensitiv zu bahandeln?? :o

Ich bin absolut ratlos

Verfasst: 05.07.2003 22:57
von King Crusty
Mit strcasecmp kannst du 2 Zeichenketten vergleichen, dabei wird nicht unterschieden ob groß oder klein geschrieben.


Eine andere Möglichkeit wäre deine beiden Vergleichsvariablen jeweils
umzuwandeln und dann erst zu vergleichen...

strtolower() - Wandelt eine Zeichenkette in Kleinbuchstaben um
strtoupper() - Wandelt eine Zeichenkette in Großbuchstaben um