Voici un aperçu de mon code:
$fetchPictures = $PDO->prepare("SELECT * FROM pictures WHERE album = :albumId ORDER BY id ASC LIMIT :skip, :max");
$fetchPictures->bindValue(':albumId', $_GET['albumid'], PDO::PARAM_INT);
if(isset($_GET['skip'])){
$fetchPictures->bindValue(':skip', trim($_GET['skip']), PDO::PARAM_INT);
}
else{
$fetchPictures->bindValue(':skip', 0, PDO::PARAM_INT);
}
$fetchPictures->bindValue(':max', $max, PDO::PARAM_INT);
$fetchPictures->execute() or die(print_r($fetchPictures->errorInfo()));
$pictures = $fetchPictures->fetchAll(PDO::FETCH_ASSOC);
Je reçois
Vous avez une erreur dans votre syntaxe SQL; consultez le manuel qui correspond à votre serveur MySQL version pour le droit de la syntaxe à utiliser près de "15', 15' à la ligne 1
Il semble que PDO est l'ajout de guillemets simples pour mes variables dans la LIMITE de la partie du code SQL. Je l'ai regardé, j'ai trouvé ce bug qui je pense est lié: http://bugs.php.net/bug.php?id=44639
C'est ce que je suis en train de regarder? Ce bug a été ouvert depuis avril 2008! Que sommes-nous censés faire en attendant?
j'ai besoin de construire une partie de la pagination, et devez vous assurer que les données sont propres, sql injection-sûr, avant l'envoi de l'instruction sql.