Ich versuche, eine SQL-Abfrage in eine vorbereitete Anweisung umschreiben. Diese Abfrage funktioniert gut, und mir die korrekte Ausgabe zu geben:binden vorbereitete Ergebnis nicht zurück Ausgabe
<?php
$sql = "SELECT * FROM stores ORDER BY RAND () LIMIT 3";
$res = $mysqli->query($sql);
//print($res);
if ($res->num_rows > 0) {
// output data of each row
while($row = $res->fetch_assoc()) {
echo "id: " . $row["id"]. "<br>" .
"Headline: " . $row["head"]. "<br>".
"Description: " . $row["desc"]. "<br>";
}
} else {
echo "0 results";
}
?>
Ich habe versucht, den obigen Code, um den Code unten neu zu schreiben, aber ich bin keine Ausgabe zu bekommen. Gibt es etwas, was ich total falsch mache?
-Code aktualisiert
<?php include 'dbconnection.php' ?>
<?php
error_reporting(E_ALL); ini_set('display_errors', 1);
if (mysqli_connect_errno()) { echo "Error: no connexion allowed : " . mysqli_connect_error($mysqli); }
$query = " SELECT id, headline, description FROM stores WHERE id=? AND headline=? AND description=? ";
$stmt = $mysqli->prepare($query);
$stmt->bind_param("iss",$id, $head, $desc); /* make sure that $id, $head, $desc are defined and that $id deserves a 'd' an not a 'i' */
$results = $stmt->execute();
$stmt->bind_result($id, $head, $desc); /* make sure you use all cols as you used SELECT (*) */
$stmt->store_result();
if ($stmt->num_rows > 0) {
while($stmt->fetch()){
echo"[ $id -> $head -> $desc ]<br />";
}
}
else
{ echo"[ no data ]"; }
?>
benutzen Sie bitte 'error_reporting (E_ALL); ini_set ('display_errors', 1); 'oben auf Ihren Seiten und lassen Sie uns wissen, wenn ein Fehler geworfen wird. Stellen Sie dann sicher, dass '$ id, $ head, $ desc 'definiert sind und dass $ id ein' d 'verdient. Schließen Sie schließlich die Vorbereitung mit ')' und 'print_r ($ result);' – OldPadawan
Hallo. Ich habe die 'error_reporting (E_ALL) hinzugefügt; ini_set ('display_errors', 1); '. Ich habe meine Frage mit dem Fehler aktualisiert, den ich bekomme. – Mimi
'$ result-> fetch_object' was ist mit' $ stmt-> execute(); $ stmt-> bind_result ($ col1, $ col2, ... und alle benötigten Spalten); $ stmt-> store_result(); if ($ stmt-> num_rows> 0) {while ($ stmt-> fetch()) {/ * weiterlesen * /} ' – OldPadawan