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
Arka - 17 juin 2010 à 09:10
A voir également:
- Liste Déroulante dans une table avec php
- Liste déroulante excel - Guide
- Table ascii - Guide
- Liste déroulante en cascade - Guide
- Table des matières word - Guide
- Supprimer une liste déroulante excel - Forum Word
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)
$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)