Aide classer resultat table par page
Résolu
bretonm2004
Messages postés
320
Date d'inscription
Statut
Membre
Dernière intervention
-
bretonm2004 Messages postés 320 Date d'inscription Statut Membre Dernière intervention -
bretonm2004 Messages postés 320 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
voici mon script php pour afficher des petites annonces classés mais je n'arrive pas a a mettre par exemple 5 ou 10 résultat par page
pourriez vous m'aider
merci
voici mon code en question
while($row = mysql_fetch_array($req))
{
$id=$row['id']; $typedannonce=$row['typedannonce'];
$marque=$row['marque']; $autres=$row['autres'];
$modele=$row['modele']; $prix=$row['prix'];
$negociable=$row['negociable']; $annee=$row['annee'];
$etat=$row['etat']; $carburant=$row['carburant'];
$kilometrage=$row['kilometrage']; $transmission=$row['transmission'];
$immatricule=$row['immatricule']; $climatisation=$row['climatisation'];
$audio=$row['audio']; $cylindre=$row['cylindre'];
$puissance=$row['puissance']; $consommation=$row['consommation'];
$couleurinterieure=$row['couleurinterieure']; $couleurexterieure=$row['couleurexterieure'];
$email=$row['email']; $message=$row['message']; $date=$row['date']; $image=$row['image'];
$i=1;
echo "<table align='center' width='700' border='0'>
<tr>
<td width='114'>
<center>
<a href='photos/avendrenp/".$row['image1']." ' alt='Voir image en grand'>
<img src='photos/avendrenp/".$row['image1']." ' width='75' />
</a>
</center></td>
<td width='258' height='78'>".$marque." ".$autres." ".$modele." ".$annee." ".$negociable."</td>
<td align='center' width='147'>".$prix."</td>
<td align='center' width='153'>".$date."</td>
</tr>";
}
voici mon script php pour afficher des petites annonces classés mais je n'arrive pas a a mettre par exemple 5 ou 10 résultat par page
pourriez vous m'aider
merci
voici mon code en question
while($row = mysql_fetch_array($req))
{
$id=$row['id']; $typedannonce=$row['typedannonce'];
$marque=$row['marque']; $autres=$row['autres'];
$modele=$row['modele']; $prix=$row['prix'];
$negociable=$row['negociable']; $annee=$row['annee'];
$etat=$row['etat']; $carburant=$row['carburant'];
$kilometrage=$row['kilometrage']; $transmission=$row['transmission'];
$immatricule=$row['immatricule']; $climatisation=$row['climatisation'];
$audio=$row['audio']; $cylindre=$row['cylindre'];
$puissance=$row['puissance']; $consommation=$row['consommation'];
$couleurinterieure=$row['couleurinterieure']; $couleurexterieure=$row['couleurexterieure'];
$email=$row['email']; $message=$row['message']; $date=$row['date']; $image=$row['image'];
$i=1;
echo "<table align='center' width='700' border='0'>
<tr>
<td width='114'>
<center>
<a href='photos/avendrenp/".$row['image1']." ' alt='Voir image en grand'>
<img src='photos/avendrenp/".$row['image1']." ' width='75' />
</a>
</center></td>
<td width='258' height='78'>".$marque." ".$autres." ".$modele." ".$annee." ".$negociable."</td>
<td align='center' width='147'>".$prix."</td>
<td align='center' width='153'>".$date."</td>
</tr>";
}
2 réponses
-
Voila essaye ça, je n'ai pas tester puisque je n'ai pas ta base de donnée mDr
<?php /* On initialise les variables */ $limit=5; // Donc 5 articles par page // Sur quel page on est ? if (isset($_GET['page'])) { $page = intval($_GET['page']); } else { $page=0; } // Maintenant le navigateur de pages // Affiche le page par page avec ses liens // Variable nombre d'enreg par page $debut=$page*$limit; // Debut est egale a page x limit donc page 2 sera egale a 10 mysql_connect('localhost', 'arrrrrr', 'rrrrr'); mysql_select_db("rrrrr"); $sql = "SELECT * FROM avendrepubliee ORDER BY id DESC LIMIT ".$debut.", ".$limit." "; $req = mysql_query($sql) or die(mysql_error()); $count = mysql_result(mysql_query("SELECT count(*) FROM avendrepubliee"), 0); // Compte le nombre de champ $nav_page=true; // J'indique une variable vide, car si je ne le fais pas, j'ai des erreurs if ($page>0) { $precedent=$page-1; $nav_page.='<a href="rechercheravendre.php?page='.$precedent.'">PRECEDENT</a> '; } $i=0; // On initialise $i => Page $j=1; // On initialise $j => La page afficher if($count>$limit) { while($i<ceil($count/$limit)) { // C'est une page avant ou après la position actuel if($i!=$page){$nav_page.='<a href="rechercheravendre.php?page='.$i.'">'.$j.'</a>';} // C'est la page en cours else { $nav_page.=" <b>".$j."</b> ";} $i++;$j++; } } if($debut+$limit<$count) { $suivant=$page+1; $nav_page.=' <a href="rechercheravendre.php?page='.$suivant.'">SUIVANT</a>'; } /* Fin initialisation */ echo "<table align='center' width='700' border='0'>"; while($row = mysql_fetch_array($req)) { /* Tu n'est pas obligé de stocker tes tables dans des variables. De plus a l'avenir tu risque d'utiliser des jointure, du moins je l'espere pour toi et la tu risque de perdre une ligne. */ /* $id=$row['id']; $typedannonce=$row['typedannonce']; $marque=$row['marque']; $autres=$row['autres']; $modele=$row['modele']; $prix=$row['prix']; $negociable=$row['negociable']; $annee=$row['annee']; $etat=$row['etat']; $carburant=$row['carburant']; $kilometrage=$row['kilometrage']; $transmission=$row['transmission']; $immatricule=$row['immatricule']; $climatisation=$row['climatisation']; $audio=$row['audio']; $cylindre=$row['cylindre']; $puissance=$row['puissance']; $consommation=$row['consommation']; $couleurinterieure=$row['couleurinterieure']; $couleurexterieure=$row['couleurexterieure']; $email=$row['email']; $message=$row['message']; $date=$row['date']; $image=$row['image']; */ echo "<tr> <td width='114'> <center> <a href='photos/avendrenp/".$row['image1']." ' alt='Voir image en grand'> <img src='photos/avendrenp/".$row['image1']." ' width='75' /> </a> </center></td> <td width='258' height='78'>".$row['marque']." ".$row['autres']." ".$row['modele']." ".$row['annee']." ".$row['negociable']."</td> <td align='center' width='147'>".$row['prix']."</td> <td align='center' width='153'>".$row['date']."</td> </tr>"; } echo "</table>"; // Hop on affiche le navigateur echo $nav_page; ?>
J'ai fais mon possible pour que se soit compréhensible
Si tu as des erreurs envois les ici -
Dans ta requete SQL tu as LIMIT 0, 30 habituellement
Traduit en français ça dit LIMIT A partir de, j'affiche autant de résultat
Si tu veux afficher les 5 premiers résultat tu par de 0 et tu affiche 5 donc LIMIT 0, 5
Tu es maintenant sur ta seconde pages :
$ellement_par_page = 5;
$page = 2; // Que tu récupère en GET ou POST
/* moins 1 parce que le départ est 0 */
$cette_page = $page - 1; // ici 1
/* Math */
// On calcul le départ pour afficher
// donc 1 * 5 = 5
$affiche_page=$cette_page * $ellement_par_page;
// ici il démarre a 5 et affiche les 5 entrés suivante.
$requete = "SELECT * FORM 'ma_table' LIMIT ".$affiche_page." , ".$ellement_par_page." ";