Compteur de page

Eléphant du PHP | 226 Messages

20 oct. 2009, 12:39

Bonjour,

Je dois mettre en place un compteur de page selon si l'utilisateur va à la page suivante ou précédente. Il se rend sur la page suivante, cela incrémente le compteur. Si c'est la page précédente, désincrémentation du compteur.
Sur les liens ciblant les pages, j'ai rajouté une variable "repère":
<a href="...'&whatPage=moins">Page précédente</a>
<a href="...'&whatPage=plus">Page Suivante</a>
Ensuite, j'initialise une variable compteur:
$numeroPage=1;
//traitement de la var transmise par page
$whatPage= isset($_GET['whatPage']) ? $_GET['whatPage'] : null; 
//Identification du contenu de la var $whatPage et selon, incrémentation ou désincrémentation de $numeroPage
switch($whatPage){
 case 'plus':
$numeroPage = $numeroPage + 1;
 break;
 case 'moins':
$numeroPage = $numeroPage - 1;
 break;
 default:
$numeroPage =1;
}
mais ça ne marche pas, pourquoi ?
merci,
«Le matin, quand il t’en coûte de te réveiller, que cette pensée te soit présente: c’est pour faire œuvre d’homme que je m’éveille.»
Marc Aurèle.

Mammouth du PHP | 985 Messages

20 oct. 2009, 13:18

Car dans ton script la variable $numeroPage est toujours égale à 1.
Il faut transmettre sa valeur dans chaque nouvelle page par exemple grace au $_GET que tu utilises déjà.

Exemple:
$numeroPage = (isset($_GET['id'])) ? $_GET['id'] : '1';
$whatPage = (isset($_GET['whatPage'])) ? $_GET['whatPage'] : null;

if (isset($whatPage)) {
$numeroPage = ($whatPage == moins) ? $numeroPage - 1 : $numeroPage + 1;
}

echo '<a href="...?id=' . $numeroPage . '&whatPage=moins">Page précédente</a>
<a href="...?id=' . $numeroPage . '&whatPage=plus">Page Suivante</a>';
Je n'ai pas testé, mais c'est l'idée suivant ton exemple de script :wink:
Face à la roche, le ruisseau l'emporte toujours, non pas par la force mais par la persévérance.

Eléphant du PHP | 226 Messages

20 oct. 2009, 15:56

J'ai testé et ça marche bien! Merci beaucoup! Sûr que ça ne pouvait pas marcher si je ne passais pas la ver requise dans l'url... #-o
«Le matin, quand il t’en coûte de te réveiller, que cette pensée te soit présente: c’est pour faire œuvre d’homme que je m’éveille.»
Marc Aurèle.