{MySQL} Afficher nombre de News

Fermé
JJBlow Messages postés 44 Date d'inscription jeudi 30 juillet 2009 Statut Membre Dernière intervention 6 novembre 2010 - 9 août 2009 à 15:10
JJBlow Messages postés 44 Date d'inscription jeudi 30 juillet 2009 Statut Membre Dernière intervention 6 novembre 2010 - 10 août 2009 à 20:27
Bonjour, voilà, j'ai sur mon site une page avec des news, des petits articles.

Mais voilà, cela fait un bout de temps que sa continu et il y en a de plus en plus, c'est assez gênant car la page est de plus en plus remplie et est plus longue à charger.

Je souhaiterais savoir comment faire pour qu'il y ai une sorte soit de liste déroulante:
News 1-10
News 11-20
News 21-30
etc...

Ou alors comment les mettre sur plusieurs pages ? Mettre par exemple 10 news par page et au mieux que sa se fasse automatiquement; mais ce système m'a l'air plus compliqué à réaliser.

J'ai une table news_tbl

Merci d'avance de votre aide.
Bonne journée.
A voir également:

2 réponses

moderno31 Messages postés 870 Date d'inscription mardi 23 juin 2009 Statut Membre Dernière intervention 8 août 2012 92
10 août 2009 à 12:29
Hello,
Voici un exemple
J'avais trouvé le code sur le net. De moi même je ne saurais pas écrire ça.
J'ai l'ai extrait d'un fichier fichier, j'espère qu'il ne contient pas d'erreurs.
<?php

echo("<div>");

echo("<table width='70%' border='0'>");
echo("<tr>");
echo("<th scope='col' align='left' class='visu_item'>Num</th>");
echo("<th scope='col' align='left' class='visu_item'>Nom</th>");
echo("<th scope='col' align='left' class='visu_item'>Prénom</th>");
echo("</tr>");

//Requete qui affiche la liste des Cat.Adulte provisoires
$query = "SELECT num, nom, prenom FROM tab";
$result = mysql_query($query);

$Nmax = 20; // nombre par page
$Ncur = 0; // n° de la fiche courante
$Ndeb= @$_GET["num"]; // 1ère fiche transmise par l'URL

// tant qu'il y a des fiches
while (($val = mysql_fetch_row($result)) && ($Ncur<$Nmax+$Ndeb)) {
if($Ncur>=$Ndeb) {

//Dans cette boucle construire la liste voulue.
/*
Attention mysql_fetch_row [-->$val[0] pour afficher le numéro
différent de
mysql_fetch_array -->$val["num"] pour afficher le numéro
*/
}
// une de plus
$Ncur++;
}

?>

<?php
echo("<tr><td><label>Pages de résultat :</label></td><td>");
// N° des pages
$Npag = ceil(mysql_numrows($result)/$Nmax);
for($i = 1;$i<=$Npag;$i++) {
// Page courante ?
if($Ndeb == ($i-1)*$Nmax) { ?>
<?php echo $i; ?>
<?php } else { ?>
<A href="?num=<?php echo ($i-1)*$Nmax; ?>"
> <?php echo $i; ?> </A>
<?php }
} ?>

<?php // Des fiches après ?
if($val) { ?>
<td valign=top>
<A href="?num=<?php echo $Ncur; ?>">Suite</A>
</td>
<?php } ?>
0
JJBlow Messages postés 44 Date d'inscription jeudi 30 juillet 2009 Statut Membre Dernière intervention 6 novembre 2010 2
10 août 2009 à 20:27
Merci bien, je vais tester ça.

Bonne journée.
0