Problème de code de pagination en PHP

Résolu/Fermé
tybmhi Messages postés 200 Date d'inscription dimanche 13 juillet 2008 Statut Membre Dernière intervention 18 septembre 2017 - 7 août 2008 à 16:28
tybmhi Messages postés 200 Date d'inscription dimanche 13 juillet 2008 Statut Membre Dernière intervention 18 septembre 2017 - 7 août 2008 à 17:47
Bonjour,

Je vais essayer d'être le plus clair possible dans l'explication de mon problème.

J'ai créer une page nommé "commentparpseudo.php" avec une pagination automatique pour pouvoir afficher des données (d'une base de donnée) sans créer physiquement plusieurs pages.
Lorsqu'on arrive sur ma page tout semble fonctionner correctement. On voit: "Page : 1 2 3...etc " avec exactement le nombre de données par page que j'ai indiqué.
Le problème est que lorsqu'on clique sur un numéro de page(peu importe lequel) il ne m'affiche plus aucune données.

En fait je crois qu'il perd la variable indiquée ci-dessous en gras. Cela fait longtemps que j'essaie mais ca coince toujours.
Merci d'avance.

je précise que $_POST['choisirauteur'] est récupérer d'un menu déroulant d'une page nommée "commentpost.php"

Voici mon code ( je suis un ultra débutant en php) :

<?php
include ('../../repetition/bdd.php');
$_POST['choisirauteur']=$pseudo;

// --------------- Etape 2 -----------------
// On écrit les liens vers chacune des pages
// -----------------------------------------

// On met dans une variable le nombre de messages qu'on veut par page
$nombreDeMessagesParPage = 5; // Essayez de changer ce nombre pour voir :o)
// On récupère le nombre total de messages
$retour = mysql_query("SELECT COUNT(*) AS nb_messages FROM commentpost WHERE pseudodupost='$pseudo'");
$donnees = mysql_fetch_array($retour);$totalDesMessages = $donnees['nb_messages'];
// On calcule le nombre de pages à créer
$nombreDePages = ceil($totalDesMessages / $nombreDeMessagesParPage);
// Puis on fait une boucle pour écrire les liens vers chacune des pages
?>
<p class="numeropage6">
<?php
echo 'Page : ';
for ($i = 1 ; $i <= $nombreDePages ; $i++)
{
echo '<a href="commentparpseudo.php?page=' . $i . '">' . $i . '</a> ';
}
?>

</p>
<p class=apparition>
<?php


// --------------- Etape 3 ---------------
// Maintenant, on va afficher les messages
// ---------------------------------------

if (isset($_GET['page']))
{
$page = $_GET['page']; // On récupère le numéro de la page indiqué dans l'adresse (livreor.php?page=4)
}
else // La variable n'existe pas, c'est la première fois qu'on charge la page
{
$page = 1; // On se met sur la page 1 (par défaut)
}

// On calcule le numéro du premier message qu'on prend pour le LIMIT de MySQL
$premierMessageAafficher = ($page - 1) * $nombreDeMessagesParPage;

$reponse = mysql_query("SELECT * FROM commentpost WHERE pseudodupost='$pseudo' ORDER BY id DESC LIMIT $premierMessageAafficher, $nombreDeMessagesParPage"); // Requête SQL
$lyricspost=nl2br($lyricspost);

// On fait une boucle pour lister tout ce que contient la table :

while ($donnees = mysql_fetch_array($reponse) )
{
$pseudo=$_POST['choisirauteur'];
?>
<strong><span class="fixe">Commentaire fait par : </strong></span><span style="color:darkblue; font-weight:bolder;"> <?php echo $donnees['pseudo']; ?></span><br/>
<span class="fixe">concernant le message n° : </span> <?php echo $donnees['numeromsg']; ?><br/><br/>
<span class="fixe">Commentaires :</span> <br/><?php echo $donnees['message']; ?><br/><br/>
<a href="commentparpseudo.php#haut"> HAUT <img src="image/fleche.gif" style="border:none;"></a><br/>
<span class="lignepost"><img src="image/ligne2.gif" alt="separation" style="height:2px; width:15cm; position:absolute; left:0cm;"/></span><br/><br/><?php
}
mysql_close(); // Déconnexion de MySQL
?></p>
A voir également:

2 réponses

tybmhi Messages postés 200 Date d'inscription dimanche 13 juillet 2008 Statut Membre Dernière intervention 18 septembre 2017 12
7 août 2008 à 16:41
Je précise encore que j'ai ce même code sans la condition " WHERE pseudodupost='$pseudo' " sur une autre page et là tout fonctionne très bien.
1
tybmhi Messages postés 200 Date d'inscription dimanche 13 juillet 2008 Statut Membre Dernière intervention 18 septembre 2017 12
7 août 2008 à 17:47
Sil vous plait aidez-moi ! help !
1