Probleme avec l'affichage de pagination

cs_zakichane Messages postés 44 Date d'inscription jeudi 23 juin 2005 Statut Membre Dernière intervention 30 novembre 2005 - 24 août 2005 à 02:51
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 - 24 août 2005 à 18:18
bonjour tt le monde j'ai créer un code qui permet d'afficher les resultat d'une requet (qui sont les nom des fichiers images que je veux les affiché) et ça affiche vraiment les resultat mais le probleme c ke je veux afficher chaque 5 photo tte seule mais ça marche pas et ben voila mon code et j'attend bien votre aide svp:

<?php
include ("connexion.php");
$nbParPage = 5;
$req = "SELECT id, min FROM test ORDER BY id ";
$ret = mysql_query ($req) or die (mysql_error ());


$nbNews = mysql_num_rows ($ret);
$moy= ceil($nbNews/$nbParPage);
if ($moy>=2)
{
//on vérifie l'éxistence de la variable page avant les vérifications
if (isset($_GET['page']))
{
//si $_GET['page'] = 1 alors on est a la première page et donc pas besoins
//de lien vers la précédente qui n'éxiste pas
if ($_GET['page']==1){echo "Précedent ";}
//sinon on met le lien en ajoutant +1 page a la page courante
else
{
echo "Précedent ";
}
}
else{echo "Précedent ";}
}
for ($i=0;$i<$moy;$i++)
{
// on ajoute 1 a $i pour afficher 1-2-3-... au lieu de 0-1-2-3-...
echo " Page ".($i+1)." ";
}
if ($moy>=2)
{
//on vérifie l'éxistence de la variable page avant les vérifications
if (isset($_GET['page']))
{
//si $_GET['page'] = $moy alors on est a la dernière page et donc pas besoins
//de lien vers la suivante qui n'éxiste pas
if ($_GET['page']==$moy){echo " Suivant";}
//sinon on met le lien en ajoutant +1 page a la page courante
else
{
echo " Suivant";
}
}
else{echo "Suivant";}
}
while ( $col = mysql_fetch_row ($ret) )
{
echo '<td>
';
echo '
';
echo '
</td>';
}
?>
Merci bcp de me repondre

13 réponses

Evangun Messages postés 1980 Date d'inscription dimanche 20 février 2005 Statut Membre Dernière intervention 24 septembre 2012 4
24 août 2005 à 03:17
Est-ce que tu peux réexpliquer clairement ton problème en bon français
s'il te plait, pas de style SMS, parce que personnellement je n'ai rien
compris du tout.
0
coockiesch Messages postés 2268 Date d'inscription mercredi 27 novembre 2002 Statut Membre Dernière intervention 13 septembre 2013 4
24 août 2005 à 10:57
Salut!

Quel est le problème excatement? :)



Autrement:

http://www.phpcs.com/code.aspx?ID=24067



@++



R@f

www.allpotes.ch: Photos, humour, vidéos, gags, ...

"On dit que seulement 10 personnes au monde comprenaient Einstein. Personne ne me comprends. Suis-je un génie???"
0
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
24 août 2005 à 11:01
Salut,



"mais le probleme c ke je veux afficher chaque 5 photo tte seule mais ça marche pas"



Le PrObL3M3 C'3sT Qu3 J3 S4iS PaS sI C'3sT Du fR4nC4iS

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li>
0
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
24 août 2005 à 13:12
lol

renseignes toi sur LIMIT en mysql
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
24 août 2005 à 13:18
heu pour LIMIT j'en ai parlé aussi dans un autre post, si t'as des id
uniques (ou un champ te permettant d'avoir ça) mieux vaut éviter LIMIT,
après tout dépend du nombre d'enregistrements, mais ça sera toujours
plus performant d'utiliser un BETWEEN par exemple ;-)

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li>
0
cs_zakichane Messages postés 44 Date d'inscription jeudi 23 juin 2005 Statut Membre Dernière intervention 30 novembre 2005
24 août 2005 à 13:32
désolé les gas je ne suis pas un expère en php c'est pour cela j'ai pas bien compri ce que vous venez de dire mon code affiche bien les pages mais le probleme c'est dans l'affichages des resultats parceque normalement je doi afficher 5 images puis je clique sur suivant je doi voir les 5 images suivante mais malheureseument il me donne que je vais avoir 3 pages selon le nombre de mes enregistrements mais il m'affiche tous les enregistrement au mêm page.
j'aime bien que c'est bien claire maintenant
0
Evangun Messages postés 1980 Date d'inscription dimanche 20 février 2005 Statut Membre Dernière intervention 24 septembre 2012 4
24 août 2005 à 15:31
Salut, tu devrais qd même utiliser les points et les virgules, je te
jure que ça marche bien ces trucs-là. Tu as un problème de pagination,
il y a une source qui t'as été donnée là-haut, je ne l'ai pas testée
mais tu nous diras si elle marche bien
0
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
24 août 2005 à 15:48
je suis interessé par l'adresse de ton post sur limit anthomicro
0
cs_zakichane Messages postés 44 Date d'inscription jeudi 23 juin 2005 Statut Membre Dernière intervention 30 novembre 2005
24 août 2005 à 15:49
ok merci j'ai tester le code que coockiesch ma donner, mais j'ai trouvé encore une difficulté pour afficher les resultats, voila mon code jetez un cou d'oeil et aidez moi svp a savoir mes fautes:
<?
include ("connexion.php");
$nb_results_p_page = 5; // 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 test");
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 id,min FROM table LIMIT $start, $nb_results_p_page");
$ret0 = mysql_query ($result) or die (mysql_error ());
while ( $col = mysql_fetch_row ($ret0) )
{
echo '.$col[1].';
}
// 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 '[' . $_SERVER['SCRIPT_NAME'] . ' Première]&nbsp;&nbsp;';

// page précédente
if($courant > 1)
echo '[' . $_SERVER['SCRIPT_NAME'] . '?page=' . ($courant - 1) . ' Précédente]&nbsp;&nbsp;';

// affichage des numéros de page
for($i = $courant - $avant; $i <= $courant + $apres; $i++)
{
// page courante
if($i == $courant)
echo '' . $i . '&nbsp;&nbsp;';
else
echo '[' . $_SERVER['SCRIPT_NAME'] . '?page=' . $i . ' ' . $i . ']&nbsp;&nbsp;';
}

// page suivante
if($courant < $nb_pages)
echo '[' . $_SERVER['SCRIPT_NAME'] . '?page=' . ($courant + 1) . ' Suivante]&nbsp;&nbsp;';

if($derniere && $courant + $apres < $nb_pages)
echo '[' . $_SERVER['SCRIPT_NAME'] . '?page=' . $nb_pages . ' Dernière]&nbsp;&nbsp;';


?>

dans le navigateur il me donnes "Query est vide" tous ça m'a vraiment rendu fou
0
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
24 août 2005 à 15:55
Coucou747 > http://www.phpcs.com/code.aspx?ID=24067

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li>
0
cs_zakichane Messages postés 44 Date d'inscription jeudi 23 juin 2005 Statut Membre Dernière intervention 30 novembre 2005
24 août 2005 à 17:40
oui c le code que j'ai utilisé, mais ça marche pas
0
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
24 août 2005 à 17:48
merci antho, c'est très interessant, mais ça fait de la place de gaspillée, et quand on suprime quelquechose, ça prendra aussi pas mal de temps...
0
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
24 août 2005 à 18:18
la place gaspillée ne prend que dalle par rapport au gain de temps
gagné lors d'une requête. Après pour l'update c'est sûr ça prend du
temps lorsqu'il y a pas mal d'enregistrements (juste quand on déplace
un topic) en même temps ça ne se fait pas souvent, et je préfère perdre
même une seconde une fois par semaine pour déplacer un post plutôt
qu'une seconde lorsque je consulte une page pour afficher les topics ;-)

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li>
0
Rejoignez-nous