numero sur page

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : numero sur page

par charabia » 16 sept. 2005, 18:10

Oki c'est cool :)

Bonne continuation ! :wink:

par saxo2b » 16 sept. 2005, 15:54

charabia j'ai resolu le probleme retour avec les chiffres le probleme ses que sa avance ou recule toujours 1 page meme si je clic sur la page 4 il va a la page 2

par saxo2b » 16 sept. 2005, 15:16

iclo j'ai eu ses propos parceque je me suis excusé, sache bien que le respect en corse on nous l'apprend des la naissance alors si je dis pas bonjour ok je m'en suis excusé de suite, par contre que je m'excuse et qu'on continu a me faire des reflexion sa va plus

par iclo » 16 sept. 2005, 15:07

Enfin quelqu'un de sympa
Je me demande le but de ce genre de propos.
Pour info, je t'ai juste demandé de poster ton code sur le forum pour qu'on ne doive pas perdre du temps inutilement, et ensuite de respecter les rêgles du forum, que je n'en doute pas tu avais pris le temps de lire avant de poster ton message. Tu recevras beaucoup d'aide de bénévoles sur ce forum, à condition de respecter les rêgles établies.

Sur ce, bonne journée

par saxo2b » 16 sept. 2005, 15:00

le liens des chiffre il avance toujours de 1 page n'importe quelle chiffre que tu tape a cause de
($courant + 1)
faut pas mettre que +1 je cherche quoi je trouve pas

par saxo2b » 16 sept. 2005, 14:55

dernier code avec sa tout marche sauf retour avec chiffres et quand tu clic sur 4 ou 5 il va a la page 2
$nb_results_p_page = 2; // nombre de résultats par page 
$nb_avant = 4; // nombre de page avant la page courante 
$nb_apres = 5; // nombre de page après la page courante 
$premiere = 1; // aficher le lien "première page" (1 ou 0) 
$derniere = 0; // afficher le lien "dernière page" (1 ou 0) 
$courant = empty($_GET['page']) ? 1 : $_GET['page']; // page 
$start = ($courant - 1) * $nb_results_p_page; // start (requete mysql) 

 
					//if (!isset($debut)) $debut=0;
					$query="select * from famille where fam_code='$codefam '";
					$result=mysql_query($query);
					$fiche=mysql_fetch_object($result);
					$code=$fiche->fam_code;
					$nomf=$fiche->fam_nomf;
					$nomf=strtoupper($nomf);
					echo "<table border=1 width=572 cellpadding=5 cellspacing=0 align=left bordercolor=#993300>";
					echo "<tr><th colspan=10>$nomf";
					echo "<tr>";
					$result="select * from produit where pro_famille='$codefam' ORDER BY pro_date desc LIMIT $start, $nb_results_p_page";
					$res=mysql_query($result);
					$nb=mysql_num_rows($res);
					
					$i=0;
  					while ($i < $nb){
						$fiche=mysql_fetch_object($res);
						$code=$fiche->pro_code;
						$date=$fiche->pro_date;
						$dateentre=$fiche->pro_dateentre;
						$nom=$fiche->pro_nom;
						$desc=$fiche->pro_descriptif;
						$date=$fiche->pro_date;
						$famille=$fiche->pro_famille;
						$T=explode('-',$date);
						if ($i%1==0)
						$query2="SELECT COUNT(com_code) FROM commentaire WHERE com_produit=$code GROUP BY com_code";//affiche nbre de commentaire
						$result2=mysql_query($query2);
						$nbr2=mysql_num_rows($result2);
						echo "<tr>";
						echo "<td align=center>";
						echo "<table align=center border=1 cellepadding=0 cellspacing=0 bordercolor=#000000>";
						if (is_file("../../images/produit/$code.jpg"))
							echo "<td width=%><A href=javascript:PopupImage('../../images/produit/$code.jpg')><img src='../../images/produit/$code.jpg' height=50 border=0></a>";
							//echo "<td><a href='photo.php?code=$code' target='zoom'>						
						elseif (is_file("../../images/produit/$code.gif"))
							echo "<td width=%><A href=javascript:PopupImage('../../images/produit/$code.gif')><img src='../../images/produit/$code.gif' height=50 border=0></a>";
						else{
							echo "<b>Pas d'image</b>"; // pas d'image pour le produit
							}
							echo "<br>";
							echo "</table>";
							echo "<td width=80% align=center><font color=#993300><b>$nom</b><br></font>";
							echo "$desc<br>";
							echo "<font size=2>Date de Création:</font> <font size=2 color=#993300>$T[2]/$T[1]/$T[0]</font>";//ligne au dessus de l'image
							echo "<tr><td align=center colspan=2><font size=2><a href='ecrire_comm.php?code=$code&produit=$code&commentaire=$code'>Ajouter un Commentaire</a> ";
							$i++;
							if($nbr2>1)
							echo "<a href='lire_comm.php?produit=$code'> / $nbr2 Commentaires</a></font>";
							elseif($nbr2==1)
							echo "<a href='lire_comm.php?produit=$code'> / $nbr2 Commentaire</a></font>";
							else{
							echo "<font color=#993300 size=3> / $nbr2 Commentaire</a></font>";
						 
						}
			}
					
				

echo "<tr>
<td colspan=2 align=center>";
// comptage du nombre de lignes de la base 
$result = mysql_query("select COUNT(pro_code) from produit where pro_famille='$codefam'"); 
if(!$result) 
{ 
   // redirection erreur 
   header("location: erreur.php"); 
   exit; 
} 
$ret = mysql_fetch_array($result); 
// nombre de lignes 
$nb_results = $ret[0]; 
  
// exemple de requete 
//$result = mysql_query("select * from produit where pro_famille='$codefam' ORDER BY pro_date desc LIMIT '$start','$nb_results_p_page'"); 
  
// nombre total de pages 
$nb_pages = ceil($nb_results / $nb_results_p_page); 
// nombre de pages avant 
$avant = $courant > ($nb_avant + 1) ? $nb_avant : $courant - 1; 
// nombre de pages après 
$apres = $courant <= $nb_pages - $nb_apres ? $nb_apres : $nb_pages - $courant; 
  
// première page 
if($premiere && $courant - $avant > 1) 
   echo '<a href="' . $_SERVER['SCRIPT_NAME'] . '?codefam='.$codefam.'">Première</a>&nbsp;&nbsp;'; 
    
// page précédente 
if($courant > 1) 
   echo '<a href="' . $_SERVER['SCRIPT_NAME'] . '?codefam='.$codefam.'&page='. ($courant - 1) . '">Précédente</a>&nbsp;&nbsp;'; 
  
// affichage des numéros de page 
for($i = $courant - $avant; $i <= $courant + $apres; $i++) 
{ 

// page courante 
   if($i == $courant) 
      echo '<span style="color: #FF0000;">' . $i . '</span>&nbsp;&nbsp;'; 
   else 
      echo '<a href="' . $_SERVER['SCRIPT_NAME'] . '?codefam='.$codefam.'&page='.($courant + 1) .'"' . $i . '">' . $i . '</a>&nbsp;&nbsp;'; 
} 
  
// page suivante 
if($courant < $nb_pages) 
   echo '<a href="' . $_SERVER['SCRIPT_NAME'] . '?codefam='.$codefam.'&page='.($courant + 1) . '">Suivante</a>&nbsp;&nbsp;'; 
    
if($derniere && $courant + $apres < $nb_pages) 
   echo '<a href="' . $_SERVER['SCRIPT_NAME'] . '?codefam='.$codefam.'&page='. ($derniere) . '">Dernière</a>&nbsp;&nbsp;'; 



echo "</table>";

par saxo2b » 16 sept. 2005, 14:52

$nb_results_p_page = 20; // nombre de résultats par page 
$nb_avant = 4; // nombre de page avant la page courante 
$nb_apres = 6; // nombre de page après la page courante 
$premiere = 1; // aficher le lien "première page" (1 ou 0) 
$derniere = 0; // afficher le lien "dernière page" (1 ou 0) 
$courant = empty($_GET['page']) ? 1 : $_GET['page']; // page 
$start = ($courant - 1) * $nb_results_p_page; // start (requete mysql) 
  
// comptage du nombre de lignes de la base 
$result = mysql_query("SELECT count(id) FROM table"); 
if(!$result) 
{ 
   // redirection erreur 
   header("location: erreur.php"); 
   exit; 
} 
$ret = mysql_fetch_array($result); 
// nombre de lignes 
$nb_results = $ret[0]; 
  
// exemple de requete 
$result = mysql_query("SELECT * FROM table LIMIT $start, $nb_results_p_page"); 
  
// nombre total de pages 
$nb_pages = ceil($nb_results / $nb_results_p_page); 
// nombre de pages avant 
$avant = $courant > ($nb_avant + 1) ? $nb_avant : $courant - 1; 
// nombre de pages après 
$apres = $courant <= $nb_pages - $nb_apres ? $nb_apres : $nb_pages - $courant; 
  
// première page 
if($premiere && $courant - $avant > 1) 
   echo '<a href="' . $_SERVER['SCRIPT_NAME'] . '">Première</a>&nbsp;&nbsp;'; 
    
// page précédente 
if($courant > 1) 
   echo '<a href="' . $_SERVER['SCRIPT_NAME'] . '?page=' . ($courant - 1) . '">Précédente</a>&nbsp;&nbsp;'; 
  
// affichage des numéros de page 
for($i = $courant - $avant; $i <= $courant + $apres; $i++) 
{ 
   // page courante 
   if($i == $courant) 
      echo '<span style="color: #FF0000;">' . $i . '</span>&nbsp;&nbsp;'; 
   else 
      echo '<a href="' . $_SERVER['SCRIPT_NAME'] . '?page=' . $i . '">' . $i . '</a>&nbsp;&nbsp;'; 
} 
  
// page suivante 
if($courant < $nb_pages) 
   echo '<a href="' . $_SERVER['SCRIPT_NAME'] . '?page=' . ($courant + 1) . '">Suivante</a>&nbsp;&nbsp;'; 
    
if($derniere && $courant + $apres < $nb_pages) 
   echo '<a href="' . $_SERVER['SCRIPT_NAME'] . '?page=' . $nb_pages . '">Dernière</a>&nbsp;&nbsp;'; 

par saxo2b » 16 sept. 2005, 14:50

probleme d'affichage du nombre exacte de page resolu, il me reste le retour avec les chiffre et l'avance et le faite qu'il m'affiche pas le liens derniere page

par charabia » 16 sept. 2005, 14:45

En plus de ce code que tu as retravaillé, donnes moi le code initial que je puisse voir la différence entre les 2.

par saxo2b » 16 sept. 2005, 13:51

le probleme aussi ses que quand je clic sur la pages 6 ou 5 ou 4 il m'affiche la page 2

par saxo2b » 16 sept. 2005, 13:45

je bloc sur le retour et sur le faite que j'ai 4 pages mais il me mes 15 pages

par Invité » 16 sept. 2005, 12:21

<?
$nb_results_p_page = 2; // nombre de résultats par page 
$nb_avant = 4; // nombre de page avant la page courante 
$nb_apres = 5; // nombre de page après la page courante 
$premiere = 1; // aficher le lien "première page" (1 ou 0) 
$derniere = 0; // afficher le lien "dernière page" (1 ou 0) 
$courant = empty($_GET['page']) ? 1 : $_GET['page']; // page 
$start = ($courant - 1) * $nb_results_p_page; // start (requete mysql) 

 
					//if (!isset($debut)) $debut=0;
					$query="select * from famille where fam_code='$codefam'";
					$result=mysql_query($query);
					$fiche=mysql_fetch_object($result);
					$code=$fiche->fam_code;
					$nomf=$fiche->fam_nomf;
					$nomf=strtoupper($nomf);
					echo "<table border=1 width=572 cellpadding=5 cellspacing=0 align=left bordercolor=#993300>";
					echo "<tr><th colspan=10>$nomf";
					echo "<tr>";
					$result="select * from produit where pro_famille='$codefam' ORDER BY pro_date desc LIMIT $start, $nb_results_p_page";
					$res=mysql_query($result);
					$nb=mysql_num_rows($res);
					
					$i=0;
  					while ($i < $nb){
						$fiche=mysql_fetch_object($res);
						$code=$fiche->pro_code;
						$date=$fiche->pro_date;
						$dateentre=$fiche->pro_dateentre;
						$nom=$fiche->pro_nom;
						$desc=$fiche->pro_descriptif;
						$date=$fiche->pro_date;
						$famille=$fiche->pro_famille;
						$T=explode('-',$date);
						if ($i%1==0)
						$query2="SELECT COUNT(com_code) FROM commentaire WHERE com_produit=$code GROUP BY com_code";//affiche nbre de commentaire
						$result2=mysql_query($query2);
						$nbr2=mysql_num_rows($result2);
						echo "<tr>";
						echo "<td align=center>";
						echo "<table align=center border=1 cellepadding=0 cellspacing=0 bordercolor=#000000>";
						if (is_file("../../images/produit/$code.jpg"))
							echo "<td width=%><A href=javascript:PopupImage('../../images/produit/$code.jpg')><img src='../../images/produit/$code.jpg' height=50 border=0></a>";
							//echo "<td><a href='photo.php?code=$code' target='zoom'>						
						elseif (is_file("../../images/produit/$code.gif"))
							echo "<td width=%><A href=javascript:PopupImage('../../images/produit/$code.gif')><img src='../../images/produit/$code.gif' height=50 border=0></a>";
						else{
							echo "<b>Pas d'image</b>"; // pas d'image pour le produit
							}
							echo "<br>";
							echo "</table>";
							echo "<td width=80% align=center><font color=#993300><b>$nom</b><br></font>";
							echo "$desc<br>";
							echo "<font size=2>Date de Création:</font> <font size=2 color=#993300>$T[2]/$T[1]/$T[0]</font>";//ligne au dessus de l'image
							echo "<tr><td align=center colspan=2><font size=2><a href='ecrire_comm.php?code=$code&produit=$code&commentaire=$code'>Ajouter un Commentaire</a> ";
							$i++;
							if($nbr2>1)
							echo "<a href='lire_comm.php?produit=$code'> / $nbr2 Commentaires</a></font>";
							elseif($nbr2==1)
							echo "<a href='lire_comm.php?produit=$code'> / $nbr2 Commentaire</a></font>";
							else{
							echo "<font color=#993300 size=3> / $nbr2 Commentaire</a></font>";
						 
						}
			}
					
				

echo "<tr>
<td colspan=2 align=center>";
// comptage du nombre de lignes de la base 
$result = mysql_query("SELECT * FROM produit "); 
if(!$result) 
{ 
   // redirection erreur 
   header("location: erreur.php"); 
   exit; 
} 
$ret = mysql_fetch_array($result); 
// nombre de lignes 
$nb_results = $ret[0]; 
  
// exemple de requete 
$result = mysql_query("select * from produit where pro_famille='$codefam' ORDER BY pro_date desc LIMIT $start, $nb_results_p_page"); 
  
// nombre total de pages 
$nb_pages = ceil($nb_results / $nb_results_p_page); 
// nombre de pages avant 
$avant = $courant > ($nb_avant + 1) ? $nb_avant : $courant - 1; 
// nombre de pages après 
$apres = $courant <= $nb_pages - $nb_apres ? $nb_apres : $nb_pages - $courant; 
  
// première page 
if($premiere && $courant - $avant > 1) 
   echo '<a href="' . $_SERVER['SCRIPT_NAME'] . '?codefam='.$codefam.'">Première</a>&nbsp;&nbsp;'; 
    
// page précédente 
if($courant > 1) 
   echo '<a href="' . $_SERVER['SCRIPT_NAME'] . '?codefam='.$codefam.'&page='. ($courant - 1) . '">Précédente</a>&nbsp;&nbsp;'; 
  
// affichage des numéros de page 
for($i = $courant - $avant; $i <= $courant + $apres; $i++) 
{ 
   // page courante 
   if($i == $courant) 
      echo '<span style="color: #FF0000;">' . $i . '</span>&nbsp;&nbsp;'; 
   else 
      echo '<a href="' . $_SERVER['SCRIPT_NAME'] . '?codefam='.$codefam.'&page='.($courant + 1).'"' . $i . '">' . $i . '</a>&nbsp;&nbsp;'; 
} 
  
// page suivante 
if($courant < $nb_pages) 
   echo '<a href="' . $_SERVER['SCRIPT_NAME'] . '?codefam='.$codefam.'&page='.($courant + 1) . '">Suivante</a>&nbsp;&nbsp;'; 
    
if($derniere && $courant + $apres < $nb_pages) 
   echo '<a href="' . $_SERVER['SCRIPT_NAME'] . '?codefam='.$codefam.'"' . $derniere . '">Dernière</a>&nbsp;&nbsp;'; 



echo "</table>";
?>
[/php]

par charabia » 16 sept. 2005, 12:18

le plus simple serait de coller ton code ici. J'ai un peu de mal si je ne vois pas en gros ce que je dois voir...:p

par Invité » 16 sept. 2005, 12:18

 echo '<a href="' . $_SERVER['SCRIPT_NAME'] . '?codefam='.$codefam.'&page='. ($courant - 1) . '">Précédente</a>&nbsp;&nbsp;'; 
voila le code pour precedente

par Invité » 16 sept. 2005, 12:16

le probleme aussi ses ke j'ai que 4 pages et il me met aussi le numero de page: 5 , j'aimerai que les numero s'arrete a 4. j'y suis presque grace a ton aide merci