Update à partir d'un affichage dynamique selon un bouton radio

Eléphanteau du PHP | 34 Messages

15 août 2008, 20:44

Bonjour,
j'ai une liste d'événements affichés par une requête.
j'aimerais modifier l'évènement qui est coché mais sur la page d'arrivée, c'est toujours le dernier événement qui est reçu, quelle que soit celui que j'ai choisi.
Désolé mais je sais pas faire...

la page : http://ridolfi.essai.free.fr/alpha/modif.php

le script
<?php require ("fonct_connect.php");
		$sql_query="SELECT * FROM evenements "; 
		$query_result=mysql_query($sql_query);
			
		if ($query_result)
		{
		$row=mysql_num_rows($query_result);
		}	
							
		if ($row==0)
		{
		echo ("Il n'y rien dans la base");
		echo "<form method='post' action='index.php'>\n";
		echo "<INPUT TYPE=submit VALUE='Retour saisie' NAME=Pr&eacute;c&eacute;dente
		>";
		echo "</form>";
		exit();
		}

		$sql = 'SELECT * FROM evenements'; 
		$req = mysql_query($sql) or die('Erreur SQL !
		'.$sql.'
		'.mysql_error()); 
		
		while($R = mysql_fetch_array($req)) 
{ 
?>
 </h3></td>
  </tr>
</table>
<!-- <SCRIPT LANGUAGE="JavaScript">
    function confirmer(frm)
	{
    var msg = "Êtes-vous sur de vouloir modifier cet élément?";
		
     if(confirm(msg))
	 {
     return true;
     }
	 else
	 {
      return false;
      }
    } 
</SCRIPT>  -->


<form id="form1" name="form1" method="post" action="modif-2.php" onsubmit="return confirmer(this);">
<table width="600" border="1" cellspacing="0" cellpadding="0">
  
  <tr>
    <td width="116">date:</td>
    <td width="478"><?php echo $R['date'];?> </td>
  </tr>
  
  <tr>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
 
  <tr>
    <td>Copro</td>
    <td> <?php echo $R['nomcopro'];?>
     
    </td>
  
  </tr>
 
  <tr>
    <td>ID:</td>
    <td><?php $id=$R['id']; echo $id;?></td></tr>
	  <tr><td>Ev&egrave;nement<br />     (modifiable)</td>
    <td>
      <textarea name="evenement" cols="70" rows="10"><?php echo $R['evenement'];?> </textarea>
    </td>
  </tr>
  
  <tr>
    <td></td>
    <td></td>
  </tr>
  <tr>
    <td>Concerne</td>
    <td>
      <input type="text" name="concerne" value="<?php echo $R['concerne'];?>"/>
    </td>
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>T&eacute;l:</td>
    <td>
      <input type="text" name="tel" value="<?php echo $R['tel'];?>"/>
    </td>
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>Trait&eacute; par: (modifiable)</td>
    <td>
      <input name="traitepar" type="text" value="<?php echo $R['traitepar'];?>"/>
    </td>
  </tr>
  <tr>
    <td><input type="hidden" name="hiddenField" value=<?php echo $R['id']; ?>  /></td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td> Modifier	</td>
    <td>
     
	  <input name="radio" type="radio" value=<?php echo $R['id']; ?> />
    </td>
  </tr>
</table>
<p><br />
  <br />
  <? } 

merci d'avance car j'ai sorti les avirons en carbone...

kayorn

?>

</p>
  <input type="submit" name="Submit" value="Modifier"  />
</form>
kayorn
"Je ne crois pas en l'au-delà, mais j'emporte tout de même un caleçon de rechange." --woody allen

ViPHP
ViPHP | 1996 Messages

15 août 2008, 21:26

Dans ta page modif-2.php, tu as fais un
print_r ($_POST)
?
It is nice to be important but it is more important to be nice
http://www.aureuswebfactory.fr

Eléphanteau du PHP | 34 Messages

15 août 2008, 22:29

non v
var_dump($_POST);
c'est marrant, en affichant un bouton submit à chaque evénement généré, je clique sur le "modifier" concernant l'événement choisi - je récupère les modifs dans la page d'update
je renomme les variables en "new_variable"
je modifie sans larmes... et sans bouton radio à cocher

ça me semble vraiment simple pour que je ne déchante pas bientôt.

qu'en pensez-vous?

je vais quand même aller à la plage tiens...
kayorn
"Je ne crois pas en l'au-delà, mais j'emporte tout de même un caleçon de rechange." --woody allen

ViPHP
ViPHP | 1996 Messages

16 août 2008, 17:42

J'ai trouvé : dans ta boucle WHILE tu as mis la balises <form> + </form> aussi tu créé autant de formulaire que de réponse de ta requête.

Sort ces deux balises de ta boucle et le tour est joué.
It is nice to be important but it is more important to be nice
http://www.aureuswebfactory.fr