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 :

Problème d'affichage par page [Débutant(e)] [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    nal
    nal est déconnecté
    Membre confirmé
    Inscrit en
    Avril 2006
    Messages
    129
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 129
    Par défaut Problème d'affichage par page
    Bonjour,

    Je débute et tente depuis plusieurs jours d'adapter différents scripts pour afficher mes résultats par page.
    La barre de navigation apparait de même que les résultats demandés.
    Mais lors de l'envoi aux pages suivante l'index: communes est indéfini.
    Si quelqu'un peut me dire où je dois transmettre la variable communes aux pages html suivantes Merci d'avance Nal
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
     
    <?php
     $choix5=$_POST['communes'];
    $requete= "SELECT * FROM Cartes_postales WHERE Nom_commune='$choix5'";
            $ret = mysql_query($requete);
     
         $page = isset($_GET['page']) ? $_GET['page'] : '';
     
            $limit=4;
            $debut ="";
            $page = 0;
            if($debut==""){$debut=0;}
            $debut=$page*$limit;
     
            $nb_total=mysql_num_rows($ret);
            // Requete
            $limite=mysql_query("$requete limit $debut,$limit");
     
            $ici =  $_SERVER['PHP_SELF'];
            // Affiche le page par page avec ses liens
            if ($page>0) {
            $precedent=$page-1;
            echo "<a href=\"$ici?page=$precedent\">PRECEDENT</a>";
            }
     
            $i=0;
            $j=1;
     
            if($nb_total>$limit) {
            while($i<($nb_total/$limit)) {
            if($i!=$page){echo "<a href=\"$ici?page=$i\">$j</a> ";}
            else { echo "<b>$j</b>";}
            $i++;$j++;
            }
            }
     
            if($debut+$limit<$nb_total) {
            $suivant=$page+1;
            echo "<a href=\"$ici?page=$suivant\">SUIVANT</a>";
            }
     
     
     
            $limit_str = "LIMIT ". $page * $limit .",$limit";
     
            $result = mysql_query("
                                 SELECT *
                                 FROM Cartes_postales
                                 WHERE Nom_commune='$choix5'
                                 ORDER BY Nom_commune
                                 ASC $limit_str");
            if ($row=mysql_fetch_array($result)){
             echo "<div id=marge_tableau3>";
                            echo "<table id=table2><td id=td7>Titre</td>";
                            echo "<td id=td7>Commune</td>";
                            echo "<td id=td7>Cote</td>";
                            echo "<td id=td7>Date</td>";
                            echo "<td id=td7>Editeur</td>";
                            echo "<td id=td7>Format</td>";
                            echo "<td id=td7>Visibilit&eacute;</td></table><br>";
                            echo "</div>";
      do {
     
                          echo "<div id=marge_tableau4>";
                          echo "<table id=table2><td id=td8><a href=images_cartes.php? cote=".$maligne['Cote_cartes_postales'].">";
                          echo $maligne['Titre_cartes_postales']."</td>";
                          echo "<td id=td5>".$maligne['Nom_commune']."</td>";
                          echo "<td id=td6>".$maligne['Cote_cartes_postales']."</td>";
                          echo "<td id=td5>".$maligne['Date_cartes_postales']."</td>";
                          echo "<td id=td6>".$maligne['Editeur']."</td>";
                          echo "<td id=td5>".$maligne['Format_cartes_postales']."</td>";
                          echo "<td id=td6><a id=a2 href=images_cartes.php?img=".$maligne['Image_cartes_postales'].">";
                     echo "<img src='logo_visibilite.jpg'/></td></table></a><br>"; 
                          echo "</div>";
    }while ($row=mysql_fetch_array($result));
     
    } 
    else {
             echo "Aucun carte postale n'a &eacute;t&eacute; m&eacute;moris&eacute;e pour cette commune!";
     
     }
     
    ?>

  2. #2
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Août 2003
    Messages
    235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2003
    Messages : 235
    Par défaut
    Salut,

    déjà là c'est pas bon:
    $page = isset($_GET['page']) ? $_GET['page'] : '';

    $limit=4;
    $debut ="";
    $page = 0;
    Tu récupères la page, puis ensuite tu l'ecrases. Donc il faut supprimer la mise à zéro de page et remplacer le null par 0 dans la 1ere ligne.

  3. #3
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Août 2003
    Messages
    235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2003
    Messages : 235
    Par défaut
    Salut,

    déjà là c'est pas bon:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
          $page = isset($_GET['page']) ? $_GET['page'] : '';
     
            $limit=4;
            $debut ="";
            $page = 0;
    Tu récupères la page, puis ensuite tu l'ecrases. Donc il faut supprimer la mise à zéro de page et remplacer le null par 0 dans la 1ere ligne.

  4. #4
    nal
    nal est déconnecté
    Membre confirmé
    Inscrit en
    Avril 2006
    Messages
    129
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 129
    Par défaut [débutant]problème d'affichage par page
    J'ai changé ce que tu m'a dit, par contre au sujet de la transmission de l'index 'communes' aux pages suivantes html.
    Pourrais-tu me dire où je dois transmettre la variable?

    Merci Nal

  5. #5
    Membre Expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Par défaut
    Pour transmettre ta variable commune tu as trois possibilités :
    - soit tu passes par un formulaire
    - soit tu la passes toi-même par l'URL : mapage.php?commune=valeur
    - si tu dois propager la valeur à moult pages passe par les sessions

    Mais pour s'en servir il faut aller dans une page PHP et pas HTML.

  6. #6
    nal
    nal est déconnecté
    Membre confirmé
    Inscrit en
    Avril 2006
    Messages
    129
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 129
    Par défaut
    Juste avant de lire ta réponse j'ai changé l'intitulé de ma question:
    en fait les réponses du tableau s'affichent normalement mais je vois pas où je peux transmettre l'index 'communes' du $_POST ['communes] pour que la valeur du formulaire soit transmise aux autres pages.

  7. #7
    Membre Expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Par défaut
    Et ma réponse ne colle pas au problème ?

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 36
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if($i!=$page){echo "<a href=\"$ici?page=$i\">$j</a> ";}
    Deviens:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if($i!=$page){echo "<a href=\"$ici?page=$i&commune=x\">$j</a> ";}
    C'est plus clair comme ça?

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

Discussions similaires

  1. Probléme affichage par page
    Par Jérém08 dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 10/10/2009, 12h12
  2. Moteur de recherche, affichage par page et url rewriting
    Par paupiette dans le forum Langage
    Réponses: 5
    Dernier message: 22/06/2007, 10h45
  3. Réponses: 1
    Dernier message: 17/01/2006, 10h47
  4. [ADSL] Problème d'affichage des pages
    Par adam22 dans le forum Dépannage et Assistance
    Réponses: 9
    Dernier message: 07/12/2005, 14h36

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