IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

La pagination avec deux paramètres [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre du Club Avatar de arti2004
    Inscrit en
    Février 2004
    Messages
    253
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 253
    Points : 53
    Points
    53
    Par défaut La pagination avec deux paramètres
    slt

    Voila j'ai un site pour les annonces toutes categorie . ds une de mes pages l'internaute peut cliquer sur une des categorie (voiture , maison, ...) qui sont comme liens bien sûr ,pour avoir toutes les annonces
    j'ai fais mon code pour la pagination . mon code marche s'il faut ramené tout de la BD

    mon probleme est que lorsque j'insere une requete avec le where ça marche pas (ça marche juste pour l'affichage des dix premiers ensuite il ne peut transmettre le parametre )

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    // requete simple ou ça marche
    $query="SELECT * FROM insere_annonce  "
       ." LIMIT $Ndeb,$Nmax";
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
     
    //avec ce code ça ne marhce plus
    $query="SELECT * FROM insere_annonce where categorie='$rub'  "
       ." LIMIT $Ndeb,$Nmax";

    je sais qu'il faut avoir ds la barre d'adresse les deux liens et le numero de la page du debut & la categorie transmis par GET ....mais je ne sais pas comment qu'il faut écrire pourtant j'ai tout essayé .voiçi comment c'est ecrit

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    // comment ajouter avant le num la categorie en plus j'ai bien utilisé les sessions au debut de ma page
     
    $rub=$_GET['rub'];
     
    <A href="?num=<? echo ($Ndeb+$Nmax).$Lien ?>" >Suivante</A>

  2. #2
    Expert éminent
    Avatar de berceker united
    Profil pro
    SQL
    Inscrit en
    Février 2005
    Messages
    3 495
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : SQL
    Secteur : Finance

    Informations forums :
    Inscription : Février 2005
    Messages : 3 495
    Points : 6 067
    Points
    6 067
    Par défaut
    Citation Envoyé par arti2004
    slt

    Voila j'ai un site pour les annonces toutes categorie . ds une de mes pages l'internaute peut cliquer sur une des categorie (voiture , maison, ...) qui sont comme liens bien sûr ,pour avoir toutes les annonces
    j'ai fais mon code pour la pagination . mon code marche s'il faut ramené tout de la BD

    mon probleme est que lorsque j'insere une requete avec le where ça marche pas (ça marche juste pour l'affichage des dix premiers ensuite il ne peut transmettre le parametre )

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    // requete simple ou ça marche
    $query="SELECT * FROM insere_annonce  "
       ." LIMIT $Ndeb,$Nmax";
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
     
    //avec ce code ça ne marhce plus
    $query="SELECT * FROM insere_annonce where categorie='$rub'  "
       ." LIMIT $Ndeb,$Nmax";

    je sais qu'il faut avoir ds la barre d'adresse les deux liens et le numero de la page du debut & la categorie transmis par GET ....mais je ne sais pas comment qu'il faut écrire pourtant j'ai tout essayé .voiçi comment c'est ecrit

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    // comment ajouter avant le num la categorie en plus j'ai bien utilisé les sessions au debut de ma page
     
    $rub=$_GET['rub'];
     
    <A href="?num=<? echo ($Ndeb+$Nmax).$Lien ?>" >Suivante</A>
    Il faut que ton Nmax soit le nombre d'enregistrement avec ta clause j'en suis sur que tu c'est Nmax total sans clause.

  3. #3
    Membre du Club Avatar de arti2004
    Inscrit en
    Février 2004
    Messages
    253
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 253
    Points : 53
    Points
    53
    Par défaut
    je ne comprends pas ta réponse.

    en plus il me ramene tout sauf qu'il prends pas en consideration la categorie

  4. #4
    Expert éminent
    Avatar de berceker united
    Profil pro
    SQL
    Inscrit en
    Février 2005
    Messages
    3 495
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : SQL
    Secteur : Finance

    Informations forums :
    Inscription : Février 2005
    Messages : 3 495
    Points : 6 067
    Points
    6 067
    Par défaut
    Citation Envoyé par arti2004
    je ne comprends pas ta réponse.

    en plus il me ramene tout sauf qu'il prends pas en consideration la categorie
    Le Nmax retourne le nombre d'enregistrement de quel requte?
    Tu as une reqête sans clause et une avec une clause.
    Exemple :
    Sans clause Nmax = 120
    Avec clause Nmax = ???

  5. #5
    Membre du Club Avatar de arti2004
    Inscrit en
    Février 2004
    Messages
    253
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 253
    Points : 53
    Points
    53
    Par défaut
    je ne vois pas de pb avec le Nmax .
    dans ma requete je l'utilise comme limite et puis il est déclaré au debut de mon script à 10 (nbre de page par page)

  6. #6
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Tu as oublié le paramètre rub dans ta requête :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    $rub=$_GET['rub'];
     
    <A href="?rub=<? echo $rub; ?>&amp;num=<? echo ($Ndeb+$Nmax).$Lien ?>" >Suivante</A>

  7. #7
    Membre du Club Avatar de arti2004
    Inscrit en
    Février 2004
    Messages
    253
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 253
    Points : 53
    Points
    53
    Par défaut
    $amp : c'est quoi?

  8. #8
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Ce n'est pas $amp mais &amp; et c'est l'entité qui correspond à &
    & est le séparateur de parametres dans une url

  9. #9
    Membre du Club Avatar de arti2004
    Inscrit en
    Février 2004
    Messages
    253
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 253
    Points : 53
    Points
    53
    Par défaut
    voila ça marche mais ça bloque au nveau des indices chiffres:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
     
    // Max 9 pages après
    $Npag2 = $Npag;
    while(($Npag2*$Nmax<=$Ntotal)&&($Npag2<$Npag+9)) {
       $Npag2++;
       $tmp .= " <A href='?num=" . ($Npag2-1)*$Nmax . "'>"
          . $Npag2 . "</A>";
    comment inserer ds ce cas ma rubrique rub?

  10. #10
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    T'exagère quand même... Un soupçon d'imagination, un poil de culot et tu aurais pu trouver tout seul :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $tmp .= " <A href='?rub=" . $rub . "&amp;num=" . ($Npag2-1)*$Nmax . "'>" 
            . $Npag2 . "</A>";

  11. #11
    Membre du Club Avatar de arti2004
    Inscrit en
    Février 2004
    Messages
    253
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 253
    Points : 53
    Points
    53
    Par défaut
    C 'est vrai mais un peu saturée . Merci . ça marche impeccable

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Requête paramétrée avec deux paramètres
    Par Le gris dans le forum Requêtes
    Réponses: 4
    Dernier message: 23/08/2012, 11h35
  2. [AC-2007] requête mise à jour avec deux paramètres
    Par gerarddurand dans le forum Requêtes et SQL.
    Réponses: 8
    Dernier message: 15/01/2010, 11h07
  3. [AC-2003] Comment appeler une fonction avec deux paramètres. Erreur '=' attendu
    Par nirG95 dans le forum VBA Access
    Réponses: 1
    Dernier message: 02/09/2009, 10h53
  4. [Visual Web] Query avec deux paramètres
    Par eponette dans le forum NetBeans
    Réponses: 1
    Dernier message: 19/03/2007, 13h44
  5. Procédure stockée avec deux paramètres ADO/ORACLE
    Par zanifu dans le forum Bases de données
    Réponses: 7
    Dernier message: 01/03/2006, 09h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo