PAGINATION TRÈS SIMPLE: PAGE SUIVANTE, PRÉCÉDENTE, MARQUAGE DE LA PAGE OÙ L'ON E

Dr_J_Dre Messages postés 5 Date d'inscription mercredi 31 décembre 2003 Statut Membre Dernière intervention 2 août 2004 - 2 août 2004 à 03:07
begueradj Messages postés 273 Date d'inscription dimanche 4 octobre 2009 Statut Membre Dernière intervention 24 juin 2014 - 16 mars 2011 à 13:46
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/25053-pagination-tres-simple-page-suivante-precedente-marquage-de-la-page-ou-l-on-est

begueradj Messages postés 273 Date d'inscription dimanche 4 octobre 2009 Statut Membre Dernière intervention 24 juin 2014 9
16 mars 2011 à 13:46
ce code est ani-islam
cs_Jashugal Messages postés 2 Date d'inscription lundi 19 juin 2006 Statut Membre Dernière intervention 22 juillet 2008
22 juil. 2008 à 20:57
Ben, de rien c'est fait pour : )
cs_marial Messages postés 13 Date d'inscription jeudi 1 février 2007 Statut Membre Dernière intervention 5 juin 2007
21 juil. 2008 à 10:57
Bonjour Jashugal !

Merci pour ton bout de code corrigé, il est parfait, impect et cela m'a vraiment aidé pour mes systèmes de paginations.

Mile fois merci ton code fonctionne à merveille chez moi
gigaprint Messages postés 2 Date d'inscription mardi 22 août 2006 Statut Membre Dernière intervention 6 septembre 2006
31 août 2006 à 00:34
Salut à tous,
J'ai beau chercher pourquoi ce script ne marche pas et je ne vois rien, voilà le problème :
J'affiche bien la première page de ma requete, j'y trouve bien le bon nombre d'enregistrements, tous les liens apparaissent bien mais impossible d'afficher les autres pages.
L'url des liens semble bonne .../pagination.php?where=2 ou 3, etc. mais je reste sur la première page ?

J'ai testé plusieurs scripts de pagination, ça parait enfantin au départ et pourtant ça coince toujours à ce niveau là. Y a un truc que je pige pas !

Un tutorial sur le sujet serait le bienvenu !

Merci de votre aide.
rakizm Messages postés 80 Date d'inscription lundi 19 juin 2006 Statut Membre Dernière intervention 16 février 2008
21 juil. 2006 à 14:40
sorry les mecs c'est ma requete qui est tres compliquée :( au fait pour mon affichage j'utilise X>1 requètes en utilisant votre systeme j'applique la limite aux X requètes une apres une . le resultat final ne sera pas forcement celui attendu???!! non? si vous aves des astuces j'attend.
rakizm Messages postés 80 Date d'inscription lundi 19 juin 2006 Statut Membre Dernière intervention 16 février 2008
21 juil. 2006 à 13:49
je suis désolé les gars mais c'est pas la bonne formule essayez avec
$news_par_pages = 15 ; par exemple
vous comprendrez ;)

ce que j'ai pas compris c pourquoi à la première page il m'affiche tous les résultats????? ôô
cs_Jashugal Messages postés 2 Date d'inscription lundi 19 juin 2006 Statut Membre Dernière intervention 22 juillet 2008
19 juin 2006 à 21:30
Voila le code corrigé (du moins, qui marche chez moi puisqu'il ne marchait pas tel quel) :

<?php

// Cette pagination est présente sur la page pagination.php (c'est un exemple bien sûr...)

// On se connecte à la base de données via une include (modifiez le nom du fichier)
include('includes/data.inc.php');

// Il faut connaitre le nombre total de news (par exemple) que vous avez...
$req1 = mysql_query('SELECT COUNT(*) FROM news');
$nbnews = mysql_fetch_row($req1);
$nbnews = $nbnews[0];

//Le nombre de news que l'on veut par page
$news_par_pages = 1;

//On fait donc la moyenne pour savoir combien il y aura de pages
$moy = $nbnews/$news_par_pages;

//Ensuite, il nous faut un chiffre rond, et pour cela il y a une fonction formidable qui
// arrondi un nombre décimal au nombre entier suppérieur, ceil() !
$sit = ceil($moy);

//Il faut maintenant afficher vos pages...
//Ici, pour avoir un max de clarté j'ai mis le minimum d'html, mais rien ne vous empeche
//de mettre des tableaux, des couleurs etc...

if (!($where)) // Si $where n'existe pas il est égal à un
{
$where=1;
}

//La formule (magique, si vous voulez)

$min = ($where-1) * $news_par_pages;

$req2 = mysql_query("SELECT * FROM news LIMIT $min,$news_par_pages");

while ($ligne=mysql_fetch_array($req2))
{
$contenu= nl2br($ligne['contenu']);
echo"$contenu
";
}

echo '
';

$start = 1;

//Si $where est strictement plus grand que 1, alors il faut un bouton précédent

if ($where>=2)
{

$pre = $where-1;
echo " < ";

}

while ($start < $where)
{

echo "";
echo $start++;
echo " ";
}

echo " $where ";

$nwhere =$where+1;

while ($nwhere <= $sit)
{

echo "";
echo $nwhere++;
echo " ";
}

if ($where < $sit)
{

$sui= $where+1;

echo " > ";

}
?>

++++ et bonne soirée
bourgi220 Messages postés 21 Date d'inscription samedi 27 mars 2004 Statut Membre Dernière intervention 30 août 2006
5 août 2004 à 12:34
tu comprends vraiment rien à rien... j'ai même écrit (dans ma source) que j'avais spécialement écrit cette source pour la poster sur ce site... donc j'ai pas "copier coller" une des pages de mon site!
alors avant de critiquer lis au moins ce que j'ai écrit!

quand je mets "include('votreconnection.php');" je vois pas en quoi ca te gene... je dis simplement qu'il faut se connecter à la base de donnée... puis je mets
$req=mysql_query("SELECT * FROM news"); et je dis que news est un exemple et quil faut le remplacer par la table voulue!
alors je crois que le débat est clos... t'as dit tout simplement n'importe quoi!
cs_GRenard Messages postés 1662 Date d'inscription lundi 16 septembre 2002 Statut Membre Dernière intervention 30 juillet 2008 1
2 août 2004 à 16:44
Tout le monde réagit comme ca... vraiment c'est rendu nul...
Si je te copiais collais des sources de mon site juste pour dire "regarder c'est comme ca que ca marche" avec des 20aine d'include que tu n'as pas le fichier, des connexion dont tu n'as pas la base de données... ca serait tout simplement nul. Avant de poster un code, il faut s'assurer que celui-ci fonctionne simplement en l'executant ! C'est la moindre des choses ! Sinon c'est chiant, il faut tout vider le code des choses inutiles.
bourgi220 Messages postés 21 Date d'inscription samedi 27 mars 2004 Statut Membre Dernière intervention 30 août 2006
2 août 2004 à 15:16
Dr_J_Dre> where est une variable présente dans l'adresse qui indique à quelle page on se trouve... la valeur par défault est 1 (page une...)

GRenard> peut-être que ma présentation n'est pas parfaite mais je pense que il y a une manière plus sympathique de le dire...

Et puis je voudrais pas parraître désagréable mais: " si tu veux que je réponde et te donner de bonnes suggestions, tu vas commencer par modifier ton code en enlevant les surplus inutiles (include, mysql...) et fournir dans des variables constantes les valeurs de test de réception...
Si tu fais ca, je regarderai !", tu sais moi j'ai mis cette source pour ceux qui en ont besoin... après ceux qui veulent me donner des conseils, bin c'est bien sympas et je les en remercie mais ceux à qui il faut lècher les bottes pour soutirer qques conseils ils peuvent franchement aller se faire voir...
allé a++ sans rancune
willinfeo Messages postés 55 Date d'inscription vendredi 25 juillet 2003 Statut Membre Dernière intervention 4 décembre 2005
2 août 2004 à 12:48
Salut à tous,
pas mal comme code, ya des commentaires meme si au niveau presentation c'est pas parfait. Par contre dire que tout tourne autour de ceil, c'est un peu exagerer. Pour arrondir une valeur, y a d'autres possibilites.
Mais bon, c'est pour DEBUTANT, donc soyons indulgeants, n'est-ce pas Jean-Sebastien. Au fait tu pourras corriger mes devoirs qd aura 5 mn. Qu'est-ce qu'on deviendrait si GRenard n'etait pas la.

Bon courage bourgi220
cs_GRenard Messages postés 1662 Date d'inscription lundi 16 septembre 2002 Statut Membre Dernière intervention 30 juillet 2008 1
2 août 2004 à 05:04
Mauvais, si tu veux que je réponde et te donner de bonnes suggestions, tu vas commencer par modifier ton code en enlevant les surplus inutiles (include, mysql...) et fournir dans des variables constantes les valeurs de test de réception...
Si tu fais ca, je regarderai !
Dr_J_Dre Messages postés 5 Date d'inscription mercredi 31 décembre 2003 Statut Membre Dernière intervention 2 août 2004
2 août 2004 à 03:07
excuse moi mais t'affecte quelle valeur à la variable $where .... par défaut c'est zéro?
Rejoignez-nous