Arbeit mit dem LIMIT-Operator in PDO in PHP
Bei der Arbeit mit dem
LIMIT-Operator in einer vorbereiteten Abfrage
kann ein Problem auftreten - Zahlen
in der Abfrage werden automatisch
in Zeichenketten konvertiert,
was wiederum einen SQL-Syntaxfehler
verursacht.
Das Problem mit der falschen
Interpretation von Zahlen in der Abfrage
kann behoben werden, indem man die Werte der Variablen
mit der Methode bindValue
bindet und ihnen einen numerischen Modus
mit PARAM_INT zuweist:
<?php
$start = 2;
$count = 5;
$res = $pdo->prepare('SELECT * FROM users LIMIT ?, ?');
$res->bindValue(1, $start, PDO::PARAM_INT);
$res->bindValue(2, $count, PDO::PARAM_INT);
$res->execute();
$row = $res->fetchAll();
var_dump($row);
?>
Stellen Sie eine IN-Abfrage zusammen, die
zwei Benutzer ausgibt,
beginnend mit dem dritten.