[PHP] Eléments liste déroulante dans tableau

Fermé
sidarks Messages postés 15 Date d'inscription vendredi 10 novembre 2006 Statut Membre Dernière intervention 17 novembre 2009 - 30 mars 2007 à 23:04
 oli - 12 oct. 2007 à 16:49
Bonjour,

je génère une liste déroulante à partir de données SQL, et avec l'aide d'un javascript, je peux faire basculer certain élément de la première liste déroulante vers une seconde liste déroulante et j'aimerais que tous les élements de cette seconde liste déroulante soient injectés dans une autre table sql après action sur bouton valider sans à avoir à les sélectionner et à valider un par un...
donc je pensais mettre les élements de cette seconde liste dans un tableau puis injecter les élements du tableau dans ma table sql, mais je vois pas trop comment faire donc si possible aidez moi, ou bien merci de me proposer une solution plus appropriée...
A voir également:

2 réponses

guy2mars Messages postés 204 Date d'inscription dimanche 18 février 2007 Statut Membre Dernière intervention 24 janvier 2013 71
30 mars 2007 à 23:47
lorsque tu incrementes la 2eme liste, tu utilises chaque fois la meme variable qui change de valeur.
a premiere vue et betement, j en profiterai, lorsque j incremente la 2eme liste pour inscrire lesvariables en dur dans une table. ensuite un while en lecture....
0
sidarks Messages postés 15 Date d'inscription vendredi 10 novembre 2006 Statut Membre Dernière intervention 17 novembre 2009
31 mars 2007 à 08:20
Salut et merci de ton aide,

je vois à peu près ce que tu veux dire mais je ne sais pas à quel moment de mon script je peux inscrire la variable directement dans la table...

voila mon code si tu veux y jeter un oeil :

<SCRIPT LANGUAGE="JavaScript">

	function Deplacer(l1,l2) {
		if (l1.options.selectedIndex>=0) {
			o=new Option(l1.options[l1.options.selectedIndex].text,l1.options[l1.options.selectedIndex].value);
			l2.options[l2.options.length]=o;
			l1.options[l1.options.selectedIndex]=null;
		}else{
			alert("Aucune personnel sélectionné");
		}
	}
</SCRIPT>
</HEAD>

<BODY bgcolor="#FFFFFF">
<FONT FACE="Arial" SIZE='-1' COLOR="#000099">

<CENTER>
  <BR>


  <FORM actino ="" name="formulaire" method="POST">
    
    <TABLE>
      <TR>
        <TD width="120" align="center"><B><FONT color="#000099" size="2" face="Arial">Personnel</FONT></B><BR>
   <?         
              require('../config.php');
		// connexion à la base
 $connect1=mysql_connect($serveur, $login, $mdp)  or die('Erreur de connexion '.mysql_error());
 // sélection de la base     
   mysql_select_db($base1,$connect1)  or die('Erreur de selection '.mysql_error()); 
    
   echo '<select name="liste1" size=8 id="liste1>>'."\n";   
   echo '<option value=""><option>'."\n"; 

   $sql = 'SELECT nom, prenom, idpersonnel FROM personnel ORDER BY nom';
  
   // on envoie la requête  
   $req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());

   // on fait une boucle qui va faire un tour pour chaque enregistrement  
   while($data = mysql_fetch_assoc($req))
    { 
     // on affiche les informations de l'enregistrement en cours  
      
	 $personnel = $data['prenom'].' '.$data['nom'] ;
     echo '<option value='.$data['nom'].'> '.$personnel.'';   
    echo '</option>';   
     
      }?>
              
        </TD>
        <TD width="89" align="center">
          <INPUT type="button" value="Ajouter >>>" onClick="Deplacer(this.form.liste1,this.form.liste2)">
          <BR>
          <BR>
          <INPUT type="button" value="<<< Enlever" onClick="Deplacer(this.form.liste2,this.form.liste1)">
        </TD>
        <TD width="161" align="center"><FONT color="#000099" size="2" face="Arial"><B>Heures de travail : <? $heure = 8; echo $heure; ?>
		</B></FONT><BR>
            <SELECT align=top name="liste2" size=6 style="width:120px">
              <OPTION value="10"></OPTION>
              </SELECT>
			  
			  <? require('../config2.php');
			  if(isset($_POST['liste2'])){ // on v&eacute;rifie la pr&eacute;sence des variables de formulaire (si le formulaire a &eacute;t&eacute; envoy&eacute;)
		$liste2 = $_POST['liste2'];

$connect2=mysql_connect($serveur, $login, $mdp, TRUE) or die ("Impossible de se connecter à la base de données ");
		$select2=mysql_select_db($base2, $connect2);
		
		$champ2=mysql_query("INSERT INTO heures (`idheures`, `heures`, `nom`)" . "VALUES ('', '$heure', '$liste2')");
		
		}
		?>
        <td> <input name="Submit" type="submit"  value="valider" />
      </TR>
    </TABLE>
    <SCRIPT language="javascript">

		document.formulaire.liste2.options.length=0;
	</SCRIPT>
  </FORM>
0
Bonjour, as tu trouvé la solution à ton problème car j 'ai le même?
0