bonjous a tous,
svp, j'ai besoin d'une aide pour que mon code reponde a mes exigences.
je suis entrain de faire un code qui dans un formulaire contenant une liste deroulante qui selectionne tous les produits ou bien chaque produit contenu dans ma table pesee et l'affiche dans un tableau en fonction des date1 et date2 qui sont saisirent comme critere.
mon code se presente comme suit:
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
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
 
<?php
	 if(isset($_POST['CODEPROD'])){
    $CODEPROD=$_POST['CODEPROD'];
}
 
//valeur par défaut à l'arrivée
 
else{
    $CODEPROD="choisir";
}
 
/*voir suite dans les ajouts PHP dans le select
affiche l'option selected le cas échéant*/
?>
 
 
      <FORM  METHOD="post" ACTION="impprod.php">
			<fieldset>
            <table>
            <tr>
            <td height="10">&nbsp;</td><td>&nbsp;</td><td>
         <SELECT name="CODEPROD">
        <option value="choisir" selected="selected"> ----- Choisir ----- </option>
        <option value="produit"<?php if($CODEPROD =='produit') { echo 'selected'; } ?>>Tous les produits</option>
 
		             <?php
 
              //On se connecte
               $dbb=mysql_connect($hostname_dbb, $username_dbb, $password_dbb) or die('Erreur de connexion ' . mysql_error());	
 
		// on sélectionne la base 
	mysql_select_db($database_dbb) or die('Erreur de selection ' . mysql_error());
 
                 //On prépare la requête SQL qui récupère les champs
                    $sql = "SELECT DISTINCT CODEPROD FROM pesee ORDER BY CODEPROD";	
 
                  /* On lance la requête (mysql_query)
                 et on impose un message d'erreur si la requête ne passe pas (or die) */
                 $req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
 
                    //On scanne le résultat et on construit chaque option avec
                while($data = mysql_fetch_array($req)){
 
                                     // on affiche chaque champ
                    echo '<option name="'.$data['CODEPROD'].'">'.$data['CODEPROD'].'</option>';
                      }
                                     //On libère mysql de cette première requête
                  mysql_free_result ($req);
                                   //On ferme le select
                 ?>
	</SELECT>
    </td><td height="10">&nbsp;</td><td>&nbsp;</td></tr>
            <tr height="15"></tr>
            <tr>
            <td align="right" height="10">p&eacute;riode du:</td>
            <td><input type="text" name="DATEP1" /></td>
            <td align="right" height="10">Heure:</td>
            <td><input type="text" name="HEUREP" /></td></tr>
            <tr>
            <td align="right" height="10">Au:</td>
            <td><input type="text" name="DATEP2" /></td>
            <td align="right" height="10">Heure:</td>
            <td><input type="text" name="HEUREP" /></td></tr>
            <tr height="10"></tr>
            <tr>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td align="left"><input type="submit" value="Impression" name="OK"></td>
            <td><input type="reset" value="Annuler" /></td>
            </tr>   
            </table>
          </fieldset>
            </FORM>
            <!--
On ferme le formulaire
-->
<?php
//On traite le formulaire
if(isset($_POST['OK'])){
$CODEPROD=$_POST['CODEPROD'];
$DATEP1=$_POST['DATEP1'];
$DATEP2=$_POST['DATEP2'];
 
// On prépare la requête
//requête différente selon qu'on veut tout le champ
//ou un champ avec une condition
 
$sql = "SELECT * FROM pesee WHERE DATEP BETWEEN '$DATEP1' AND '$DATEP2' ORDER BY CODEPROD ASC, DATEP ASC";
 
/* On lance la requête (mysql_query)
et on impose un message d'erreur si la requête ne passe pas (or die)*/
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$data=mysql_num_rows($req);
// si on a récupéré un résultat on l'affiche.
                if($data) {
                  // début du tableau
				 echo'<p><u>Liste des produits</u></p>';
                 echo '<center><table bgcolor="#FFFFFF" width="590" align="center">'."\n";
                 // première ligne on affiche les titres prénom et surnom dans 2 colonnes
                 echo '<tr>';
                 echo '<td bgcolor="#669999" style="text-align:center"><b><u>N°Camion</u></b></td>';
                 echo '<td bgcolor="#669999" style="text-align:center"><b><u>CONNAISSEMENT</u></b></td>';
				 echo '<td bgcolor="#669999" style="text-align:center"><b><u>PRODUIT</u></b></td>';
				 echo '<td bgcolor="#669999" style="text-align:center"><b><u>CLIENT</u></b></td>';
				 echo '<td bgcolor="#669999" style="text-align:center"><b><u>TRANSPORTEUR</u></b></td>';
				 echo '<td bgcolor="#669999" style="text-align:center"><b><u>DESTINATION/ORIGINAL</u></b></td>';
				 echo '<td bgcolor="#669999" style="text-align:center"><b><u>Poids net</u></b></td>';
                 echo '</tr>'."\n";
              //On scanne chaque résultat et affiche
                while($row = mysql_fetch_array($req)){
	             echo '<tr>';
                 echo '<td bgcolor="#CCCCCC">'.$row['NUMCON'].'</td>';
                 echo '<td bgcolor="#CCCCCC">'.$row['NUMLOT'].'</td>';
				 echo '<td bgcolor="#CCCCCC">'.$row['CODEPROD'].'</td>';
				 echo '<td bgcolor="#CCCCCC">'.$row['CODECLI'].'</td>';
				 echo '<td bgcolor="#CCCCCC">'.$row['TRANSPORT'].'</td>';
				 echo '<td bgcolor="#CCCCCC">'.$row['DESTI'].'</td>';
				 echo '<td bgcolor="#CCCCCC">'.$row['POIDNET'].'</td>';
                 echo '</tr>'."\n";
				 }
                 echo '</table></center>'."\n";
 
 
                // on libère le résultat
                  mysql_free_result($req);     
               }
				elseif($CODEPROD=='produit')
				{
                $sql="SELECT * FROM pesee WHERE DATEP BETWEEN '$DATEP1' AND '$DATEP2' ORDER BY CODEPROD ASC, DATEP ASC"; 
                $req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
				$data=mysql_num_rows($req);
				// si on a récupéré un résultat on l'affiche.
                if($data) {
                  // début du tableau
				 echo'<p><u>Liste des produits</u></p>';
                 echo '<center><table bgcolor="#FFFFFF" width="590" align="center">'."\n";
                 // première ligne on affiche les titres prénom et surnom dans 2 colonnes
                 echo '<tr>';
                 echo '<td bgcolor="#669999" style="text-align:center"><b><u>Code</u></b></td>';
                 echo '<td bgcolor="#669999" style="text-align:center"><b><u>Libellé</u></b></td>';
				 echo '<td bgcolor="#669999" style="text-align:center"><b><u>Observation</u></b></td>';
                 echo '</tr>'."\n";
				 // lecture et affichage des résultats sur 2 colonnes, 1 résultat par ligne.
                 while($row = mysql_fetch_array($req)) { 
				 echo '<tr>';
                 echo '<td bgcolor="#CCCCCC">'.$row['CODEPROD'].'</td>';
                 echo '<td bgcolor="#CCCCCC">'.$row['CODECLI'].'</td>';
				 echo '<td bgcolor="#CCCCCC">'.$row['POIDNET'].'</td>';
                 echo '</tr>'."\n";
                  }
                 echo '</table></center>'."\n";
                 // fin du tableau.
				}
                else 
				echo '<p><u>Liste des produits</u></p>Pas d\'enregistrements dans cette table...';
 
                // on libère le résultat
                  mysql_free_result($req);     
				}
 
}
//On ferme sql
mysql_close ();
 
?>
je suis un peu perdu dans mes conditions et requete pourriez vous inspectez mon code? aussi je voudrai pouvoir afficher par produit et aussi tous les produit en fonction des intervalles de datep c'ad datep1 et datep2.
merci de me venir en aide