Affichage séquentiel sous php5

tibila -  
xxkirastarothxx Messages postés 415 Statut Membre -
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. xxkirastarothxx Messages postés 415 Statut Membre 40
     
    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
  2. tibila
     
    OK merci.mais ta variable $premierepage n'a pas été initialisée.elle va provoquer une erreur.
    0
  3. xxkirastarothxx Messages postés 415 Statut Membre 40
     
    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. tibila
       
      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
  4. xxkirastarothxx Messages postés 415 Statut Membre 40
     
    lol
    replace $premierepage par $premierenews
    désolé ^^
    0
    1. tibila
       
      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
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. xxkirastarothxx Messages postés 415 Statut Membre 40
     
    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. tibila
       
      slt! désolé de te répondre now.ton code marche à merveille.merci pour ta disponibilité. Peace!
      0
  7. xxkirastarothxx Messages postés 415 Statut Membre 40
     
    Y'a pas de soucis ;)
    Pense a passer ton post en Résolu ;)

    Bonne chance pour la suite.
    0