PHP, MySQL et liste déroulante

Bonjour, je dois realiser une page WEB qui demande une référence et affiche les dates correspondantes au test réalisés dans un menu déroulant (ça fonctionne).
Je voudrais ensuite extraire cette date afin de réaliser une autre requête SQL, mais je n'y arrive pas (j'ai penser au bouton envoyer, ca ne donne rien ...).
Merci beaucoup !!!
ps : le code fonctionne jusqu'à la ligne 48 (ce qui est en gras fonctionne...), en gros, je veux récupérer la valeur date choisit par l'utilisateur dans le menu déroulant.

    <FORM method=post action="site.php">   
    <h3><u>Choisir la réference afin d'afficher les dates des tests réalisés : :</u></h3>   
    <TABLE BORDER=5>   
    <TR>   
    <TD>Entrez la réference</TD>   
    <TD>   
    <INPUT type=int name="reference">   
    </TD>   
    </TR>   
    <TR>   
    <TD COLSPAN=2>   
    <INPUT type="submit" value="Envoyer">   
    </TD>   
    </TR>   
    </TABLE>   
    </FORM>   
    <?php   
    // Connexion à la BDD :   
    $db = mysql_connect('127.0.0.1', 'root', '1234');  // 1   
    mysql_select_db('bdd',$db);   
    ?>   
    <?php   
    // On récupère la valeur de la reference :   
    $reference = $_POST['reference'];   
    ?>   
    <?php   
    // On lance la requete SQL suivante afin d'afficher les dates correspondantes dans     une liste déroulante aux tests réalisés :   
    $recherche = "SELECT date FROM tableref WHERE reference='$reference'";   
    $result = mysql_query($recherche) ?>   
    Date: <select size="1" name="date">   
    <?php   
    // On affiche les dates dans une liste déroulante :   
    while ($row=mysql_fetch_array($result))   
    {   
    ?>   
    <OPTION><?php echo $row['date']; ?></OPTION>   
    <?php   
    }   
    ?>   
 Récupération de la date (ça ne marche pas)
    <?   
    $date=$_post['date'];   
    ?>   
    <? echo $date; ?>   
    <?   
    // On ferme la BDD :   
    mysql_close($db);   
    ?>   

merci...

11 réponses

  1.     $dut_serialnumber = $_POST['dut_serialnumber'];
        ?>
        <?php
        $recherche = ("SELECT date_start FROM dut_test_data WHERE dut_serialnumber='$dut_serialnumber'" ) ;
        $result = mysql_query($recherche) ?>
        <FORM method=post action="site2d.php">
        <INPUT type="hidden" name="dut_serialnumber" value="<?php echo  $dut_serialnumber; ?>"> 
        print_r($_POST);
        Date: <select name='date_start'  >
        <?php
        while($row = mysql_fetch_assoc($result)) {
           $isSelected = ($row['date_start'] === $_POST['date_start']) ? ' selected="selected"' : null;
           echo '<option value="', $row['date_start'], '"', $isSelected, '>', $row['date_start'], '</option>';
        } ?>
        <INPUT type="submit" value="Envoyer">
        </FORM>
        <?
        $date_start = $_POST['date_start'];
        echo $date_start; ?>
        <? echo $_POST['date_start']; ?>

    Après le 1er ENVOYER j'ai : (remplissage du champs dut_serialnumber puis appuie sur envoyer)
    Array ( [dut_serialnumber] => tx081 [date_start]

    Après le 2ème ENVOYER j'ai : (liste déroulante avec les dates affichées en fonction du serial_number, ca fonctionne bien)
    Array ( [dut_serialnumber] => tx081 [date_start] => 2011-07-07 13:31:00 )
    --> Cela prouve que j'envoie bien la date que je sélectionne ? Je n'arrive pas cepandant à récuperer la valeur de la date sélectionnée .... !
    MERCI ...
    1. personne ne peut m'aider (je galère dessus depuis longtemps !)
      MERCI BEAUCOUP !!!
      1. <FORM method=post action="site2d.php"> 
        <INPUT type="hidden" name="reference" value="<?php echo  $reference; ?>">    
        Date: <select name='date_start'  > 
        <?php  
        while($row = mysql_fetch_array($result)) { 
           echo '<option>', $row['date_start'], '</option>'; 
        } 
        ?> 
        </select> 
        <INPUT type="submit" value="Envoyer2"> 
        </FORM> 
        <? 
        $date_start = $_POST['date_start']; 
         echo $date_start; ?> 

        Oui, parcontre je n'arrive toujours pas à recuperer la date. J'ai aussi remarqué qu'en appuyant sur ENVOYER2, je reviens à la 1ère date (même si je selectionne les suivantes)!
        MERCI.
        1. <FORM method=post action="site2d.php"> 
          <INPUT type="hidden" name="reference" value="<?php echo  $reference; ?>">    
          Date: <select name='date_start'  > 
          <?php  
          while($row = mysql_fetch_array($result)) { 
             echo '<option>', $row['date'], '</option>'; 
          } 
          ?> 
          </select> 
          <INPUT type="submit" value="Envoyer2"> 
          </FORM> 
          <? 
          $date = $_POST['date']; 
           echo $date; ?>  


          Je n'arrive pas à recuperer la date de la liste déroulante, je demande l'affichage de la variable date mais je n'ai rien ?
          Merci.
          1. le nom du champ est date_start
        2. <FORM method=post action="site2d.php">
          <INPUT type="hidden" name="reference" value="<?php echo  $reference; ?>">   
          Date: <select name='date_start'  >
          <?php 
          while($row = mysql_fetch_array($result)) {
             echo '<option>', $row['date'], '</option>';
          }
          ?>
          </select>
          <INPUT type="submit" value="Envoyer2">
          </FORM>
          <?
          $date_start = $_POST['date'];
           echo $date; ?> 

          Je n'arrive pas à recuperer la date de la liste déroulante, je demande l'affichage de la variable date mais je n'ai rien ?
          Merci.
          1. ajoute un champ hidden name ="reference" dans le second formulaire à envoyer

            <INPUT type="hidden" name="reference" value="<?php echo  $reference; ?>">   
            1. Quand j'appuie sur le 2eme ENVOYER j'ai plus d'erreur , je vais voir si je peux recuperer la date choisie.
              Merci
              1. OK merci, ca donne ça :
                <FORM method=post action="site2.php">
                
                Date: <select name='date_start'  >
                <?php 
                while($row = mysql_fetch_array($result)) {
                   echo '<option>', $row['date_start'], '</option>';
                }
                ?>
                </select>
                <INPUT type="submit" value="Envoyer2">
                </FORM>

                Maintenant, je voudrais récuperer la date sélectionnée par l'utilisateur mais ça ne fonctionne pas ? Parce que en fait j'ai déjà un 1er formulaire qui demande un numéro de série en ensuite on a accès aux dates correspondantes.
                Quand je clic sur envoyer 2 (pour la date), j'ai une erreur comme quoi le champs numero de serie n'a pas été renseigné !
                Merci beaucoup!
                1. <FORM method=post action="site2.php">
                  <INPUT type="hidden" name="reference" value="<?php echo  $reference; ?>">   
                  Date: <select name='date_start'  >
                  <?php 
                  while($row = mysql_fetch_array($result)) {
                     echo '<option>', $row['date_start'], '</option>';
                  }
                  ?>
                  </select>
                  <INPUT type="submit" value="Envoyer2">
                  </FORM>
              2. j'ai essayer ca mais ca me donne rien (dans la liste j'ai qu'une ligne ou sont affichés toutes la dates, la condition est cepandant respectée).
                Je voudrais que les dates soient affichés sur plusieurs ligne et pouvoir récuperer la date selectionnée.
                    // On récupère les valeurs de nos variables :
                    $dut_serialnumber = $_POST['dut_serialnumber'];
                    ?>
                    <?php
                    $recherche = ("SELECT date_start FROM dut_test_data WHERE dut_serialnumber='$dut_serialnumber'" ) ;
                    $result = mysql_query($recherche) ?>
                    <FORM method=post action="site2.php">
                    Date: <select size="1" name="date_start" >
                    <OPTION><?php
                    while ($row=mysql_fetch_array($result))
                    {
                    echo $row['date_start'];} ?>
                    </OPTION>
                    </select>
                    <INPUT type="submit" value="Envoyer2">
                    </FORM>

                Merci beaucoup de votre aide !!!
                1. <OPTION><?php
                      while ($row=mysql_fetch_array($result))
                      {
                      echo $row['date_start'];} ?>
                      </OPTION>


                  c'est faux, tes balises option doivent etre dans la boucle while
              3. le champs date est dans la liste déroulante qui extrait les dates de la BDD en fonction du n°reference.