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 54 55
| <? $sql->DatabaseConnexion();
$messagesParPage=5; //Nous allons afficher 5 messages par page.
$cal_articles = $sql->query("SELECT COUNT(id) AS nb_articles FROM "._TARTICLE_)or die (mysql_error());
$donnees_total=mysql_fetch_assoc($cal_articles); //On range retour sous la forme d'un tableau.
$total=$donnees_total['total']; //On récupère le total pour le placer dans la variable $total.
//Nous allons maintenant compter le nombre de pages.
$nombreDePages=ceil($total/$messagesParPage);
$sql->DatabaseClose();
if(isset($_GET['id'])) // Si la variable $_GET['page'] existe...
{
$pageActuelle=intval($_GET['id']);
if($pageActuelle>$nombreDePages) // Si la valeur de $pageActuelle (le numéro de la page) est plus grande que $nombreDePages...
{
$pageActuelle=$nombreDePages;
}
}
else // Sinon
{
$pageActuelle=1; // La page actuelle est la n°1
}
$premiereEntree=($pageActuelle-1)*$messagesParPage; // On calcul la première entrée à lire
$sql->DatabaseConnexion();
// La requête sql pour récupérer les messages de la page actuelle.
$aff_articles = $sql->query("SELECT * FROM "._TARTICLE_." ORDER by date DESC LIMIT ".$premiereEntree.", ".$messagesParPage)or die (mysql_error());
$sql->DatabaseClose();
while ($results = mysql_fetch_array($aff_articles,MYSQL_ASSOC)) {
$tpl->assign_block_vars('articles', array(
'TITRE' => $results['titre_art'],
'DATE' => $results['date_art'],
));
}
for($i=1; $i<=$nombreDePages; $i++) //On fait notre boucle
{
//On va faire notre condition
if($i==$pageActuelle) //Si il s'agit de la page actuelle...
{
$tpl->assign_vars(array(
'NUMPAGE' =>"[ ".$i." ]",
));
}
else //Sinon...
{
$tpl->assign_vars(array(
'NUMPAGE' => "<a href='index2.php?page=".$i."'>".$i."</a>",
));
}
}
?> |
Partager