So habe ich eine sehr einfache Funktion, die gegen eine MySQL-Datenbank von Benutzern mit einigen anderen Anmeldeinformationen läuft. Ich habe mehrere andere Funktionen geschrieben, die ähnliche Abfragen mit dieser Arbeit wie erwartet ausführen. Allerdings bekomme ich jedes Mal, wenn ich eine Abfrage für meine Datenbank abrichte, null Ergebnis. Ich habe die Abfrage selbst genommen und direkt dagegen ausgeführt (phpmyadmin) und konnte die gewünschten Ergebnisse abrufen.Warum bekomme ich null Ergebnisse?
function getName($user){
$con = mysqli_connect('localhost','*****','*****','*****');
if(mysqli_connect_error()){
echo 'Failed to Connect: '. mysqli_connect_error();
die();
}
$stmt = $con->prepare('SELECT firstName,lastName FROM users WHERE user=? LIMIT 1');
$stmt->bind_param('s',$user);
$stmt->execute();
$stmt -> bind_result($fname,$lname);
$stmt->fetch();
$lArr = str_split($lname);
$canName = $fname . ' ' . $lArr[0].'.';
return $canName;
}
Ich habe mit und ohne Limit nur für den Fall versucht. var_dump zeigt immer null an. Weiß jemand, warum das passieren würde?
Um die offensichtliche zu fragen, haben Sie versucht, die rohe Abfrage für Ihre MySQL-Instanz ausgeführt wird, und erhalten Sie alle Datensätze zurück? –
Ja, ich habe und ja ich bekomme die Ergebnisse, nach denen ich suche. – Hans
Sie haben vergessen, '-> fetch()' irgendwelche Ergebnisse aus der Ergebnismenge, nur die Bindung an Variablen ist nicht genug – RiggsFolly