Ich spiele im Moment mit MySQLi herum, ich versuche herauszufinden, wie alles funktioniert. In meinen aktuellen Projekten gebe ich beim Codieren immer gerne einen Abfrage-String aus, nur um sicherzustellen, dass alles korrekt ist, und um meinen Code schnell zu debuggen. Aber... wie kann ich das mit einer vorbereiteten MySQLi-Anweisung machen?
Beispiel:
$id = 1;
$baz = 'something';
if ($stmt = $mysqli->prepare("SELECT foo FROM bar WHERE id=? AND baz=?")) {
$stmt->bind_param('is',$id,$baz);
// wie kann ich diese vorbereitete Abfrage vor der eigentlichen Ausführung anzeigen?
// $stmt->execute();
}
Ich habe diese Liste durchgesehen (http://www.php.net/mysqli), aber ohne Erfolg.
EDIT
Nun, wenn es nicht möglich ist, dies von innerhalb von MySQLi aus zu tun, bleibe ich vielleicht bei etwas wie diesem:
function preparedQuery($sql,$params) {
for ($i=0; $i
`
Weit davon entfernt, perfekt zu sein, da es immer noch ziemlich redundant ist - etwas, das ich vermeiden wollte - und es gibt mir auch keine Vorstellung davon, was MySQLi mit den Daten macht. Aber ich denke, auf diese Weise kann ich schnell sehen, ob alle Daten vorhanden sind und sich am richtigen Ort befinden, und es wird mir etwas Zeit ersparen im Vergleich dazu, die Variablen manuell in die Abfrage einzufügen - das kann bei vielen Variablen mühsam sein.
`