Liste Déroulante dans une table avec php

Fermé
emy02 Messages postés 1 Date d'inscription mercredi 16 juin 2010 Statut Membre Dernière intervention 16 juin 2010 - 16 juin 2010 à 19:42
 Arka - 17 juin 2010 à 09:10
Bonjour,

Salut tout le monde,

je suis entrain de faire une application et j'ai un petit soucis si kelkun pourra m'aider j'ai une table qui est reliée avec une base de donnes mysql

voici le code php :

echo '<table width="500" border="1">';
echo ' <tr>';
echo ' <td width="70">N°intervention</td>';
echo ' <td width="61">matériel</td>';
echo ' <td width="50">N° serie</td>';
echo ' <td width="30">date de l\'intervention </td>';
echo ' <td width="50">date début </td>';
echo ' <td width="65">date de fin </td>';
echo ' </tr>';
while( $ligne=mysql_fetch_assoc($rs))
{
echo ' <tr>';
echo ' <td width="70">'.$ligne['n_intervention'].'</td>';
echo ' <td width="61">'.$ligne["materiel"].'</td>';
echo ' <td width="50">'.$ligne["num_serie_materiel"].'</td>';
echo ' <td width="30">'.$ligne["date_bon_intervention"].' </td>';
echo ' <td width="50">'.$ligne["date_debut"].' </td>';
echo ' <td width="65">'.$ligne["date_fin"].' </td>';
echo ' </tr>'; }
echo '</table>';
?>
Je veux ajouter un champs statut a cette table et il doit contenir une liste déroulante .
cé mon petit probléme .
j'espere recevoir un aide le plutot possible et merci
A voir également:

1 réponse

$temp='';
$i=0;
echo '<table width="500" border="1">';
echo ' <tr>';
echo ' <td width="70">N°intervention</td>';
echo ' <td width="61">matériel</td>';
echo ' <td width="50">N° serie</td>';
echo ' <td width="30">date de l\'intervention </td>';
echo ' <td width="50">date début </td>';
echo ' <td width="65">date de fin </td>';
echo ' <td width="65">Status </td>';
echo ' </tr>';

$sql="SELECT * FROM status";
$req="mysql_query($sql) or die ("erreur sql liste deroulante: ". mysql_error());


while( $ligne=mysql_fetch_assoc($req))
{
echo ' <tr>';
echo ' <td width="70">'.$ligne['n_intervention'].'</td>';
echo ' <td width="61">'.$ligne["materiel"].'</td>';
echo ' <td width="50">'.$ligne["num_serie_materiel"].'</td>';
echo ' <td width="30">'.$ligne["date_bon_intervention"].' </td>';
echo ' <td width="50">'.$ligne["date_debut"].' </td>';
echo ' <td width="65">'.$ligne["date_fin"].' </td>';
echo ' <td width="65"><select name="nomdelaliste' .$i.'" size=1>';
while ($row=mysql_fetch_array($req)){
echo '<option>'.$row[entrée].'</option>';
}
$i++;
echo '</select></td>';
echo ' </tr>';
$temp= $temp . ' '. $i;
}
echo '</table>';
echo '<input type="hidden" name="i" value="'.$temp.'">';


si ce sont des status communs à tous les etats de ta table, tu n'as pas besoin de changer la requete, sinon il faudra ajouter un where en fonction de la requete qui rempli ta table pour la faire correspondre à la case ou il est placé.
Le $i sert à identifier quel liste a été envoyée à la page suivante, ils sont concaténés les uns aux autres et séparés par un espace et enregistrés dans un champ caché pour etre passé à la page de traitement. sur la page de traitement, tu recupere les infos du champ texte caché (sous la forme "1 2 3 4", tu enleve les espaces et tu recupere ainsi les infos de chaque liste déroulante en concaténant $nomdelaliste et le chiffre récupéré. (avec un explode (' ', i) qui te donne les chiffres dans un tableau, donc les recuperer avec une boucle while)
0