Resultats sur plusieurs pages

Signaler
Messages postés
14
Date d'inscription
vendredi 5 septembre 2003
Statut
Membre
Dernière intervention
24 novembre 2006
-
Messages postés
14
Date d'inscription
vendredi 5 septembre 2003
Statut
Membre
Dernière intervention
24 novembre 2006
-
J'envois via un formulaire une recherche sur une table, le résulatat est traité sur une autre page en php, et ainsi j'ai le listing,
le probleme est que j'ai voulu couper le listing en morceaux de 10 resultats par page,
Pour faire cela j'ai d'abords travaillé sur la deuxieme page en mettant les demandes des variables pour la requette directement dans la meme page, ca marche trés bien, mais quand j'ai voulus transmettre les variables via le formulaire c'est ici que tout se gate:
j'explique: la page apres le formulaire donne les resultats normalement (les 10 premiers enregistrements) mais quand je clique pour aller voir la deuxieme page (qui est toujours la même) où j'ajoute simplement nom du fichier.php?page=1
il n'ya plus de resultats.


Ce que je pense, c'est que les variables postées via le formulaires ne sont plus pris en compte.


Comment faire ?


Merci d'avance

apprendre et apprendre toujours

2 réponses

Messages postés
239
Date d'inscription
jeudi 21 juillet 2005
Statut
Membre
Dernière intervention
1 juillet 2007

Coucou ! je passe avant de me coucher ! copie et colle cela dans ton script :) ca affiche via une requete le resultats par page :
Genre :

Ton resultat ici

precedent : 1 - 2 - 3 - 4 - 5 - Suivant etc...

<? include("config.php");
$idmbr= $_GET['idmbr'];
mysql_pconnect($BD_serveur, $BD_utilisateur, $BD_motDePasse)
or die("Impossible de se connecter au serveur de bases de données.");
mysql_select_db($BD_base)
or die("Impossible de se connecter à la base de données.");

$nb_results_p_page = 15; // nombre de résultats par page
$nb_avant = 4; // nombre de page avant la page courante
$nb_apres = 6; // nombre de page après la page courante
$premiere = 1; // aficher le lien "première page" (1 ou 0)
$derniere = 0; // afficher le lien "dernière page" (1 ou 0)
$courant = empty($_GET['page']) ? 1 : $_GET['page']; // page
$start = ($courant - 1) * $nb_results_p_page; // start (requete mysql)

// comptage du nombre de lignes de la base
$result = mysql_query("SELECT count(id) FROM livredor");
if(!$result)
{
exit;
}
$ret = mysql_fetch_array($result);
// nombre de lignes
$nb_results = $ret[0];

// exemple de requete
$result1 = mysql_query("SELECT * FROM livredor LIMIT $start, $nb_results_p_page");


//---------> ici par exemple tu peux mettre ta requete :) avec fetch array un while par //exemple

// nombre total de pages
$nb_pages = ceil($nb_results / $nb_results_p_page);
// nombre de pages avant
$avant = $courant > ($nb_avant + 1) ? $nb_avant : $courant - 1;
// nombre de pages après
$apres = $courant <= $nb_pages - $nb_apres ? $nb_apres : $nb_pages - $courant;

// première page
if($premiere && $courant - $avant > 1)
echo '[' . $_SERVER['SCRIPT_NAME'] . ' Première]&nbsp;&nbsp;';

// page précédente
if($courant > 1)
echo '[' . $_SERVER['SCRIPT_NAME'] . '?page=' . ($courant - 1) . ' Précédente]&nbsp;&nbsp;';

// affichage des numéros de page
for($i = $courant - $avant; $i <= $courant + $apres; $i++)
{
// page courante
if($i == $courant)
echo '' . $i . '&nbsp;&nbsp;';
else
echo '[' . $_SERVER['SCRIPT_NAME'] . '?page=' . $i . ' ' . $i . ']&nbsp;&nbsp;';
}

// page suivante
if($courant < $nb_pages)
echo '[' . $_SERVER['SCRIPT_NAME'] . '?page=' . ($courant + 1) . ' Suivante]&nbsp;&nbsp;';

if($derniere && $courant + $apres < $nb_pages)
echo '[' . $_SERVER['SCRIPT_NAME'] . '?page=' . $nb_pages . ' Dernière]&nbsp;&nbsp;';


?>
Messages postés
14
Date d'inscription
vendredi 5 septembre 2003
Statut
Membre
Dernière intervention
24 novembre 2006

Merci pour votree réponse, j'ai résolu le problème justeapres avoir posté, j'avais oublier de faire passer les variable via l'url
resultat.php?$nature=nature&$objet=objet

C'est gentil et ca fais bon au coeur d"appartenir à une communauté.

apprendre et apprendre toujours