Arbeid med LIMIT-operatoren i PDO i PHP
Ved arbeid med
LIMIT-operatoren i en forberedt forespørsel,
kan det oppstå et problem - tall
i forespørselen konverteres automatisk
til strenger, noe som i sin tur vil forårsake
en SQL-syntaksfeil.
Man kan løse problemet med feil
tolking av tall i forespørselen
ved å binde verdiene til variablene
ved hjelp av metoden bindValue
og angi en numerisk modus
med 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);
?>
Lag en IN-forespørsel som
viser to brukere,
starter fra den tredje.