Problème de pagination - PHP - Programmation
Marsh Posté le 04-08-2003 à 00:00:08
http://www.phpdebutant.org/article84.php
Décortique, ça pourra t'aider...
Marsh Posté le 04-08-2003 à 00:06:28
Non ca ne va pas car mes résultats a afficher proviennent d'un explode() pi d'un foreach() et non directement de la base sinon joré su faire.
Marsh Posté le 04-08-2003 à 00:11:26
cheinz a écrit : Non ca ne va pas car mes résultats a afficher proviennent d'un explode() et non directement de la base sinon joré su faire. |
désolé, j'avais pas lu ton pavé de code, seulement un peu le texte, j'ai démarré au quart de tour
Sinon, benh il faudrais faire une limitation dans l'affichage, conserver le numéro de la dernière image affiché et le passer en paramètre pour commencer l'affichage suivant. Ca c'est la théorie, j'ai pas de code sous la main, jamais fait ça...
Marsh Posté le 04-08-2003 à 00:15:01
Vui et c la que je blok je c po comment arreter l'affichage a 9 images...
Marsh Posté le 04-08-2003 à 00:33:25
cheinz a écrit : Vui et c la que je blok je c po comment arreter l'affichage a 9 images... |
est ce que tu sais incrémenter une variable?
Est ce que tu sais faire une boucle?
est ce que tu sais utiliser un if ?
oui, aux trois question, alros tu sais limiter a 9 images.
non a l'un des trois, vas donc revoir les premiers courts de phpdebutant.
Marsh Posté le 04-08-2003 à 01:04:35
Oui je c +/- faire les 3 mais la ou g du mal c ou mettre l'incrémentation, la boucle et le if (puisk apparement ya besoin de c 3 choses) ds mon code c surtt ca.
Javé fé un truc avec un while et 2 if (1 si - de 9 images et lotre si + de 9 images) mé le résultat c que ma page fezé planté l'explorateur lol
Mais bon veut bien encore retenté le coup...
Marsh Posté le 04-08-2003 à 02:08:40
cheinz a écrit : Oui je c +/- faire les 3 mais la ou g du mal c ou mettre l'incrémentation, la boucle et le if (puisk apparement ya besoin de c 3 choses) ds mon code c surtt ca. |
L'incrémentation, il faut la mettre dans la boucle et hors des if.
Mais à mon avis le mieux, c'est de faire deux boucles, la première qui sera exécuté 9*(n-1) fois afin de se placer sur la première image à aficher et la seconde qui sera exécuté 9 fois.
Dans la première boucle on passe à l'image suivante sans l'afficher + incrémentation du compteur.
Entre les deux boucles, on remet le compteur a zéro.
Dans la seconde, on passe à l'image suivante et on l'affiche + incrémentation du compteur.
Le nombre n, c'est le numéro de la page demandé. (page 1 les 9 premières image, page 2 les 9 suivantes ...)
Marsh Posté le 03-08-2003 à 23:57:51
<?
$img = explode ("-",$wall_150);
$nb_cell = count ($img);
$nb_colonne = "3";
if ($nb_cell == "0" )
{
echo "Pas de Wallpapers.";
}
else
{
echo "<div align=\"center\">Actuellement <b>$nb_cell</b> wallpapers disponible.</div><br><table width=\"600\" height=\"130\" border=\"0\" align=\"center\" cellpadding=\"2\" cellspacing=\"2\">";
$z="0";
foreach($img AS $clé => $address_img)
{
if ( $z % $nb_colonne == 0 )
{
// si le reste de $z / 3 (le nombre de colonnes
// désirées) égale 0 et que $z n'en est pas à sa
// première itération (pour éviter d'avoir une
// ligne "<tr>" parasite au début, c'est que l'on
// peut commencer une ligne
// on commence une ligne du tableau
echo "<tr>";
};
if($z % $nb_colonne !=0 OR $z % $nb_colonne == 0)
{
// on affiche une cellule
echo '<td align="center" style="border-width:1px;border-color:#660000;border-style:solid"><img src="wallpapers/'.$anime.'/150/'.$address_img.'"></td>';
};
$z++; // on incrémente le compteur
if ( $z % $nb_colonne == 0 OR $z == $nb_cell )
{
// puisque $z a été incrémenté une ligne plus haut,
// la condition ci-dessous recevra une valeure de $z
// différente du début de la boucle, donc on peut
// fermer la ligne
echo "</tr>";
}
}
echo "</table>";
};
?>
Voila g ca pour affiché mes images sous forme de tableau mais ca affiche toutes les images
Est ce que kkun pouré me dire comment modifier ce code pour que, si il y a + de 9 images a affiché ($nb_cell) ca n'en affiche que 9 et avec en dessous un lien vers les otres pages
Je pense pas que ce soit dur mais la je bloque...
Merci a celui qui m'aidera
@++
Cheinz