Partage
  • Partager sur Facebook
  • Partager sur Twitter

Boucle while

Le coiffeur a tout loupé... ça boucle pas !!! :'(

    5 avril 2006 à 21:21:39

    Salut les zér0s,

    Après de nombreux essais (tous aussi mauvais les uns que les autres), la boucle while me fait profondemment ch*** :colere:

    Pour ne pas tourner autour du pot et cracher le morceau avant de faire un spitch de 10 lignes (oops c'est déjà ce que je fais), le problème est qu'il n'affiche pas toutes les données présentes dans ma base de données !
    Il n'affiche qu'une entrée, la première ... o_O
    Le code est le suivant:

    <center>
    <?php
    session_start(); //On ouvre la session pour pouvoir verifier si le membre est connecté

    if (!isset($_SESSION['pseudo'])) //Le code pour verifier qu'une session existe
    {
            die('Vous n êtes pas autorisez à acceder à cette page.');
    }

    $pseudo_membre = $_SESSION['pseudo'];
    $requete = mysql_query("SELECT * FROM pdf_membre WHERE pseudo='$pseudo_membre'"); //On sélectionne toutes les données appartenant au pseudo du connecté
    $result = mysql_fetch_array ($requete);
    $pseudo = $result['pseudo'];
    $equipe = $result['equipe'];

    $requete = mysql_query("SELECT * FROM joueurs WHERE equipe='$equipe'"); //On sélectionne toutes les données appartenant à cette équipe
    $result = mysql_fetch_array ($requete);

    $joueur = $result['joueur'];
    $points = $result['points'];
    ?>
     <table>
     <tr>
     <th> <p class="texte">Joueur </th>
     <th> <p class="texte">Points </th>
     </tr>
     <?php
    while($boucle = mysql_fetch_array($result));
     ?>
     <td><center><p class="texte"><?php echo $joueur ?></td>
     <td><p class="texte"><? echo $points ?> </td>
    </td>
     </tr>
            <?
            ;
                    ?>
                    </table>
    <a href="http://www.festifoot.info/membres.php?page=renommer">Renommer mes joueurs</a>   


    J'ai utilisé la boucle while comme vous l'aurez sûrement remarqué (je sais pas si il y a un accent Sir Cornflakes ^^)Image utilisateur

    Un jour mon humour venu d'en bas me perdra... vivement ce moment là ! :D
    • Partager sur Facebook
    • Partager sur Twitter
      5 avril 2006 à 21:27:57

      Salut !
      C'est quoi ce point virgule après WHILE ???

      Et ca serait pas plutôt :
      while($boucle = mysql_fetch_array($requete))
      plutôt que
      while($boucle = mysql_fetch_array($result))

      ???
      • Partager sur Facebook
      • Partager sur Twitter
        5 avril 2006 à 21:30:07

        Tu n'as pas oublié de "{" et de "}" pour la boucle while ?
        • Partager sur Facebook
        • Partager sur Twitter
          5 avril 2006 à 21:31:17

          Citation : Mustang80

          Tu n'as pas oublié de "{" et de "}" pour la boucle while ?


          Ah ouais !
          Bien vu ...

          Ce script est bourré d'erreurs :p

          • Partager sur Facebook
          • Partager sur Twitter
            5 avril 2006 à 21:32:15

            En même temps j'aurai trés bien pû faire les mêmes erreurs ^^ jsuis "tête en l'air" :)
            • Partager sur Facebook
            • Partager sur Twitter
              5 avril 2006 à 21:33:03

              Salut Jash,

              Ton erreur est toute bête(et je crois que je l'ai déjà fait plus d'une fois), tu définis tes variables en dehors de la boucle while, de plus tu as mis un ";" après ta boucle ce qui fait que à chaque éxécution de la boucle aucune insctruction n'est effectuée !

              Allez voila ton code pour le tableau:

              <table>
               <tr>
               <th> <p class="texte">Joueur </th>
               <th> <p class="texte">Points </th>
               </tr>
               <?php
              while($boucle = mysql_fetch_array($result)){
               ?><tr>
               <td><center><p class="texte"><?php echo $boucle['joueur'] ?></td>
               <td><p class="texte"><? echo $boucle['points'] ?> </td>
              </td>
               </tr>
                      <?
                      }
                              ?>
                              </table>
              • Partager sur Facebook
              • Partager sur Twitter
                5 avril 2006 à 21:37:50

                jeff52> Pour le $result ou $requete cela ne change rien car les deux rammènes à la requête ! :) Le point virgule oui, mais il n'indiquait aucune erreur.
                Mustang80> Effectivement, je les ai oublié, mais il n'avait fait aucun message d'erreur de ce côté.
                -Juli@n-> Maintenant je n'ai plus rien, il m'affiche le tableau et après, bah rien :euh:

                Edit: Ca y est j'ai trouvé l'erreur, comme il y avait deux requêtes sur la page, il a dû prendre la première, j'ai donc renommé les variables mais là, il ne m'affiche plus la première entrée. J'en ai quatre dans ma bdd, il m'affiche la 2,3,4 mais pas la 1 ! Mon code est maintenant:


                <center>
                <?php
                session_start(); //On ouvre la session pour pouvoir verifier si le membre est connecté

                if (!isset($_SESSION['pseudo'])) //Le code pour verifier qu'une session existe
                {
                        die('Vous n êtes pas autorisez à acceder à cette page.');
                }

                $pseudo_membre = $_SESSION['pseudo'];
                $requete = mysql_query("SELECT * FROM pdf_membre WHERE pseudo='$pseudo_membre'"); //On sélectionne toutes les données appartenant au pseudo du connecté
                $result = mysql_fetch_array ($requete);
                $pseudo = $result['pseudo'];
                $equipe = $result['equipe'];

                $requete2 = mysql_query("SELECT * FROM joueurs WHERE equipe='$equipe'"); //On sélectionne toutes les données appartenant à cette équipe
                $result = mysql_fetch_array ($requete2);

                ?>
                 <table>
                 <tr>
                 <th> <p class="texte">Joueur </th>
                 <th> <p class="texte">Points </th>
                 </tr>
                 <?php
                while($boucle = mysql_fetch_array($requete2)){
                $joueur = $result['joueur'];
                $points = $result['points'];
                 ?><tr>
                 <td><center><p class="texte"><?php echo $boucle['joueur'] ?></td>
                 <td><p class="texte"><? echo $boucle['points'] ?> </td>
                </td>
                 </tr>
                        <?
                        }
                                ?>
                                </table>
                <a href="http://www.festifoot.info/membres.php?page=renommer">Renommer mes joueurs</a>
                • Partager sur Facebook
                • Partager sur Twitter
                  6 avril 2006 à 15:44:48

                  Up... je mets ici l'edit de mon message précédent:

                  Ca y est j'ai trouvé l'erreur, comme il y avait deux requêtes sur la page, il a dû prendre la première, j'ai donc renommé les variables mais là, il ne m'affiche plus la première entrée.
                  J'en ai quatre dans ma bdd, il m'affiche la 2,3 et 4 mais pas la 1 ! (code juste au dessus)...

                  Merci d'avannncee !
                  • Partager sur Facebook
                  • Partager sur Twitter

                  Boucle while

                  × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                  × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                  • Editeur
                  • Markdown