Filtrage et Pagination

cs_lilj Messages postés 203 Date d'inscription dimanche 13 décembre 2009 Statut Membre Dernière intervention 1 avril 2012 - 1 avril 2010 à 14:34
cs_lilj Messages postés 203 Date d'inscription dimanche 13 décembre 2009 Statut Membre Dernière intervention 1 avril 2012 - 2 avril 2010 à 18:34
Bonjour, voila j'ai lu un tuto pour pouvoir mettre en place une pagination automatique, mais voilà à tout cela je dois ajouter un filtrage.
je m'explique, j'ai un tableau qui se crée à partir d'une base de données, ma pagination marche très bien, mais maintenant je veux qu'on puisse filtrer les lignes en fonction d'une colonne. Au niveau SQL cela ce traduit par un order by mais mêlés à une pagination ça ne marche pas. Voilà un extrait de mon code.
/*Pagination automatique */
 // Calcul du nombre de pages
$retour_total=mysql_query('SELECT COUNT(*) AS total FROM demande');
$donnees_total=mysql_fetch_assoc($retour_total);
$total=$donnees_total['total'];
$messagesParPage=10;
$nombreDePages=ceil($total/$messagesParPage);
// Gestion des pages
if(!isset($_GET['p']) or $_GET['p']<1)
{
$pageActuelle=1; 
}
elseif ($_GET['p']>$nombreDePages)
{
 $pageActuelle=$nombreDePages;
}
else
{
$pageActuelle=intval($_GET['p']);
}
 // Gestion des enregistrements
$premiereEntree=($pageActuelle-1)*$messagesParPage;
if (isset($_POST['filtrage']) or isset($_POST['keepfiltre']))
{
if (!isset($_POST['keepfiltre']))
{
$requete = "SELECT * FROM demande order by ".$_POST['filtrage']." DESC LIMIT ".$premiereEntree.", ".$messagesParPage;
echo "
</table>

<?php
// Affichage page
echo '
for($i=1; $i<=$nombreDePages; $i++)
{
   // Récup page actuelle pour style spécial
     if($i==$pageActuelle)
     {
         echo ' [ '.$i.' ] '; 
     }	
     else
     {
          echo '&nbsp[indext.php?page=demande&p='.$i.' '.$i.']';
     }
}

';


Le filtre est bien fait lorsque que je clique sur "filtrer" mais il suffit que je change de page pour qu'il ne filtre plus alors que j'ai utilisé un input caché pour préserver ce tri. Quelqu'un pourrait m'indiquer ou se situe le problème ??
PS: C'est un form plus haut dans la page qui me permet d'effectuer le tri ^^
A voir également:

1 réponse

cs_lilj Messages postés 203 Date d'inscription dimanche 13 décembre 2009 Statut Membre Dernière intervention 1 avril 2012 5
2 avril 2010 à 18:34
Personne ne peut m'aider ?!! Un sujet identique est sur une autre page ??
0
Rejoignez-nous