Groß- und Kleinschreibung in MySQL-Tabellen
Hendrik
- php
Hey Leute!
Ich habe ein Sessionbasiertes Loginsystem. Ich lese die vielen User aus einer Tabelle aus:
$name = $_POST['name'];
$kennwort = $_POST['kennwort'];
if (!empty($name) && !empty($kennwort)) {
$query = "SELECT name, kennwort FROM users WHERE name = '$name'";
$sql = mysql_query($query)
or die(mysql_error());
if (mysql_num_rows($sql) == 1) {
$ds = mysql_fetch_object($sql);
if ($ds->kennwort == $kennwort) $_SESSION['angemeldet'] = true;
}
} else $_SESSION['angemeldet'] = false;
Nun habe ich aber das Problem, dass der Username auch genommen wird, wenn man statt z.B. admin AdMIn eingibt.
Da könnte man sich ja denken: "Ist doch nicht sonderlich schlimm!"
Ist es aber doch, da ich später die Session-Namen auslese.
Jetzt bräuchte ich eine Funktion, die nur wirklich die korrekte Zeichenkette annimmt!
Hendrik
echo $begrüßung;
Jetzt bräuchte ich eine Funktion, die nur wirklich die korrekte Zeichenkette annimmt!
Du suchst eine Möglichkeit, binär zu vergleichen.
Und wenn du nichts dagegen hast, beanstande ich mal ein paar Sachen in deinem Script.
$name = $_POST['name'];
$kennwort = $_POST['kennwort'];
Das Umkopieren ist überflüssig. Du kannst genausogut mit $_POST['name'] arbeiten.
if (!empty($name) && !empty($kennwort)) {
$query = "SELECT name, kennwort FROM users WHERE name = '$name'";
Was ist, wenn jemand als Name O'Brian angibt? Wenn du auf die Magic Quotes vertraust, passiert nicht viel. Ansonsten gibt es im Gutfall eine Fehlermeldung, im Schlechtfall unberechtigten Zugriff.
$sql = mysql_query($query)
or die(mysql_error());
Script-Tod bei Fehlern war noch nie eine benutzerfreundliche Variante.
echo "$verabschiedung $name";
zunächst hat dein Script ein SQL-Injection Problem
http://de.wikipedia.org/wiki/SQL_Injection
Sonst kannst du mit BINARY Groß und kleinschreibung beachten. also alles in Allem:
$query = "SELECT name, kennwort FROM users WHERE BINARY name = '".mysql_real_escape_string($name)."'";
MfG
Hey!
Vielen Dank! Ich liebe es, wenn andere mir meine Arbeit abnehmen...
Script-Posten finde ich es überhaupt nicht schlimm, wenn Leute ganze Scripte posten. Falls man dann irgentwann damit Probleme hat, kann man sich ja noch mal näher mit dem Thema befassen...
Hendrik