Pagination

Fermé
gabbermaniac Messages postés 137 Date d'inscription mercredi 4 mars 2009 Statut Membre Dernière intervention 23 août 2011 - Modifié par gabbermaniac le 15/04/2010 à 12:04
Bonjour,

je voudrais effectuer une pagination sur une page utilisant une requête préparée.
Dit autrement, j'ai une page type dont le contenu se modifie selon l'id passé par l'url : index.php?p=index&themes_id=3


J'ai un code fonctionnelle mais y-a-til moyen de l'optimiser, car cela me semble très foulli

<?php
$reponse = $bdd->prepare('SELECT COUNT(id) as nbArt FROM articles, articles_themes
WHERE id=articles_id AND themes_id= ? ');

$reponse->execute(array($_GET['themes_id']));
$donnees = $reponse->fetch();


$nbArt =$donnees['nbArt'];
$perPage = 12;
$nbPage= ceil($nbArt/$perPage);


if(isset($_GET['page']) && $_GET['page']>0 && $_GET['page']<=$nbPage){
$cPage = intval ($_GET['page']);

}
else{
$cPage =1;
}

var_dump($cPage);
$res= $bdd->prepare('SELECT *
FROM articles, articles_themes
WHERE id=articles_id AND themes_id=?
ORDER BY date DESC
LIMIT '.(($cPage-1)*$perPage).','.$perPage.'');//
$res->execute(array($_GET['themes_id']));

while($donnees2 = $res->fetch()){


echo '<div class="bloc">';
echo "<a href=\"theme/{$donnees2["url"]}-{$donnees2["id"]}\"> ";
echo '<img src="/playmocity/content/theme/images/mini/'.$donnees2["id"].'r.jpg" title="Cliquez pour voir plus de détails" style="height: 140px; width: 150px" />';
echo "</a>";
echo "<p class=\"title\">{$donnees2["id"]}";
echo " -";
echo "<a href=\"theme/{$donnees2["url"]}-{$donnees2["id"]}\"> {$donnees2["titre"]}</a></p>";
echo '</div>';
}



for($i=1;$i<=$nbPage;$i++){

if($i==$cPage){echo "$i -";}
else{
echo "<a href=\"/playmocity/index.php?p=theme/index&themes_id=12&page=$i\"> $i</a> - ";}

}
$req->closeCursor();

?>

Par contre, j'ai un problème avec l'url de la pagination:
<a href=\"/playmocity/index.php?p=theme/index&themes_id=12&page=$i\"> $i</a>
comment remplacer le 12 par l'url en cours?

Merci