Probleme beim ausführen einer SELECT-Abfrage in eine vorbereitete Anweisung

Ive folgte eine Reihe von verschiedenen Beispielen in Bezug auf mit einem SELECT in eine vorbereitete Anweisung, aber nichts zurückgegeben.
BEARBEITEN ich mich geändert habe meinen code ein wenig wie folgt Aussehen:

$date1 = 2012-01-01;
$date2 = 2012-01-31;
$sql_con = new mysqli('db', 'username', 'password', 'database');

if($stmt = $sql_con->prepare("SELECT eventLogID FROM Country WHERE countryCode=? AND date BETWEEN ? AND ?")){

   $stmt->bind_param("sss", $country_code, $date1,$date2); 

    $stmt->execute();

  $i=0;
  while ($stmt->fetch()){
  $stmt->bind_result($row[$i]);
  $i++;
  }

  $stmt->close();
$sql_con->close();

Nun alle gewünschten Einträge, mit Ausnahme der ersten, werden Hinzugefügt, um $row[]. Warum nicht der erste Eintrag, der Hinzugefügt wird?
Vielen Dank im Voraus!

  • Verwenden Sie * in Ihrer Abfrage, aber $Zeile in der bind_result($Zeile). bind_result sollten die Spalten enthalten, denke ich. Lesen Sie hier mehr: nl3.php.net/manual/en/mysqli-stmt.bind-result.php, So dass Ihre $row-variable enthält die erste Spalte, was auch immer es ist, * bedeutet. (Vermeiden * in allen Fragen, aber das ist eine andere Sache.)
InformationsquelleAutor Glenncito | 2012-07-20
Schreibe einen Kommentar