Pagination php
Federer_
-
Nico_ Messages postés 1302 Statut Membre -
Nico_ Messages postés 1302 Statut Membre -
Bonjour, j'ai un formulaire où l'on selectionne des critere de recherche et à la suite duquel vont s'afficher les resultat dans un tableau. Le probleme est que j'aurai voulu faire une pagination et la première page s'affiche mais la suite rien. En fait j'ai utilisé la methode post et il parait qu'avec cette methode je ne pourrai qu'afficher la 1ère page s'il y a un autre moyen pourriez vous m'aider s'il vous plait
Merci
ps: c'est en php
Merci
ps: c'est en php
A voir également:
- Pagination php
- Pagination powerpoint - Guide
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Sommaire avec pagination - Guide
- Pagination google doc a partir de la page 3 ✓ - Forum Bureautique
4 réponses
slt nico j'aurais je crois ke j'aurai du commencer par là
je repond à la place de federer_parce kil m'a demandé de verifier s'il avai reçu une reponse
merci
je repond à la place de federer_parce kil m'a demandé de verifier s'il avai reçu une reponse
merci
bonsoir,
voici le code à adapter a vos besoins:
bonne soirée
voici le code à adapter a vos besoins:
bonne soirée
<?php //debut
//recupration de $limite
if(isset($_GET['limite']))
$limite=$_GET['limite']; else $limite=0;
function verifLimite($limite,$total,$nombre) {
// je verifie si limite est un nombre.
if(is_numeric($limite)) {
// si $limite est entre 0 et $total, $limite est ok
// sinon $limite n'est pas valide.
if(($limite >=0) && ($limite <= $total) && (($limite%$nombre)==0)) {
// j'assigne 1 $valide si $limite est entre 0 et $max
$valide = 1;
}
else {
// sinon j'assigne 0 $valide
$valide = 0;
}
}
else {
// si $limite n'est pas numrique j'assigne 0 $valide
$valide = 0;
}
// je renvois $valide
return $valide;
}
function affichePages($nb,$page,$total,$gras) {
$nbpages=ceil($total/$nb);
$numeroPages = 1;
$compteurPages = 1;
$limite = 0;
echo 'Page :<br />';
while($numeroPages <= $nbpages) {
if($gras == $numeroPages) {
echo $numeroPages ;
}
else {
// adresse de ton site+ la page qui affiche ses donnees et ?limite= ou &limite (suivant comment fontionne ton site
echo ' <a href="ADRESSE_DE_TON_SITE/?limite='.$limite.'">'.$numeroPages.' </a> ';
}
$limite = $limite + $nb;
$numeroPages = $numeroPages + 1;
$compteurPages = $compteurPages + 1;
if($compteurPages == 10) {
$compteurPages = 1;
echo '<br />'."\n";
}
}
echo '</p>'."\n";
}
//=========================================
// information pour la connection le DB
//=========================================
$base = mysql_connect ('mysql_ou_localhost', 'user', 'mot_de_passe');
mysql_select_db ('base_sql', $base);
$table_sql = "nom_de_la_table";
//=========================================
// initialisation des variables
//=========================================
// on va afficher 3 rsultats par page.
$nombre = 3;
// si limite n'existe pas on l'initialise zro
if (!$limite) $limite = 0;
// on cherche le nom de la page.
$path_parts = pathinfo($_SERVER['PHP_SELF']);
$page = $path_parts["basename"];
$gras = ($limite / $nombre)+1;
//=========================================
// connection la DB
//=========================================
$link = mysql_connect ($host,$user,$pass) or die ('Erreur : '.mysql_error() );
mysql_select_db($db) or die ('Erreur :'.mysql_error());
//=========================================
// requte SQL qui compte le nombre total
// d'enregistrements dans la table.
//=========================================
$select = "SELECT count(*)".$table_sql ;
$result = mysql_query($select,$link) or die ('Erreur : '.mysql_error() );
$row = mysql_fetch_row($result);
$total = $row[0];
//=========================================
// vrifier la validit de notre variable
// $limite;
//=========================================
$verifLimite= verifLimite($limite,$total,$nombre);
// si la limite passe n'est pas valide on la remet zro
if(!$verifLimite) {
$limite = 0;
}
$sql = "SELECT * FROM ".$table_sql." ORDER BY id DESC limit ".$limite.','.$nombre;
// on envoie la requete
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
// on fait une boucle qui va faire un tour pour chaque enregistrements
while($donnees = mysql_fetch_array($req))
{
// on affiche les informations de l'enregistrements en cours
echo '<fieldset><legend>'.$donnees['titre'].'</legend><div class="turcoise_gras">Ecrit :' .$donnees['date'] .'</div><div class="rouge"><strong>' .$donnees['message'].'</strong></div><br /><br /><div class="gris">'.$donnees['datemodif'].'</div></fieldset><br /><br />';
}
// on ferme la connexion mysql
mysql_close();
//=========================================
// si le nombre d'enregistrement afficher
// est plus grand que $nombre
//=========================================
if($total > $nombre) {
// affichage des liens vers les pages
affichePages($nombre,$page,$total,$gras);
}
//fin
?>