Se connecter / S'enregistrer
Votre question

Page limite [PHP]

Tags :
  • Sql
  • Programmation
Dernière réponse : dans Programmation
6 Septembre 2007 16:10:38

Bonjour,

J'ai fais se petite script qui fonctionne très bien:

  1. <?
  2.  
  3. $db = mysql_connect('*****','******','*****');
  4. mysql_select_db('*****',$db);
  5.  
  6.  
  7. $sql = "select image,titre,taille,description,url FROM film ORDER BY titre";
  8.  
  9. $req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
  10.  
  11. while($data = mysql_fetch_assoc($req))
  12. {
  13. echo '
  14. '.$data['titre'].'
  15. <img src="'.$data['image'].'" alt="'.$data['titre'].'" />
  16. Taille: '.$data['taille'].'
  17. Description: '.$data['description'].'
  18. <a href="'.$data['url'].'" target="_blank">
  19. ';
  20. }
  21.  
  22. mysql_close();
  23. ?>


Je vous ai épargner les table de l'echo... Bon alors se que je voudrais faire c'est donner une limite par exemple après 5 ajouts passer à la page 2 avec le nombre de pages écris en bas... Pour pas que je fasse 50 pages à la main...

Je pensais à ceci...

  1. $limit=5;
  2. $i=0;
  3. $j=1;
  4. $nb_total=mysql_result($sql);
  5.  
  6. if($nb_total>$limit)
  7. {
  8. while($i<($nb_total/$limit))
  9. {
  10. if($i!=$page){echo "(<a href=\"film.php?page=$i\">$j</a>) ";}
  11. else {echo "<b>($j)</b> ";}
  12. $i++;$j++;
  13. }
  14. }
  15.  
  16. if ($page>0)
  17. {
  18. $precedent=$page-1;
  19. print "<a href=\"film.php?page=$precedent\">PRECEDENT</a> \n";
  20. }
  21.  
  22. // AFFICHAGE DU LIEN SUIVANT SI BESOIN EST
  23. if($limit<$nb_total)
  24. {
  25. $suivant=$page+1;
  26. echo "<a href=\"film.php?page=$suivant&mot=$mot\">SUIVANT</a>";
  27. }


Mais ca ne fonctionne malheureusement pas... Merdi de votre aide.

Autres pages sur : page limite php

a c 232 L Programmation
7 Septembre 2007 10:15:13

Salut,

Une technique peut-être de mettre un LIMIT directement dans ta requête, et à chaque page, tu fais une nouvelle requête.
en SQL ça donnerait : LIMIT debut, 5
Si tu veux les 5 premiers, ça donne : LIMIT 0, 5
Si tu veux les 5 suivants, ça donne : LIMIT 5, 5

A partir de ça, ça sera plus facile pour faire de la pagination je pense ;) 
7 Septembre 2007 15:44:21

Je viens de voir un tuto qui explique très bien ça sur phpdebutant, merci Omar ;) 
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS