Passage de variable avec formulaire

Petit nouveau ! | 6 Messages

22 janv. 2006, 17:20

Bonjour,

Dans la création d'un catalogue avec base de donnée, sur la page admin je veux pouvoir editer ou supprimer un objet.

J' utilise une boucle while pour afficher chaque objet avec sa photo et ses caractérisque, ainsi qu'un bouton 'modifier' et un bouton 'supprimer'.

Lorsque l'on presse un bouton, je voudrais pouvoir savoir de quel objet il s'agit.
Je capte bien la pression sur le bouton mais je ne sais pas comment passer l'id de l'objet.

J'ai essayé par un champ hidden mais ça n'a pas marché. Le problème est ma boucle while. avec la ligne
<input type="text" name="toto" value =<?php echo $Row["Id"]; ?>
la variable toto ne garde que l' id du dernier produit

Help me please...

Mammouth du PHP | 19672 Messages

22 janv. 2006, 17:32

Sans voir le code de ta boucle, difficile de t'aider :-k
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Petit nouveau ! | 6 Messages

22 janv. 2006, 18:05

Exact, je l'ai allégée à 'lessentiel.
<?php
while ( $Row = mysql_fetch_array($sousResult) )
{
   
$varNom = $Row["Nom"]; echo ($varNom. "<br>");
     
$varcodeimage = $Row["CodeImage"]; echo ("<img src=\"../admin/imagesCatalogue/".$varcodeimage."\"" );

 
$vardescription = $Row["Description"]; echo ($vardescription . "<br>");

echo (Prix unitaire:); 

$varPrix = $Row["Prix"];
echo ($varPrix . " Euros<br><br>");

<input type="hidden" name="toto" value =<?php echo $Row["Id"]; ?> 
<input name="varModifier"  type="submit" value="Modifier"></td>
<input name="varSupprimer"  type="submit" value="Supprimer"></td>
<input name="varArchiver"  type="submit" value="Archiver"></td>
<input name="varCommand"  type="submit" value="Commander"></td>

}

Petit nouveau ! | 6 Messages

22 janv. 2006, 18:05

Et la séquence pour récupérer la variable

<?php

	if( $varModifier )
	{
	echo "MODIFICATION DEMANDEE";

	echo '<p>Votre choix : ' . $_POST['toto'] . '</p>';

	echo $toto;

	}
?>

Eléphant du PHP | 353 Messages

22 janv. 2006, 18:35

c'est tout a fait normale que tu garde la dernière valeur car tu enregistre à chaque fois sur le meme name !! ce que tu dois faire , c'est enregistrer chaque valeur dans un array !! pour celà , tu nommes ton input de cette manière =>

<input name="info[]" value="...">

apres ton post , tu recupère un array !

donc pour recupérer les variabel ce sera dans ce style =>

$mavaleur = $_POST['info'][0] , ...

Eléphant du PHP | 353 Messages

22 janv. 2006, 18:38

je viens de remarque autre chose un peu bizarre dans ta boucle while =>
<?php 
while ( $Row = mysql_fetch_array($sousResult) ) 
{ 

$varNom = $Row["Nom"]; echo ($varNom. "<br>"); 

$varcodeimage = $Row["CodeImage"]; echo ("<img src=\"../admin/imagesCatalogue/".$varcodeimage."\"" ); 


$vardescription = $Row["Description"]; echo ($vardescription . "<br>"); 

echo (Prix unitaire:); 

$varPrix = $Row["Prix"]; 
echo ($varPrix . " Euros<br><br>"); 
//première ligne corrigé pour linsertion de ta variable --|
<input type="hidden" name="toto" value ="<?=$Row['Id']?>">
<input name="varModifier" type="submit" value="Modifier"></td> 
<input name="varSupprimer" type="submit" value="Supprimer"></td> 
<input name="varArchiver" type="submit" value="Archiver"></td> 
<input name="varCommand" type="submit" value="Commander"></td> 

}
tu mets
<input name="varModifier" type="submit" value="Modifier"></td> 
<input name="varSupprimer" type="submit" value="Supprimer"></td> 
<input name="varArchiver" type="submit" value="Archiver"></td> 
<input name="varCommand" type="submit" value="Commander"></td>



dans la boucle !! je ne sais pas trop si c'est ce que tu veux faire mais ceci va repeter tes boutons autant de fois que tu as de valeurs recupérées par ta requete !! :?

Petit nouveau ! | 6 Messages

22 janv. 2006, 18:42

effectivement, je récupère un array après le post mais ce que je cherche à avoir est un peu différent.

Sur la page, il y a N objets qui sont stockés en BDD avec chacun un ID qui les référence.

Ma boucle while permet d'afficher les N objets sur une page et de créer pour chacun un bouton MODIF.

Quand l'utilisateur clique un de ces bouton, il faut que je sache à quel objet il était associé pour pouvoir ensuite afficher les données propres à cet objet.

J'espère avoir été un peu plus clair dans mes explications.

Petit nouveau ! | 6 Messages

22 janv. 2006, 18:45

TICTAC -> Effectivement pour la ligne avec le prix unitaire, elle est normale en dehors des balises php, mais j'ai simplifié en enlevant tout l'affichage des table.

Sinon je veux bien créer pour chaque objet une série de bouton. C'est la partie admin d'un catalogue.

Petit nouveau ! | 6 Messages

23 janv. 2006, 19:08

Help me please !

Est-ce que personne n'aurait la solution à mon problème, ou un moyen différent d'arriver au résultat recherché ?