Utilisation de l'opérateur LIMIT avec PDO en PHP
Lorsque vous travaillez avec l'opérateur
LIMIT dans une requête préparée,
un problème peut survenir - les chiffres
dans la requête sont automatiquement convertis
en chaînes de caractères, ce qui à son tour provoquera
une erreur de syntaxe SQL.
Il est possible de résoudre le problème de
l'interprétation incorrecte des nombres dans la requête
en liant les valeurs des variables
à l'aide de la méthode bindValue
et en leur attribuant un mode numérique
avec PDO::PARAM_INT :
<?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);
?>
Composez une requête IN qui
affichera deux utilisateurs,
en commençant par le troisième.