probleme pour rafraichir automatiquement un slect des chgmen

Invité
Invité n'ayant pas de compte PHPfrance

16 mars 2006, 11:49

Bonjour,

voila j'ai un probleme avec mon programme, fin une amelioration que je voudrai faire et quie j'ai deja essaye mais qui fonctionne pas ...



la voici, je fais appel a deux menu deroulant, et je veux que si je change la valeur de ceux ci, il recharge la page e nfonction de la nouvelle valeur entree.
Pour le premier select des ville aucun probleme y marche tres bien, mais le second pour les statut marche pas, je suis tjrs oblige de cliquer sur ok pour qu'il enregistre les valeur.


En rouge la partie concerne :


<form id="formulaire" action="statutexemple1.php" method="post"> 
   
 <?php

 

 
if(isset($_POST['statut'])=='OK')
{
	$i=$_GET['var'];
}	
    

...    



if (($i == 2)or ($i=='hannut') ) 
{$vil='Hannut';
 $requete= "SELECT      clienti.idclient,
			clienti.nom,
			clienti.telephone,
			clienti.gsm,
			machine.idmachine,
			machine.nommachine,
			machine.dateheure, 
			machine.assemblage,
			machine.statut, 
			machine.urgence,
			machine.clientid,
			intervention.idinter,
			ville.nom 
 			FROM clienti,machine,intervention,ville
 			WHERE clienti.idclient = machine.clientid  and machine.idmachine=intervention.machineid and intervention.idinter=ville.idinter and ville.nom ='Hannut' and sortir = 0
  
 			ORDER BY machine.urgence DESC, machine.statut='In' DESC,machine.statut='En cours' DESC,machine.statut='En attente' DESC,machine.statut='Out' DESC,machine.statut='Appel OK' DESC,machine.statut='Email Envoye' DESC,intervention.idinter DESC";
 
  $sql = mysql_query($requete) or die('Erreur SQL'.mysql_error());


 
echo "<center>";


$query = "select id, nom from magasin WHERE nom!='$vil' order by nom asc;";
$sqq = mysql_query($query);

// on construit le <select>
echo '<select name="receptionn" id="select" onChange="formulaire.submit()">';
// une première option 'vide'
echo '<option value="2"> '.$vil.' </option>';
// on parcours la table
while( $arr = mysql_fetch_assoc($sqq) ) {
    // une option pour chaque membre
    echo '<option value="'.$arr['id'].'"';
    // préselection d'un membre au cas où
    if($i==$arr['id']) echo ' selected ';
    echo '>'.$arr['nom'].'</option>';
}
echo '</select>'; 
 echo "</center><br /></form>";
 
 echo "<table  width=\"100%\" class=\"vu\">";
  
 
 
 echo("<td bgcolor=\"#AAAEE4\">N°</td> <td bgcolor=\"#AAAEE4\"> Client : description machine </td bgcolor=\"#AAAEE4\">  <td bgcolor=\"#AAAEE4\">Tel / GSM </td><td bgcolor=\"#AAAEE4\">ass</td><td bgcolor=\"#AAAEE4\">VILLE</td><td bgcolor=\"#AAAEE4\">Tech</td><td bgcolor=\"#AAAEE4\">Sales</td><td bgcolor=\"#AAAEE4\"> Entree </td><td bgcolor=\"#AAAEE4\">Statut</td><td bgcolor=\"#AAAEE4\">Modifier</td> </tr> ");
 while(list($idclient,$nom,$telephone, $gsm,$idmachine,$nommachine,$dateheure, $assemblage,$statut,$urgence,$clientid,$idinter,$vill) = mysql_fetch_array($sql))
 
 { 	

  ...
        
[color=red]          <select name="statut" id="select" onChange="ok.submit()">  <? echo  " <option>$statut</option>"; ?>
<option value='In' >In</option><option value='En cours' >En cours</option><option value='Out' >Out</option><option value='En attente' >En attente</option><option value='Appel OK' >Appel OK</option><option value='Email envoye' >Email envoye</option>                     </select>
        </td>
     
           <td> 
      <center> <input name="submit" type="submit" class="champ" value="OK">   </center>   
         </form> </div></td>
     
    </tr>
    [/color]    
        
        <? echo "<tr><td></td></tr><tr><td></td></tr>"; 
"</tr>";
}
else 
{
 		
     switch ($statut)
{
    case 'In' :
      echo "<tr bgcolor=\"#ffffff\">  "; ?>
 <form id="ok" action="statutexemple1.php?variable=<?echo $idmachine ?>&var=<?echo $i?>" method="post">
      <?php echo "<td>$idinter</td><td>$nom ==> $nommachine</td>";
  // "<td><a href=\"ajoutclient.php?var=$idmachine\">$nom ==> $nommachine</a></td>";
  if (($telephone!="") and ($gsm!=""))
   {
   echo "<td>$telephone   /   $gsm</td>";
   }
   elseif( ($telephone=="") and ($gsm!=""))
   {
    echo "<td> $gsm</td>";
   }
    elseif ( ($telephone!="") and ($gsm==""))
   {
   echo "<td> $telephone</td>";
   }
  elseif( ($telephone=="") and ($gsm==""))
   {
   	echo"<td></td>";
   }
  //"<td><textarea disabled=\"disabled\" size=\"45\">$resolution</textarea></td>".
 
?>  <td><center><font color="red"><b><? if($assemblage==1) echo "A"; ?> </font></center></td></b>
 <td><?= $vill?> </td>
<td><a href="tech1.php?var=<?php echo $idinter?>&vari=<?echo $i?>">Tech</a></td> 
             <td><a href="sales.php?var=<?php echo $idinter?>&vari=<?echo $i?>">Sales</a></td>
              <?="<td>$dateheure  </td>";?>
          <td><select name="statut" id="select" onChange="ok.submit()">  <? echo  " <option>$statut</option>"; ?>
<option value='In' >In</option><option value='En cours' >En cours</option><option value='Out' >Out</option><option value='En attente' >En attente</option><option value='Appel OK' >Appel OK</option><option value='Email envoye' >Email envoye</option>                     </select>
        </td>
     
           <td> 
      <center> <input name="submit" type="submit" class="champ" value="OK">   </center>   
         </form> </div></td>
     
    </tr>
        
        
        <? echo "<tr><td></td></tr><tr><td></td></tr>"; 
"</tr>";
      break;
    case 'En cours':
      echo "<tr bgcolor=\"#ffffff\"> "; ?>
     <form id="ok" action="statutexemple1.php?variable=<?echo $idmachine ?>&var=<?echo $i?>" method="post">
<? echo " <td> <b>$idinter</b></td><td><b>$nom ==> $nommachine</b></td>";
   
   if (($telephone!="") and ($gsm!=""))
   {
   echo "<td>$telephone   /   $gsm</td>";
   }
   elseif( ($telephone=="") and ($gsm!=""))
   {
    echo "<td> $gsm</td>";
   }
    elseif ( ($telephone!="") and ($gsm==""))
   {
   echo "<td> $telephone</td>";
   }
   elseif( ($telephone=="") and ($gsm==""))
   {
   	echo"<td></td>";
   }
   //"<td><textarea disabled=\"disabled\" size=\"45\">$resolution</textarea></td>".
 
?>  <td><center><font color="red"><b><? if($assemblage==1) echo "A"; ?> </b></font></center></td>
 <td><? echo "<b>$vill</b>";?> </td>              
<td><a href="tech1.php?var=<?php echo $idinter?>&vari=<?echo $i?>">Tech</a></td> 
             <td><b><a href="sales.php?var=<?php echo $idinter?>&vari=<?echo $i?>">Sales</a></b></td>
             <b> <?= "<td><b>$dateheure</b></td>"; ?></b>
        
          <td><select name="statut" id="select" onChange="ok.submit()">  <? echo  " <option>$statut</option>"; ?>
<option value='In' >In</option><option value='En cours' >En cours</option><option value='Out' >Out</option><option value='En attente' >En attente</option><option value='Appel OK' >Appel OK</option><option value='Email envoye' >Email envoye</option>                     </select>      </td>
     
           <td> 
    <center> <input name="submit" type="submit" class="champ" value="OK">   </center>
         </form> </div></td>
      
    </tr>
        
        
        <? echo "<tr><td></td></tr><tr><td></td></tr>". 
     "</tr>";
      break; 

   ......
   ......  
      
    
      break;

}}
 }
 }elseif (($i==3) or ($i=='jodoigne'))
 {

Invité
Invité n'ayant pas de compte PHPfrance

16 mars 2006, 13:31

si je change tout mes select comme ceci :

<select name="statut" id="select" onChange="formulaire.submit()">

donc je change le OK en formulaire, la il rafraichi correctement, mais le probleme, c'est que je sais pas sauve la nouvelle valeur de statut dans ma base; Et la je bloque, je vois pas comment passe par argument, cette nouvelle valeur ou comment la receptionne via cette methode de onChange ...

Merci d'avance