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

Langage PHP Discussion :

[Tableaux] boucle while qui ne boucle pas comme je veux


Sujet :

Langage PHP

  1. #1
    Membre éprouvé Avatar de oceane751
    Profil pro
    Intégrateur Web
    Inscrit en
    Novembre 2004
    Messages
    1 280
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Intégrateur Web

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 280
    Par défaut [Tableaux] boucle while qui ne boucle pas comme je veux
    bonjour à tous!!

    j'ai un petit soucis avec une boucle while

    j'aimerais afficher les articles tous les articles d'une commande dans un tableau mais ça ne m'affiche dans le tableau qu'un article et en dehors du tableau, les autres articles.
    j'ai beau regardé mon code je ne vois pas o est ce que j'ai pu fauter

    voici mon code :
    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
     
    <?
    session_start();
     
    error_reporting(E_ALL);
    //$identifiant = $_GET['id'];
    //$_SESSION['identifiant'] = $identifiant;
     
    echo "<html>
    <title>Clients</title>
    <font size = +2><center>Commande des clients</font></center>";
     
     
     $select = "SELECT pseudo, mdp FROM client";
     $querselect = mysql_query($select);
    $fetchselect = mysql_fetch_array($querselect);
     
     
        $ident = "SELECT id_cli FROM client WHERE pseudo = '".$fetchselect['pseudo']."'";
        $querident = mysql_query($ident);
        $fetchident = mysql_fetch_array($querident);
     
     
    $com = "SELECT num_com FROM passer WHERE id_cli = '1'";
    $quercom = mysql_query($com);
    while($fetchcom = mysql_fetch_array($quercom))
    {
    $numlivr = "SELECT num_livr FROM lign_livr WHERE num_com = '".$fetchcom[0]."'";
      //echo $numlivr."<br>";
      $quernumlivr = mysql_query($numlivr);
      $fetchnumlivr = mysql_fetch_array($quernumlivr);
     
      $livr = "SELECT date_livr, etat_livr FROM livraison WHERE num_livr = '".$fetchnumlivr[0]."'";
      $querlivr =  mysql_query($livr);
      $fetchlivr = mysql_fetch_array($querlivr);
     
     
      echo "<table border = 1>
      <tr><td><b><font size =+1>Commande N° ".$fetchcom[0]."</td></tr>";
     
    $ref= "SELECT ref_produit FROM concerner WHERE num_com = '".$fetchcom[0]."'";
    $querref = mysql_query($ref);
     
    echo "<tr><td><center><b>Ref produit</b></center></td>";
    echo "<td><center><b>Designation produit</b></center></td>";
    echo"</tr>";
    while ($fetchref = mysql_fetch_array($querref))
     
    {
      $desi = "SELECT designation_produit FROM produit WHERE ref_produit = '".$fetchref[0]."'";
      $querdesi = mysql_query($desi);
    $fetchdesi = mysql_fetch_array($querdesi);
     
     
     
      echo "<tr><td>".$fetchref[0]."</center></td>
      <td><center>".$fetchdesi[0]."</center></td>
      </tr>";
     
      echo "<form method='post' action='donneemodif2.php'>";
     echo "<table border = 1>
     <input type= 'hidden' name='num_livr' value='".$fetchnumlivr['num_livr']."' >
     <tr><td><center><b>date_livr</b></center></td>
     <td><input type = 'text' value = '".$fetchlivr[0]."' name = 'date_livr'></td>
     <td><center><b>etat_livr</b></center></td><br>
     <td><input type = 'text' value = '".$fetchlivr[1]."' name = 'etat_livr'></td>
     <td><input type='submit' name= 'sub_form' value= 'modifier' /></td></tr></table></center><br><br>
     </tr>";
     
     echo "</form>";
      }
     
    echo "</table>";
     
    }
    grrr quelqu'un pourrait il m'expliquer pourquoi ça ne marche pas?

    merci..

  2. #2
    Membre émérite
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    1 012
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 012
    Par défaut
    Y a des fautes partout

    j'ai commencé par regarder ton form avec action donneemodif2 :
    tu as un input qui n'est pas dans une cellule td, alors que tu es dans une table
    il y a un /tr à l'intérieur du form / form, mais il n'y a pas le tr d'ouverture
    tu fermes des center sans les ouvrir (et pareil quelques lignes plus haut)

    plus haut, tu ouvres des b sans les fermer

    tu ouvres la balise html puis la title. ou est la head ? ou est le body ?

    dans ton table principal :
    • premier tr contient un td
    • second et troisième tr contient deux td

    • tu ouvres une nouvelle table avant de fermer la première, donc je suppose que tu souhaites que cette table soit à l'intérieur de la principale. mais cette table n'est pas dans un tr / td et je pense que c'est cela ton erreur principale


    la liste des erreurs n'est pas exhaustive ...

  3. #3
    Membre éprouvé Avatar de oceane751
    Profil pro
    Intégrateur Web
    Inscrit en
    Novembre 2004
    Messages
    1 280
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Intégrateur Web

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 280
    Par défaut
    ça change rien...

  4. #4
    Membre éprouvé Avatar de oceane751
    Profil pro
    Intégrateur Web
    Inscrit en
    Novembre 2004
    Messages
    1 280
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Intégrateur Web

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 280
    Par défaut
    c'est ok.
    j'avais fermé l'une des boucles trop tard.

    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
     
    $com = "SELECT num_com FROM passer WHERE id_cli = '1'";
    $quercom = mysql_query($com);
    while($fetchcom = mysql_fetch_array($quercom))
    {
    $numlivr = "SELECT num_livr FROM lign_livr WHERE num_com = '".$fetchcom[0]."'";
      //echo $numlivr."<br>";
      $quernumlivr = mysql_query($numlivr);
      $fetchnumlivr = mysql_fetch_array($quernumlivr);
     
      $livr = "SELECT date_livr, etat_livr FROM livraison WHERE num_livr = '".$fetchnumlivr[0]."'";
      $querlivr =  mysql_query($livr);
      $fetchlivr = mysql_fetch_array($querlivr);
     
     
      echo "<table border = 1>
      <tr><td><b><font size =+1>Commande N° ".$fetchcom[0]."</td></tr></b>";
     
    $ref= "SELECT ref_produit FROM concerner WHERE num_com = '".$fetchcom[0]."'";
    $querref = mysql_query($ref);
     
    echo "<tr><td><b>Ref produit</b></td>";
    echo "<td><b>Designation produit</b></td>";
    echo"</tr>";
    while ($fetchref = mysql_fetch_array($querref))
     
    {
      $desi = "SELECT designation_produit FROM produit WHERE ref_produit = '".$fetchref[0]."'";
      $querdesi = mysql_query($desi);
      $fetchdesi = mysql_fetch_array($querdesi);
     
     
     
      echo "<tr><td><center>".$fetchref[0]."</center></td>
      <td><center>".$fetchdesi[0]."</center></td>
      </tr>";
    }
      echo "<form method='post' action='donneemodif2.php'>";
     echo "<table border = 1>
     <tr><td><input type= 'hidden' name='num_livr' value='".$fetchnumlivr['num_livr']."' ></td>
     <td><center><b>date_livr</b></center></td>
     <td><input type = 'text' value = '".$fetchlivr[0]."' name = 'date_livr'></td>
     <td><center><b>etat_livr</b></center></td><br>
     <td><input type = 'text' value = '".$fetchlivr[1]."' name = 'etat_livr'></td>
     <td><input type='submit' name= 'sub_form' value= 'modifier' /></td></tr>
     </table></center><br><br>
     ";
     
     echo "</form>";
     
    echo "</table>";
    }
    merci pour ta réponse

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    691
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2004
    Messages : 691
    Par défaut
    Dja indique nous c'est ou tu affiche car ton code est super long

    sinon dans ta boucle while pourquoi tu appels cette ligne $fetchcom[0], tu vas toujours appelé le champs 0 de ton resultat je pige pas la pourquoi tu appel pas ca comme ca : $fetchcom[num_com]

  6. #6
    Membre éprouvé Avatar de oceane751
    Profil pro
    Intégrateur Web
    Inscrit en
    Novembre 2004
    Messages
    1 280
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Intégrateur Web

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 280
    Par défaut
    que je l'ecrive comme ça $fetchcom[0] ou comme ça $fetchcom['num_com'], je vois pas où est le pb puisque c'est la même chose !!! et comme mon code est pour un projet perso, je men sors tres bien comme ça alors pourquoi faire autrement???

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

Discussions similaires

  1. [PDO] Une boucle while dans une boucle while
    Par subran dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 28/02/2015, 20h32
  2. Une boucle While qui ne fonctionne pas
    Par seremei dans le forum Langage
    Réponses: 6
    Dernier message: 25/10/2012, 12h33
  3. Thread.Sleep qui n'attend pas comme je veux
    Par Chacha35 dans le forum Windows Forms
    Réponses: 6
    Dernier message: 09/10/2009, 16h46
  4. boucle while qui ne s'arrete pas à la lecture d'un zero
    Par malikoo dans le forum Général Python
    Réponses: 14
    Dernier message: 04/07/2007, 11h48
  5. un if qui ne fonctionne pas comme je veux
    Par Kelly182 dans le forum Access
    Réponses: 4
    Dernier message: 27/07/2006, 16h12

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