Précédent   Forum des professionnels en informatique > PHP > Langage > Débuter
Débuter Forum d'entraide pour débuter en PHP. Avant de poster -> Cours PHP, FAQ PHP, Outils PHP, etc.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 01/09/2011, 18h46   #1
Membre actif
 
Homme
Inscription : octobre 2006
Messages : 664
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Pas de Calais (Nord Pas de Calais)

Informations forums :
Inscription : octobre 2006
Messages : 664
Points : 197
Points : 197
Par défaut Page par page sur plusieurs requêtes ?

Bonjour,

J'ai un formulaire de recherche qui permet d'afficher plusieurs types de résultats selon les cases qui sont cochées.

Je souhaiterai mettre en place un page par page pour l'affichage des résultats de toutes mes requêtes.

Cependant, je ne sais pas trop comment le gérer...

Par exemple, j'ai trois parties affichées :
- Partie 1 avec 5 résultats
- Partie 2 avec 15 résultats
- Partie 3 avec 10 résultats

Je voudrais afficher, pour l'exemple, 7 résultats par page.

Comment le gérer ?

Merci pour votre aide,
ZiP
[ZiP] est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/09/2011, 18h58   #2
Membre Expert
 
Avatar de gene69
 
Inscription : janvier 2006
Messages : 951
Détails du profil
Informations personnelles :
Localisation : France

Informations professionnelles :
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : janvier 2006
Messages : 951
Points : 1 063
Points : 1 063
la façon de faire la moins élégante c'est l'avoir une variable qui te donne le numéro de la page a afficher en sus de tes champs de requête. Celle ci peut être cachée (cf google). Ensuite tu requetes comme d'hab mais tu n'affiche que entre $page*$nb_element_par_page et ($page+1)*$nombre_element_par_page.

Sinon tu peux stoquer le resultat de la requete mais souvent c'est bcp de travail pour rien parce deux recherche à 3 min d'intervalles vont retourner le meme résultat.

Attention ça veut aussi dire que ton moteur de recherche est capable de sortir l'info la plus pertinente en premier.
__________________
PHP fait nativement la validation d'adresse électronique Vous êtes perdu en PHP? rassurez-vous ici (en)
Utilisez le bouton résolu!
gene69 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/09/2011, 19h25   #3
Rédacteur/Modérateur
 
Avatar de Thes32
 
Homme
Développeur Web
Inscription : décembre 2006
Messages : 2 335
Détails du profil
Informations personnelles :
Sexe : Homme

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : décembre 2006
Messages : 2 335
Points : 3 774
Points : 3 774
Salut,

ça s'appel de ma pagination, tu peux t'inspirer de la Comment créer un système de navigation (pagination) ?
__________________
Développeur | Zend Certified Engineer

Étapes Pour mieux se servir du forum:
1. Commencez par lire les cours et tutoriels ;
2. Faites une recherche;
3. Faites un post si rien trouvé dans les deux étapes précédentes en respectant les règles;

Nix>_Rien n'est plus pratique que la théorie
Thes32 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/09/2011, 19h30   #4
Membre habitué
 
Avatar de elvan49
 
Laurent
Développeur Web
Inscription : octobre 2006
Messages : 226
Détails du profil
Informations personnelles :
Nom : Laurent
Localisation : France

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : octobre 2006
Messages : 226
Points : 141
Points : 141
Envoyer un message via Skype™ à elvan49
La question qui se pose aussi est de savoir si tu veux afficher 7 résultats par pages max ou 7 résultats par parties dans une page (donc max 21, dans ton exemple seule la deuxième partie nécessite une page 2).
Dans le deuxième cas, la pagination apparait pour chaque partie, le système est celui proposé par gene69 ou tu ajoutes une couche AJAX qui sera sans doute plus élégante.
Enfin ton AJAX a deux possibilités :
- soit il gère les CSS et la requête a été faite une seule fois mais tu jongle avec des display:none
- soit il relance une requête avec des contraintes de LIMIT
__________________
"n'imprimez ces messages que si nécessaire... Préservez notre planète"
elvan49 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/09/2011, 13h05   #5
Modératrice
 
Avatar de Celira
 
Femme
Développeuse PHP/Java
Inscription : avril 2007
Messages : 3 661
Détails du profil
Informations personnelles :
Sexe : Femme
Âge : 27
Localisation : France

Informations professionnelles :
Activité : Développeuse PHP/Java

Informations forums :
Inscription : avril 2007
Messages : 3 661
Points : 5 388
Points : 5 388
Citation:
Envoyé par elvan49 Voir le message
Enfin ton AJAX a deux possibilités :
- soit il gère les CSS et la requête a été faite une seule fois mais tu jongle avec des display:none
- soit il relance une requête avec des contraintes de LIMIT
Attention au nombre de résultats renvoyés dans le premier cas : si ta requête n'en renverra que 50 ça ira, mais elle en renvoie 50 000, ça risque de "légèrement" impacter la vitess d’affichage...
__________________
Modératrice PHP
Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)

Pour afficher votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur)
Celira est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 18h33.


 
 
 
 
Partenaires

Hébergement Web