Affichage séquentiel sous php5

Bonjour,
j'ai une bd sql et j'aimerais afficher le résultat de ma requete SELECT de facon a n'avoir que 5 instances d'affichées,sur ma page à chaque fois que je clic sur un lien "Suivant".merci de m'aider.bon apeti
Configuration: Windows XP
Firefox 3.0.4

6 réponses

  1. Pour commencer fait des liens vers ta page (disons news.php)
    <a href='news.php'>1</a><a href='news.php?page=2'>2</a><a href='news.php?page=3'>3</a>
    etc.
    Ensuite tu créer un variable de page:
    $page = $_GET['page'];
    if(empty($page)){$page = 1;}
    définis ensuite une variable pour le nombre d'articles par page, le numero de ton premier articles et du dernier:
    $maxnews = 5;
    $premiernews = ($page-1)*$maxnews);
    $derniernews = ($premierepage + $maxnews) - 1;
    et pour finir dans ta requete:
    "SELECT * FROM ta_table ORDER BY id LIMIT $premierenews,$dernierenews"
    Et ça devrais marcher.
    PS: j'ai pas tester le script je viens de te le faire a l'arrache, y'a peut être une ou deux petites erreurs qui traines.
    0
    1. OK merci.mais ta variable $premierepage n'a pas été initialisée.elle va provoquer une erreur.
      0
      1. je crois que j'ai simplement mis un " ) " de trop ^^
        $premiernews = ($page-1)*$maxnews); => $premiernews = ($page-1)*$maxnews;

        Si $page est définis comme il faut, ça ne devrais pas poser de problème ;)
        0
        1. c'est à ce niveau: $derniernews = ($premierepage + $maxnews) - 1;
          "$premierepage" n'avait pas été initialisée auparavant. Jette à nouveau un coup d'oeil sur ton code.
          0
      2. lol
        replace $premierepage par $premierenews
        désolé ^^
        0
        1. Je viens d'essayer ton code et voici les erreurs qu'il retourne:

          Notice: Undefined index: page in C:\Program Files\EasyPHP 2.0b1\www\sacca\li_table_produits.php on line 20

          Notice: Undefined variable: dernierenews in C:\Program Files\EasyPHP 2.0b1\www\sacca\li_table_produits.php on line 29
          Erreur SQL !SELECT * FROM produit ORDER BY CodeProduit LIMIT 0,
          Erreur de syntaxe près de '' à la ligne 1

          Je suppose que le code était à saisir dans ma page d'affichage!
          0
      3. Eh c'est uniquement du ah des erreur de frappe,
        comme la première fois:

        remplace $premierenews de la requete par $premiernews etc...
        le code marche niquel je viens de le tester, juste un peux de jujote pour remettre les bonne variable et hop ça tourne.
        allé, au cas ou:

        <a href='news.php'>1</a><a href='news.php?page=2'>2</a><a href='news.php?page=3'>3</a>
        <?php
        $page = $_GET['page'];
        if(empty($page)){$page = 1;}
        
        $maxnews = 5;
        $premiernews = ($page-1)*$maxnews;
        $derniernews = ($premiernews + $maxnews) - 1;
        echo 'page = '.$page.'<br />';
        echo "premiere news, id= ".$premiernews."<br />";
        echo "dernière news, id= ".$derniernews."<br />";
        $reponse = mysql_query("SELECT * FROM ta_table ORDER BY id LIMIT $premiernews,$derniernews");
        while($donnees = mysql_fetch_array($reponse))
        {
        	echo $donnees['title'];
        }
        0
        1. slt! désolé de te répondre now.ton code marche à merveille.merci pour ta disponibilité. Peace!
          0
      4. Y'a pas de soucis ;)
        Pense a passer ton post en Résolu ;)

        Bonne chance pour la suite.
        0