Ma pagination ne s'arrete pas
Résolu
Michel300969
Messages postés
7
Date d'inscription
Statut
Membre
Dernière intervention
-
Michel300969 Messages postés 7 Date d'inscription Statut Membre Dernière intervention -
Michel300969 Messages postés 7 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
je rencontre un soucis avec ma pagination le nombre de page s'affiche correctement
mais le limit ne s'arrete pas a 50 titres par page comme demandé.
il m'affiche la liste complète de mes films 336!
Merci d'avance
voici la requete
[code]
mysql_select_db($database_fmt, $fmt);
$Recordset1 = mysql_query($query_Recordset1, $fmt) or die(mysql_error());
$row_Recordset1 = mysql_fetch_assoc($Recordset1);
$totalRows_Recordset1 = mysql_num_rows($Recordset1);
$totaldefilms = mysql_num_rows($Recordset1);
$Nbr_Enrg = mysql_num_rows($Recordset1);
//Nous allons maintenant compter le nombre de pages.
$nombreDePages=ceil($Nbr_Enrg/$LigneParPage);
//echo "nombr page : ".$nombreDePages;
if(isset($_GET['page'])) // Si la variable $_GET['page'] existe...
{
$pageActuelle=intval($_GET['page']);
$premier = ($pageActuelle-1)*$LigneParPage;
if($pageActuelle>$nombreDePages) // Si la valeur de $pageActuelle (le numéro de la page) est plus grande que $nombreDePages...
{
$pageActuelle=$nombreDePages;
$premier = ($pageActuelle-1)*$LigneParPage;
}
}
else // Sinon
{
$pageActuelle=1; // La page actuelle est la n°1
$premier = ($pageActuelle-1)*$LigneParPage;
}
mysql_select_db($database_fmt, $fmt);
$Recordset1 = mysql_query($query_Recordset1, $fmt) or die(mysql_error());
$query_Recordset1 = "SELECT TitreVF, GENRE FROM " . $nom_table . " ORDER BY TitreVF ASC, Genre ASC LIMIT " .$premier. ',' .$LigneParPage;
//echo $query_Recordset1;
$row_Recordset1 = mysql_fetch_assoc($Recordset1);
$totalRows_Recordset1 = mysql_num_rows($Recordset1);
/code
je rencontre un soucis avec ma pagination le nombre de page s'affiche correctement
mais le limit ne s'arrete pas a 50 titres par page comme demandé.
il m'affiche la liste complète de mes films 336!
Merci d'avance
voici la requete
[code]
mysql_select_db($database_fmt, $fmt);
$Recordset1 = mysql_query($query_Recordset1, $fmt) or die(mysql_error());
$row_Recordset1 = mysql_fetch_assoc($Recordset1);
$totalRows_Recordset1 = mysql_num_rows($Recordset1);
$totaldefilms = mysql_num_rows($Recordset1);
$Nbr_Enrg = mysql_num_rows($Recordset1);
//Nous allons maintenant compter le nombre de pages.
$nombreDePages=ceil($Nbr_Enrg/$LigneParPage);
//echo "nombr page : ".$nombreDePages;
if(isset($_GET['page'])) // Si la variable $_GET['page'] existe...
{
$pageActuelle=intval($_GET['page']);
$premier = ($pageActuelle-1)*$LigneParPage;
if($pageActuelle>$nombreDePages) // Si la valeur de $pageActuelle (le numéro de la page) est plus grande que $nombreDePages...
{
$pageActuelle=$nombreDePages;
$premier = ($pageActuelle-1)*$LigneParPage;
}
}
else // Sinon
{
$pageActuelle=1; // La page actuelle est la n°1
$premier = ($pageActuelle-1)*$LigneParPage;
}
mysql_select_db($database_fmt, $fmt);
$Recordset1 = mysql_query($query_Recordset1, $fmt) or die(mysql_error());
$query_Recordset1 = "SELECT TitreVF, GENRE FROM " . $nom_table . " ORDER BY TitreVF ASC, Genre ASC LIMIT " .$premier. ',' .$LigneParPage;
//echo $query_Recordset1;
$row_Recordset1 = mysql_fetch_assoc($Recordset1);
$totalRows_Recordset1 = mysql_num_rows($Recordset1);
/code
A voir également:
- Ma pagination ne s'arrete pas
- Pagination powerpoint - Guide
- Huawei mobile service s'arrête systématiquement - Forum Xiaomi
- Quickstep android s'arrête systématiquement ✓ - Forum Téléphones & tablettes Android
- Le fichier de pagination est insuffisant pour terminer cette opération ✓ - Forum Logiciels
- Paramètre s'arrête systématiquement samsung - Forum Samsung
7 réponses
Bonjour,
Pourrais-tu nous faire un echo sur ta requête ($query_Recordset1) afin de voir ce que ça donne une fois le php interprété ?
Pourrais-tu nous faire un echo sur ta requête ($query_Recordset1) afin de voir ce que ça donne une fois le php interprété ?
Bonjour
merci pour ta réponse
voila le Echo de (Squery_Recordset1)
SELECT TitreVF, GENRE FROM films ORDER BY TitreVF ASC, Genre ASC LIMIT 0,50
quand je met mon filtre en place pour ne voir que les comédies par exemple le nombre de page s'affiche correctement aussi (3) mais sa m'affiche les 148 films d'un coup
merci pour ta réponse
voila le Echo de (Squery_Recordset1)
SELECT TitreVF, GENRE FROM films ORDER BY TitreVF ASC, Genre ASC LIMIT 0,50
quand je met mon filtre en place pour ne voir que les comédies par exemple le nombre de page s'affiche correctement aussi (3) mais sa m'affiche les 148 films d'un coup
Salut prend celui ci il fonctionne
<?php
$messagesParPage=5; //Nombre de vidéo
$retour_total=mysql_query('SELECT COUNT(*) AS total FROM <A modifier> '); //Nous récupérons le contenu de la requête dans $retour_total
$donnees_total=mysql_fetch_assoc($retour_total); //On range retour sous la forme d'un tableau.
$total=$donnees_total['total']; //On récupère le total pour le placer dans la variable $total.
//Nous allons maintenant compter le nombre de pages.
$nombreDePages=ceil($total/$messagesParPage);
if(isset($_GET['page'])) // Si la variable $_GET['page'] existe...
{
$pageActuelle=intval($_GET['page']);
if($pageActuelle>$nombreDePages) // Si la valeur de $pageActuelle (le numéro de la page) est plus grande que $nombreDePages...
{
$pageActuelle=$nombreDePages;
}
}
else // Sinon
{
$pageActuelle=1; // La page actuelle est la n°1
}
$premiereEntree=($pageActuelle-1)*$messagesParPage; // On calcul la première entrée à lire
// La requête sql pour récupérer les messages de la page actuelle.
$retour_messages=mysql_query('SELECT * FROM <A modifier> ORDER BY id DESC LIMIT '.$premiereEntree.', '.$messagesParPage.'');
while($donnees_messages=mysql_fetch_assoc($retour_messages)) // On lit les entrées une à une grâce à une boucle
{
//Je vais afficher les messages dans des petits tableaux. C'est à vous d'adapter pour votre design...
//De plus j'ajoute aussi un nl2br pour prendre en compte les sauts à la ligne dans le message.
echo '<table width="400" border="0" align="center" cellpadding="0" cellspacing="0">
<A modifier>
</table><br />';
//J'ai rajouté des sauts à la ligne pour espacer les messages.
}
echo '<p align="center">Page : '; //Pour l'affichage, on centre la liste des pages
for($i=1; $i<=$nombreDePages; $i++) //On fait notre boucle
{
//On va faire notre condition
if($i==$pageActuelle) //Si il s'agit de la page actuelle...
{
echo ' [ '.$i.' ] ';
}
else //Sinon...
{
echo ' <a href="tuto.php?id='.$id.'&page='.$i.'">'.$i.'</a> ';
}
}
echo '</p>';
?>
C'est un code que j'utilise pour les coms mais peut facilement s'adapter
<A modifier> --> Il faut que tu adapte en fonction de ta table
<?php
$messagesParPage=5; //Nombre de vidéo
$retour_total=mysql_query('SELECT COUNT(*) AS total FROM <A modifier> '); //Nous récupérons le contenu de la requête dans $retour_total
$donnees_total=mysql_fetch_assoc($retour_total); //On range retour sous la forme d'un tableau.
$total=$donnees_total['total']; //On récupère le total pour le placer dans la variable $total.
//Nous allons maintenant compter le nombre de pages.
$nombreDePages=ceil($total/$messagesParPage);
if(isset($_GET['page'])) // Si la variable $_GET['page'] existe...
{
$pageActuelle=intval($_GET['page']);
if($pageActuelle>$nombreDePages) // Si la valeur de $pageActuelle (le numéro de la page) est plus grande que $nombreDePages...
{
$pageActuelle=$nombreDePages;
}
}
else // Sinon
{
$pageActuelle=1; // La page actuelle est la n°1
}
$premiereEntree=($pageActuelle-1)*$messagesParPage; // On calcul la première entrée à lire
// La requête sql pour récupérer les messages de la page actuelle.
$retour_messages=mysql_query('SELECT * FROM <A modifier> ORDER BY id DESC LIMIT '.$premiereEntree.', '.$messagesParPage.'');
while($donnees_messages=mysql_fetch_assoc($retour_messages)) // On lit les entrées une à une grâce à une boucle
{
//Je vais afficher les messages dans des petits tableaux. C'est à vous d'adapter pour votre design...
//De plus j'ajoute aussi un nl2br pour prendre en compte les sauts à la ligne dans le message.
echo '<table width="400" border="0" align="center" cellpadding="0" cellspacing="0">
<A modifier>
</table><br />';
//J'ai rajouté des sauts à la ligne pour espacer les messages.
}
echo '<p align="center">Page : '; //Pour l'affichage, on centre la liste des pages
for($i=1; $i<=$nombreDePages; $i++) //On fait notre boucle
{
//On va faire notre condition
if($i==$pageActuelle) //Si il s'agit de la page actuelle...
{
echo ' [ '.$i.' ] ';
}
else //Sinon...
{
echo ' <a href="tuto.php?id='.$id.'&page='.$i.'">'.$i.'</a> ';
}
}
echo '</p>';
?>
C'est un code que j'utilise pour les coms mais peut facilement s'adapter
<A modifier> --> Il faut que tu adapte en fonction de ta table
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour
Extrait de ton code :
Tu ne mets le LIMIT dans ta requête qu'APRÈS l'avoir exécutée. C'est normal que le LIMIT n'agisse pas, le LIMIT vient trop tard.
Extrait de ton code :
$Recordset1 = mysql_query($query_Recordset1, $fmt) or die(mysql_error()); $query_Recordset1 = "SELECT TitreVF, GENRE FROM " . $nom_table . " ORDER BY TitreVF ASC, Genre ASC LIMIT " .$premier. ',' .$LigneParPage;
Tu ne mets le LIMIT dans ta requête qu'APRÈS l'avoir exécutée. C'est normal que le LIMIT n'agisse pas, le LIMIT vient trop tard.