Probleme en php pour faire une pagination
heaveng
Messages postés
139
Date d'inscription
Statut
Membre
-
heaveng Messages postés 139 Date d'inscription Statut Membre -
heaveng Messages postés 139 Date d'inscription Statut Membre -
Bonjour,
je suis pas tres doué en php j'ai reussis a prendre des morceau de code trouvé avec des explications afin d'afficher mon tableau
maintenant je voudrais qu'il n'affiche qu'un certain nombree de resultats par page et qu'il y ai un systeme de pagination ( 10 resultats par page par exemple) Ici j'ai mis 1 car j'avai que 2 trucs ds ma table lol je voulais tester avant de m'attaquer a ma page reel.
voila mon code pas trop long mais ce qui est bizar c'est que si on retire les 4 derniere lignes exepté mysql_close();
alors mon tableau s'affiche correctement
donc ce sont les 4 derniere lignes qui foutent la BIP lol et je sais pas pourquoi mdr
AH j'allai oublier voila l'erreur qu'il me sort
la ligne 36 etant la 4 eme ligne en partant de la fin
merci d'avance a ceux qui vondront bien essayer de m'aider
bonne soirée a vous
--
HeavenG La vie ne vaut rien mais rien de vaut la vie
je suis pas tres doué en php j'ai reussis a prendre des morceau de code trouvé avec des explications afin d'afficher mon tableau
maintenant je voudrais qu'il n'affiche qu'un certain nombree de resultats par page et qu'il y ai un systeme de pagination ( 10 resultats par page par exemple) Ici j'ai mis 1 car j'avai que 2 trucs ds ma table lol je voulais tester avant de m'attaquer a ma page reel.
voila mon code pas trop long mais ce qui est bizar c'est que si on retire les 4 derniere lignes exepté mysql_close();
alors mon tableau s'affiche correctement
donc ce sont les 4 derniere lignes qui foutent la BIP lol et je sais pas pourquoi mdr
<?php
// D'abord, on se connecte à MySQL
mysql_connect("truc", "truc", "truc");
mysql_select_db("aquaref_poissonsetplantes");
if(isset($_GET['page']) && is_numeric($_GET['page']))
$page = $_GET['page'];
else
$page = 1;
$nb_par_page = 1;
$debut = ($page-1)*$nb_par_page;
$sql = "SELECT SQL_CALC_FOUND_ROWS id, nom_sc, nom_com, photo, lien FROM Poissons ORDER BY nom_com LIMIT $debut, $nb_par_page";
$req = mysql_query($sql) or die(mysql_error());
$nb_results = mysql_result(mysql_query("SELECT FOUND_ROWS()"), 0);
$nb_pages = ceil($nb_results/$nb_par_page);
if(mysql_num_rows($req)) {
$tableau = '<table class="table1">';
$tableau.='<tr><th>Photo</th><th>Nom commun</th><th>Nom scientifique</th><th>lien</th></tr>'; //titres des colonnes
while($row = mysql_fetch_assoc($req))
$tableau.='<tr><td class="poisson"><img src="'.$row['photo'].'" width="50" height="50" /></td><td class="poisson">'.$row['nom_com'].'</td><td class="poisson">'.$row['nom_sc'].'</td><td class="poisson"><a href="'.$row['lien'].'">afficher</a></td></tr>';
}
$tableau.='</table class="table1">';
echo $tableau;
if($_GET['page'] != 1)
echo '<a href="page.php?page='.$_GET['page']-1.'">Page précédente</a>';
if($page*$nombre_resultats < $num_rows)
echo '<a href="page.php?page='.$_GET['page']+1.'">Page suivante</a>';
mysql_close();
?>
AH j'allai oublier voila l'erreur qu'il me sort
Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING, expecting ',' or ';' in /home/aquaref/www/eau douce/maladies/test.php on line 36
la ligne 36 etant la 4 eme ligne en partant de la fin
merci d'avance a ceux qui vondront bien essayer de m'aider
bonne soirée a vous
--
HeavenG La vie ne vaut rien mais rien de vaut la vie
Configuration: Windows Vista Firefox 3.0.7
8 réponses
-
Salut!
essaie if(($page*$nombre_resultats) < $num_rows)
-
j'ai essayer ca ne change rien apparement c la ligne en dessous qui deconne
ps avec ce nouveau code le message d'erreur reste le meme -
'<a href="page.php?page='.$_GET['page']-1.'">Page précédente</a>'
problème de guillemet/cote
ici on ne prend que les simples '
'<a href="page.php?page=' ici c'est ouvert/fermé donc ok
'page' pareil donc ok
'">Page précédente</a>' pareil donc ok aussi
maintenant passons aux doubles "
"page.php?page='.$_GET['page']-1.'"
ici tu ouvres une simple ' juste avant de refermer la double "
mode zoom :-1.'"
inverse les pour voir...
mode zoom après inversion-1."'
si c'est ça alors ils te dira exactement la même chose pour la ligne 38 -
apres changement
un nouveau code d'erreur apparait
Parse error: syntax error, unexpected '"', expecting ',' or ';' in /home/aquaref/www/eau douce/maladies/test.php on line 36
merci de m'aider en tout cas -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
Bon je ne vois pas le problème mais une chose est sur :
T_CONSTANT_ENCAPSED_STRING
il vient d'une constante.
La seule que tu ai ici c'est$_GET['page']
donc il faut chercher par là!!! -
euh ma question va peut etre parraitre stupide mais est ce que vous voyez quelque part vous dans le script definir la constante $_GET['page'] car o debut on fais un test pour savoir si elle existe ou non mais si elle existe pas null par on la defini si je me trompe pas
je me tromps??? -
en fait c'est dans le 'page' qu'il doit y avoir un problème
$_GET est définie par défaut en php.
en fait $_GET permet de récupérer des valeurs passées dans l'URL. -
moi ce que je comprend pas c'est que le test
if($_GET['page'] != 1)
echo '<a href="page.php?page='.$_GET['page']-1.'">Page précédente</a>';
or page=1 alors la fameuse ligne 36 ne devrai meme pas s'exprimer !!!!