menu déroulant

Sujet vérouillé
mohaalba
mohaalba
Déconnecté
Bonjour,
j'ai un souci et je ne voit pourquoi.

je voudrais afficher sur une des colonnes un menu déroulant, et j'arrive à l'afficher mais je voudrais que la valeur initial soit ma valeur récuperer de la BDD.mais cela ne marche pas et me met tjrs la valeur: NEWS???
Aidez moi SVP en vous remerciant d'avance

  1. <?php  
  2.  
  3. <?php  
  4. include_once ('verif_admin.php');  
  5. ?>
  6. <?php
  7. session_start();  
  8. error_reporting(E_ALL);  
  9. /****************************/  
  10. require_once('../config.php');  
  11. require_once('../fonctions.php');  
  12. $titre_page='Mise à jour de commandes';  
  13. include_once('../haut_color.php');  
  14. echo'<link href="../style.css" rel="stylesheet" type="text/css" />';  
  15. /****************************/  
  16. //$pseudo=formulaires($_POST['pseudo']);  
  17. /****************************/   
  18. if(!empty($_POST['choix']))  
  19. {  
  20.  
  21. foreach($_POST['choix'] as $val)  
  22. {  
  23. //pas faites encore  
  24. }  
  25.  
  26. }  
  27. else  
  28. {   
  29. // Nous affichons notre tableau des commandes  
  30. echo'<form method="post" action="etat_commande.php">';  
  31. $entete = array('Client','N° Commande','Date commande','Fichier','Q','Etat','Date livraison','Expédition');  
  32. echo'<div align="center" ><p><strong>Liste de des clients enregistées - Mettre à jour de l\'état des commandes</strong></p><br /><br />';  
  33. echo'<table width="1150" height="40" border="1" align="center" bgcolor=#FF0000>
  34. <colgroup>
  35. <col style="width: 150px">
  36. <col style="width: 120px">
  37. <col style="width: 100px">
  38. <col style="width: 200px">
  39.       <col style="width: 60px">
  40.       <col style="width: 200px">
  41.       <col style="width: 100px">
  42.       <col style="width: 220px">
  43. </colgroup>
  44. <tr>
  45. <th scope="col">'.$entete[0].'</th>
  46. <th scope="col">'.$entete[1].'</th>
  47. <th scope="col">'.$entete[2].'</th>
  48. <th scope="col">'.$entete[3].'</th>
  49. <th scope="col">'.$entete[4].'</th>
  50. <th scope="col">'.$entete[5].'</th>
  51. <th scope="col">'.$entete[6].'</th>   
  52.    <th scope="col">'.$entete[7].'</th>   
  53. </tr>
  54. </table>';  
  55. $result = mysql_query("SELECT nom, prenom,ref_com, date_com, fichier_com, Q, etat, date_livraison, expedition FROM commandes ORDER BY id_c DESC") or die ('Impossible de sélectionner une base de donnée.'.mysql_error());  
  56.  
  57. while ($row = mysql_fetch_array($result, MYSQL_NUM)) {  
  58. /****Modification de la date : Américan vers Europe**********/  
  59. $date_comm = $row[3];  
  60. $date_liv = $row[7];  
  61. $date_comm = preg_replace('!^([0-9]{4})+-([0-9]{2})+-([0-9]{2})$!', '$3/$2/$1', $date_comm); #Modifiation de la date  
  62. $date_liv = preg_replace('!^([0-9]{4})+-([0-9]{2})+-([0-9]{2})$!', '$3/$2/$1', $date_liv); #Modifiation de la date  
  63. $row[3] = $date_comm ;  
  64. $row[7] = $date_liv ;  
  65. /***************************************************************/  
  66. echo'<table width="1150" height="40" border="1" align="center" >
  67. <colgroup>
  68. <col style="width: 150px">
  69. <col style="width: 120px">
  70. <col style="width: 100px">
  71. <col style="width: 200px">
  72.       <col style="width: 60px">
  73.       <col style="width: 200px">
  74.       <col style="width: 100px">
  75.       <col style="width: 220px">
  76. </colgroup>
  77. <tr>
  78. <th scope="col" >'.$row[1].' '.$row[0].'</th>
  79. <th scope="col" >'.$row[2].'</th>
  80. <th scope="col" >'.$row[3].'</th>
  81. <th scope="col" >'.$row[4].'</th>
  82. <th scope="col" >'.$row[5].'</th>
  83. <th scope="col" >'.$row[6].'
  84. <form name="form1" method="post" action="">
  85. <label>
  86. <select name="select" value="'.$row[6].'">
  87. <option>NEWS</option>
  88. <option>EN COURS</option>
  89. <option>EXPEDITION</option>
  90. <option>TERMINEE</option>
  91. </select>
  92. </label>
  93. </form>
  94.    </th>
  95. <th scope="col" >'.$row[7].'</th>
  96.    <th scope="col" >'.$row[8].'</th>
  97. </tr>
  98. </table>';  
  99.  
  100. //printf("ID : %s Nom : %s", $row[0], $row[1]);  
  101.  
  102. }  
  103. echo'<br/><label><input type="submit" value="Mettre à jour" /></label></form>';  
  104. }  
  105.  
  106. /*if (isset($_POST['checkbox'])){
  107.  
  108. for ($i = 0, $c = count($_POST['checkbox']); $i < $c; $i++) { echo '<br/><b>' .$_POST['checkbox'][$i]. '</b>'; }
  109. }
  110.  
  111. $tab_quand = $_POST['checkbox']; //$tab_quand est un tableau, attention !!!!
  112. foreach($tab_quand as $checkbox)
  113. {
  114. echo $checkbox.' ';
  115. }*/  
  116.  
  117.  
  118.  
  119.  
  120. ?>
  121. <html>
  122. <head>
  123. <title>xxxxx : Mise à jour de commandes</title>
  124. <link href="../style.css" rel="stylesheet" type="text/css" />
  125. <style type="text/css">
  126. <!--
  127. p {
  128. color:red;
  129. }
  130. -->
  131. </style>
  132. </head>
  133.  
  134. <body>
  135. <div align="center"><a href="http://xxxx/xxxxx/membre_admin.php"> Retour</a></div>
  136.  
  137. <?php
  138. include_once('../bas.php');  
  139. ?>
  140.  
  141. ?> 
Amery
Amery
Déconnecté
1. Ta syntaxe pour le select est fausse. Tu dois indiquer pour chaque choix la valeur à lui donner.

  1. <select name="etat">
  2. <option value="NEWS">NEWS</option>
  3. <option value="EN COURS">EN COURS</option>
  4. <option value="EXPEDITION">EXPEDITION</option>
  5. <option value="TERMINEE">TERMINEE</option>
  6. </select> 


2. si tu veux que l'état en cours sont sélectionnés par défaut, tu dois ajouter selected="selected" dans la balise <option>. Par exemple, pour sélectionner "News"

  1. <option value="NEWS" selected="selected">NEWS</option> 


3. Donc, finalement pour rendre tout ça dynamique en php, tu peux utiliser la fonction foreach pour comparer la valeur de ton $row[6] avec toutes les valeurs de ton select possibles. Si la valeur $row[6]="NEWS" (par exemple), tu fais :

  1. <?php
  2. echo 'selected="selected"';  
  3. ?> 

dans la balise <option value="NEWS">

En cherchant un peu, tu trouveras des fonctions déjà écrites qui font ce que tu veux, mais c'est plus marrant de trouver la solution soi-même! smiley
mohaalba
mohaalba
Déconnecté
je vous remercie bcp pour votre réponse.
mais qqchse que je ne comprend pas:
pour initialisé la valeur du menu on peut faire ça:
  1. <?php <select name="menu" value="'.$row[6].'"> ?> 


je l'ai fait mais ça ne marche pas??!!!!!!!!
LA GLOBULE
LA GLOBULE
Déconnecté
111 111 111 x 111 111 111 = 12 345 678 987 654 321
Amery t'a donné la solution, le value se met sur les options, pas le select.
mohaalba
mohaalba
Déconnecté
je vous remercie j'ai résolu ce problème mais un autre problème!

Voila j'ai un problème dans mon code php je suis sure que c'est tout bete mais je ne comprend pas;
j'ai un tableau dans lequel j'ai une colonne que je peux mettre à jour, mon problème c'est que quand je coche une seul ligne et donc à mettre à jours dans la BDD il me met toutes la colonne à la même valeur!!!!?
(je croix que c'est parce qu'il faut récuperer 2 valeurs:l'ID et l'état mai je sais pas comment récuperer 2 valaur dans value????)
je ne voit pas comment faire surtout que je suis débutant.
Aidez moi SVP en vous remerciant d'abord.
voila mon code:
  1.  
  2. <?php
  3. include_once ('verif_admin.php');  
  4. ?>
  5. <?php
  6. session_start();  
  7. error_reporting(E_ALL);  
  8. /****************************/  
  9. require_once('../config.php');  
  10. require_once('../fonctions.php');  
  11. $titre_page='Mise à jour de commandes';  
  12. include_once('../haut.php');  
  13. echo'<link href="../style.css" rel="stylesheet" type="text/css" />';  
  14. /****************************/  
  15. //$pseudo=formulaires($_POST['pseudo']);  
  16. /****************************/  
  17. if(!empty($_POST['etat_chek']))  
  18.  
  19. {  
  20.  
  21. //echo $etat_chek,'<br />';  
  22. foreach($_POST['etat_chek'] as $val)  
  23. {  
  24. //echo $val,'<br />';  
  25. /*"UPDATE membres SET level='registered' WHERE cle_activation ='$cle_activation' AND level='en_attente'"*/  
  26. mysql_query("UPDATE commandes SET etat='$val' WHERE pseudo='$val'") or die ('Impossible de sélectionner une base
  27. de donnée.'.mysql_error());  
  28. echo'<div align="center" ><r><strong>L\'état de commande "'.$val.'" à été bien met à jour</strong></r><br />';  
  29. }  
  30.  
  31.  
  32. }  
  33. else  
  34. {  
  35. // Nous affichons notre tableau des commandes  
  36. echo'<form method="post" action="etat_commande.php">';  
  37. $entete = array('Client','N° Commande','Date commande','Fichier','Q','Etat','Date livraison','Expédition');  
  38. echo'<div align="center" ><r><strong>Liste des clients enregistées - Mettre à jour de l\'état des commandes</strong></r><br />';  
  39. echo'<table width="1150" height="40" border="1" align="center" bgcolor=#FF0000>
  40. <colgroup>
  41. <col style="width: 150px">
  42. <col style="width: 120px">
  43. <col style="width: 100px">
  44. <col style="width: 200px">
  45.       <col style="width: 60px">
  46.       <col style="width: 200px">
  47.       <col style="width: 100px">
  48.       <col style="width: 220px">
  49. </colgroup>
  50. <tr>
  51. <th scope="col">'.$entete[0].'</th>
  52. <th scope="col">'.$entete[1].'</th>
  53. <th scope="col">'.$entete[2].'</th>
  54. <th scope="col">'.$entete[3].'</th>
  55. <th scope="col">'.$entete[4].'</th>
  56. <th scope="col">'.$entete[5].'</th>
  57. <th scope="col">'.$entete[6].'</th>
  58.    <th scope="col">'.$entete[7].'</th>
  59. </tr>
  60. </table>';  
  61. $result = mysql_query("SELECT nom, prenom,ref_com, date_com, fichier_com, Q, etat, date_livraison, expedition,pseudo_com FROM commandes ORDER BY id_c DESC") or die ('Impossible de sélectionner une base de donnée.'.mysql_error());  
  62.  
  63. while ($row = mysql_fetch_array($result, MYSQL_NUM)) {  
  64. /****Modification de la date : Américan vers Europe**********/  
  65. $date_comm = $row[3];  
  66. $date_liv = $row[7];  
  67. $date_comm = preg_replace('!^([0-9]{4})+-([0-9]{2})+-([0-9]{2})$!', '$3/$2/$1', $date_comm); #Modifiation de la date  
  68. $date_liv = preg_replace('!^([0-9]{4})+-([0-9]{2})+-([0-9]{2})$!', '$3/$2/$1', $date_liv); #Modifiation de la date  
  69. $row[3] = $date_comm ;  
  70. $row[7] = $date_liv ;  
  71. /***************************************************************/  
  72. echo'<table width="1150" height="40" border="1" align="center" >
  73. <colgroup>
  74. <col style="width: 150px">
  75. <col style="width: 120px">
  76. <col style="width: 100px">
  77. <col style="width: 200px">
  78.       <col style="width: 60px">
  79.       <col style="width: 200px">
  80.       <col style="width: 100px">
  81.       <col style="width: 220px">
  82. </colgroup>
  83. <tr>
  84. <th scope="col" ><b>'.$row[1].' '.$row[0].'</b></th>
  85. <th scope="col" >'.$row[2].'</th>
  86. <th scope="col" >'.$row[3].'</th>
  87. <th scope="col" >'.$row[4].'</th>
  88. <th scope="col" >'.$row[5].'</th>
  89. <th scope="col" ><b>'.$row[6].'</b>
  90.  
  91. <p>
  92. <label>
  93. <input type="checkbox" name="etat_chek[]" value="NEWS" />
  94. NEW</label>
  95. <label>
  96.    <input type="checkbox" name="etat_chek[]" value="EN COURS" />
  97. ENC</label>
  98.     <br/>
  99. <label>
  100. <input type="checkbox" name="etat_chek[]" value="EXPEDITION" />
  101. EXP</label>
  102. <label>
  103.    <input type="checkbox" name="etat_chek[]" value="TERMINEE" />
  104. TER</label>
  105. </p>
  106. </form>
  107.    </th>
  108. <th scope="col" >'.$row[7].'</th>
  109.    <th scope="col" >'.$row[8].'</th>
  110. </tr>
  111. </table>';  
  112.  
  113. //printf("ID : %s Nom : %s", $row[0], $row[1]);  
  114.  
  115. }  
  116. echo'<br/><label><input type="submit" value="Mettre à jour" /></label></form>';  
  117. }  
  118.  
  119. /*if (isset($_POST['checkbox'])){
  120.  
  121. for ($i = 0, $c = count($_POST['checkbox']); $i < $c; $i++) { echo '<br/><b>' .$_POST['checkbox'][$i]. '</b>'; }
  122. }
  123.  
  124. $tab_quand = $_POST['checkbox']; //$tab_quand est un tableau, attention !!!!
  125. foreach($tab_quand as $checkbox)
  126. {
  127. echo $checkbox.' ';
  128. }*/  
  129.  
  130.  
  131.  
  132.  
  133. ?>
  134. <html>
  135. <head>
  136. <title>xxxxx : Mise à jour de commandes</title>
  137. <link href="../style.css" rel="stylesheet" type="text/css" />
  138. <style type="text/css">
  139. <!--
  140. r {
  141. color:red;
  142. }
  143. b {
  144. color:blue;
  145. }
  146. -->
  147. </style>
  148. </head>
  149.  
  150. <body>
  151. <div align="center"><a href="http://xxxx/xxxx_admin/membre_admin.php"> Retour</a></div>
  152. <?php
  153. include_once('../bas.php');  
  154. ?>
  155.  
LA GLOBULE
LA GLOBULE
Déconnecté
111 111 111 x 111 111 111 = 12 345 678 987 654 321
Sujet vérouillé
Accès rapide :

Remonter Remonter
L'éditeur javascript - CSS - Gentoo - Tutoriaux PHP - Tutoriels PHP - Bretagne - php - Moto