Pagination lien URL REWRITE
Bonjour, J'ai une page qui affiche la liste des info pavec 5 thèmes à afficher par page de ma BDD.
La première page s'affiche correctement mais lorsqu'on passe à la page 2 c'est toujours le contenu de ma 1ère page qui s'affiche.
Code de réécriture de l'url
Code:
1 2 3 4
| #Options +FollowSymlinks
Options -MultiViews
RewriteEngine on
RewriteRule ^domaine-([0-9]+)-([A-Za-z\-]+)\.html$ domaine.php?q=$1&aliasdomaine=$2 |
Requête
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
| //On compte le nombre total d'article
$sql =$connect_db->prepare("SELECT * FROM article WHERE statut=1 AND domaine=".$q);
$sql->execute();
$dataArt = $sql->fetchAll();
$total = count($dataArt);
//Pagination
$msgpage= 5; // Nombre de message qui s'affiche par page
$nombreDePages=ceil($total/$msgpage);
if(isset($_GET['page'])){
$pageActuelle=intval($_GET['page']);
if($pageActuelle>$nombreDePages){
$pageActuelle=$nombreDePages;
}
}
else {
$pageActuelle=1;
}
$premiereEntree = ($pageActuelle-1)*$msgpage;
$sqlDomaine = $connect_db->query('SELECT * FROM article WHERE statut="1" AND domaine='.$q.' ORDER BY idart DESC LIMIT '.$premiereEntree.', '.$msgpage.'');
$pageSuivante = $pageActuelle+1;
$pagePrecedente = $pageActuelle-1; |
Code affichage contenu
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
?php
try{
while($dataArt = $sqlDomaine->fetch(PDO::FETCH_OBJ)){ ?>
<div class="boiteoutil" style="height:auto">
<?php if($dataArt->imageart != "") { ?>
<img src="photo/miniatures/<?php echo $dataArt->imageart ?>" alt="<?php echo $dataArt->imageart ?>" class="imgMiddle" style="margin-bottom:5px; margin-top:5px;" />
<?php } ?>
<a href="<?php echo "article-".$dataArt->idart."-".$dataArt->alias.".html";?>">
<span class="FontTexteArt"><?php echo $dataArt->titreart ?></span></a><br />
<span style="color:#000;"><?php echo substr($dataArt->article, 0,370)?></span>
<a href="<?php echo "article-".$dataArt->idart."-".$dataArt->alias.".html";?>"><span class="FontTexteMore"><i>[...]</i></span></a>
</div>
<?php }
}
catch(PDOException $e){
echo $e->getMessage();
}?> |
Liste numéro de page
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| <?php
if ($nombreDePages > 1){
echo '<p align="center"><a href="#" onclick="this.blur(); return false;"><span>Pages :</span></a>';
for($i=1; $i<=$nombreDePages; $i++) {
if($i==$pageActuelle) {
echo ' <a href="#" onclick="this.blur(); return false;"><span> '.$i.' </span></a> ';
}
else {
echo ' <a href="domaine-'.$q.'-'.$dataDomaine->aliasdomaine.'.html?page ='.$i.'" onclick="this.blur();">
<span> '.$i.' </span></a> ';
}
}
echo '</p>';
}
?> |