Login Abfrage des Usernames NICHT case sensitive

CrushLog

Erfahrenes Mitglied
Hallo,

ich würde gern mein Login Script so modifizieren, dass es den Usernamen, der eingegeben wird nicht als case sensitive behandelt, spriche wenn User "Hugo" sich so registriert hat, soll er sich auch als "hugo" oder "huGO" anmelden können.

Ein kleiner Auszug meines Login Scripts zum besseren Verständnis:

PHP:
...

	$pws = mysql_query("SELECT * FROM $l_users");
	while($values=mysql_fetch_array($pws, $servercon)) {
		$loginvalues[$values['nick']] = base64_decode($values['password']);
	}
	if($pass == $loginvalues[$auth]) {
...

Danke im Voraus!
 
Sag mal, speicherst du Passwörter im Klartext in der DB?
Also ich mach das sonst anders:
PHP:
<?php
$query = mysql_query('SELECT id FROM user WHERE UPPER(username)="'.$username.'" AND passwort="'.$md5_passwort.'";');
$row = mysql_fetch_array($query);
if(empty($row[0])) {
    // kein Access
} else {
    // header mit SID
}
?>
 
Zuletzt bearbeitet:
niroxx hat gesagt.:
@ Jörg :suchen:
ich sehe was von ner decodierung der passwörter ....
Somit ist daraus zu schließen dass diese nicht im klartext da stehen.

Base64 mag auf den ersten Blick vielleicht nicht wie schönes, "normales" Klartext aussehen, es ist aber sicher nicht unleserlich und verschlüsselt.
Base64 - Wikipedia

@ CrushLog
Wie schon erwähnt wandel beim Vergleichen die Zeichenketten nur in Klein- bzw. Großbuchstaben um.
 
niroxx hat gesagt.:
Das ist mir klar, es ist natürlich besser es mit md5 zu verschlüsseln ;),
dennoch stehen die Passwörter nicht im reinen "KLARTEXT" da.

Bei der Übertragung dann aber egal ob Base64 oder normaler Klartext, lesen lasst sich beides ohne Aufwand. Ausserdem klang es im Kontext (Dein Beitrag + der von Jörg) so, als würdest du es mit ner Art von Verschlüsselung gleichsetzen, was ziemlich schlimm ist. Vorallem wenn es jemand glaubt und dann so benutzt.
 
niroxx hat gesagt.:
Diese "Freundschaftstests" benutze diese Art von veränderung des Textes, als Verschlüssselung.
Dort wird die E-Mail-Adressen einfach durch diese Methode fuer "normal-Internetnutzer" unleserlich gemacht !

Weiss grad nicht welche Tests du meinst, aber dort wird die Base64-Kodierung sicher nicht benutzt um Daten auf diese Weise sicher zu speichern.
Wollte nur klarstellen das Base64 keine Verschlüsselung ist, und niemanden hindert vertrauliche Daten zu lesen.
Die E-Mail Adresse ist ja zum Beispiel kein Passwort das niemand ausser der Besitzer kennen sollte. Und wenn bei diesen Tests die E-Mail Adresse in dieser Form irgendwo verwendet wird gehts vielleicht nur darum das manche Zeichen die in einer E-Mail vorkommen könnten das System nicht behindern oder dergleichen.
 
Zurück