MySQLi spinnt?
Lupinius
- php
0 Frank (no reg)1 DiBo330 Lupinius
Salve
Ich probiere zurzeit spaßeshalber ein kleines Loginsystem in PHP zu schreiben. Jedoch hänge ich beim Login schon fest. Der Code, der den aktuellen User ermitteln soll sagt immer, dass gerade kein User eingeloggt ist. Ich habe das ganze so weit vereinfacht bis ich selbst den Usernamen und das verschlüsselte Passwort statisch in den Query eingebunden habe. Bei der Ausführung genau diesem Querys wird ein Nutzer zurückgegeben. Bei dem folgenden PHP-Codes kommt allerding 0 zurück. Ich habe keine Ahnung wo der Fehler liegen könnte, kann mir wer helfen?
$sql = "SELECT ID, name, email, registration_date, description
FROM users
WHERE name = 'Lupinius' AND pass = 'c082cf167ff20dc63841fa7d20801a2c'";
$db = getDataBase();
$stmt = $db->prepare($sql);
$stmt->execute();
echo $stmt->num_rows();
Hallo,
Bei dem folgenden PHP-Codes kommt allerding 0 zurück. Ich habe keine Ahnung wo der Fehler liegen könnte, kann mir wer helfen?
$sql = "SELECT ID, name, email, registration_date, description
FROM users
WHERE name = 'Lupinius'
AND pass = 'c082cf167ff20dc63841fa7d20801a2c'";
$db = getDataBase();
$stmt = $db->prepare($sql);
$stmt->execute();
echo $stmt->num_rows();
Das wird wohl einfach daran liegen, dass es keinen Datensatz hat, welcher beide Bedingungen erfüllt. Es kann durchaus sein, dass es einen Datensatz gibt, welcher die Bedingung
> name = 'Lupinius'
erfüllt. Steht denn der Wert
> 'c082cf167ff20dc63841fa7d20801a2c'
auch so im Feld (Spalte ... was auch immer) "pass" drin? Das sieht mir irgendwie nach Hashwert aus.
GutNacht!
Frank
$stmt->execute();
echo $stmt->num_rows();
Leider geht das Handbuch nur ungenügend hierauf ein und du siehst die Lösung nur in den Beispielen.
~~~php
$stmt->execute();
$stmt->store_result(); # <--- das fehlt noch.
echo $stmt->num_rows();
Salve
Vielen Dank, das hat das Problem gelöst.