bonjour a tous
j’essaie de faire un script pour afficher des messages.
ce script comporte une pagination qui est opérationnelle.
mon souci c'est qu'il ne me remonte pas le dernier message.
si je mets 10 message par page il m'en affiche 8 sur les neuf existant.
(il manque le dernier rentrée soit le premier de la liste.
si je met 3 par page, il ne m'affiche que 2 messages sur 3 pages.
voici mon script
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
<?php//pagination des messages 
$req = $bdd->prepare('SELECT COUNT(etat) as nbmess FROM message WHERE etat = 2')or die(print_r($bdd->errorInfo()));
$req->execute();
$pagination = $req->fetch(PDO::FETCH_ASSOC);
 
$nbmess = $pagination['nbmess'];
//affichage par page
$perpage = 10;
//page en cours
 
$nbpage = ceil($nbmess/$perpage);
 
if(isset($_GET['p']) && $_GET['p']>0 && $_GET['p']<=$nbpage)
{
$scpage = $_GET['p'];
}
else
{
	$scpage = 1 ;
}
 
//recupération des messages
$req2 = $bdd->prepare("SELECT * FROM message WHERE compte = :id AND etat = 2 ORDER BY date_heure DESC LIMIT ".(($scpage-1)*$perpage).",$perpage")or die(print_r($bdd->errorInfo()));
$req2->execute(array(":id"=>$_GET['log']));
$mess = $req2->fetch();?>
 
<div id="message">
 
<?php while ($mess=$req2->fetch())
    {
//affichage des mois en francais
$mois = array("","Janvier","Février","Mars","Avril","Mai","Juin","Juillet","Août","Septembre","Octobre","Novembre","Décembre");
$datefr =  ''.date("d", strtotime($mess['date_heure'])).'  '.$mois[date("n", strtotime($mess['date_heure']))].'  '.date("Y", strtotime($mess['date_heure'])).' à '.date("H", strtotime($mess['date_heure'])).' H '.date("i", strtotime($mess['date_heure'])).'';
//affichage du message
  echo '<p><b style="text-align:right;font-style:italic;font-size:0.6em">Ajouté le  '.$datefr.'<br/></b>' .$mess['message']. '<br/><b style="font-weight:bold">'.$mess['messagenom'].'</b><br/><b style="font-style:italic;font-size:0.8em;">'.$mess['lien']. '</b></p>';
 
  }
?>
<p style="font-size:0.8em;text-align:right">Page:
<?php
for($i=1;$i<=$nbpage;$i++)
{
	if ($i == $scpage) //On ne met pas de lien sur la page actuelle
	{
		echo" $i /";
	}
	else
	{
	 echo "<a href=\"espace.php?log=$id&p=$i\">$i</a> / ";
    }
}
?></p>
</div>