2 boutons Submit pour un formulaire

Petit nouveau ! | 3 Messages

07 juin 2005, 12:02

Bonjour !
J'aimerais pouvoir avoir un formulaire avec un bouton "modifier" et un bouton "supprimer":
<form name="maNews">
<input type=hidden name=idNews value=7/>
<input type=text name=title value="mon titre de ews"/>
<input type=submit value="Modifier"/>
<input type=submit value="Supprimer"/>
</form>

Comment faire la différence, par exemple en php, entre le clic sur Modifier et le clic sur Supprimer ?

Eléphanteau du PHP | 14 Messages

07 juin 2005, 12:23

hum...
si tu donne le même nom à tes boutons mais deux valeurs différentes, quand tu traites l' action a faire tu fais par exemple:

dans ton formulaire:
<form name="maNews" action="machinchouette.php" method="post">
<input type=hidden name=idNews value=7/>
<input type=text name=title value="mon titre de news"/>

<input type=submit name="action" value="Modifier"/>
<input type=submit name="action" value="Supprimer"/>
</form>

dans ton script:
<?php
if ($_POST['action'] == 'Modifier')
{ //ton code si modifier}
elseif ($_POST['action'] == 'supprimer')
{ //ton code si supprimer}
?>
après si tu veux que chaque bouton envoie a une page différente, faudra deux balises form avec un bouton dans chaque

corrigez moi si je me suis trompé^^

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

07 juin 2005, 13:01

hum...
si tu donne le même nom à tes boutons mais deux valeurs différentes, quand tu traites l' action a faire tu fais par exemple:

dans ton formulaire:
<form name="maNews" action="machinchouette.php" method="post">
<input type=hidden name=idNews value=7/>
<input type=text name=title value="mon titre de news"/>

<input type=submit name="action" value="Modifier"/>
<input type=submit name="action" value="Supprimer"/>
</form>

dans ton script:
<?php
if ($_POST['action'] == 'Modifier')
{ //ton code si modifier}
elseif ($_POST['action'] == 'supprimer')
{ //ton code si supprimer}
?>
Ca, je suis pas sûr que ça marche !!!! Mais le meilleur moyen de le savoir, c'est de tester !!!

Sinon il existe des <input type="button" onClick="submit()"> qui ont le même fonctionnement que les bouton submit et qui permettent de mettre plusieurs bouton pouvant servir a valider !!!
Je pense que si tu donne 1 nom différent à chaque bouton et que tu teste l'existence du bouton comme le dit veronique, tu devrais arriver à tes fins
après si tu veux que chaque bouton envoie a une page différente, faudra deux balises form avec un bouton dans chaque

corrigez moi si je me suis trompé^^
C'est l'une des bases des formulaires !!!
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Modérateur PHPfrance
Modérateur PHPfrance | 2575 Messages

07 juin 2005, 13:27

je suis d'accord avec véronique, mais il faut reprendre les inputs nécéssaires dans chaque form :
1. pour la modif : les champs idNews et title + le submit modifer
2. pour la suppression seul idNews et le submit Supprimer sont nécéssaire
Exemple :
<!-- Modification -->
<form action="machinchouette.php" method="post"> 
<input type=hidden name=idNews value=7/> 
<input type=text name=title value="mon titre de news"/> 
<input type=submit name="action" value="Modifier"/> 
</form> 
<!-- Suppression -->
<form action="machinchouette.php" method="post"> 
<input type=hidden name=idNews value=7/> 
<input type=submit name="action" value="Supprimer"/> 
</form> 
Le script PHP d'action est le même que celui de véronique
--------//////----//---//----//////
-------//---//----//---//----//---//
------//////----//////-----//////
-----||--------||--||---||
Prendre le recul n'est pas une perte de temps.


ps: Affrontez moi dans l'arène

Petit nouveau ! | 3 Messages

07 juin 2005, 14:01

Ah ! oui ! Excellent !

En fait j'aimerais éviter de mettre trop de formulaires car cela fait un bon paquet de variables à chaque fois (dans mon site je ne traite pas des news) et les recopier induira des erreurs...

Pour info je propose aussi cette méthode pour mettre des liens hypertextes à la place des boutons:
<input type=hidden name=action value="Modifier" />
<a onClick="javascript:document.maNews.submit();" style="cursor:pointer">Modifier</a>
<a
 onClick="
   javascript:
   document.maNews.action.value='Supprimer';
   document.maNews.submit();
 "
 style="cursor:pointer"
>
Supprimer
</a>
(corrigez-moi si je ne suis pas respectueux de la norme de codage)
Modifié en dernier par papa le 07 juin 2005, 14:05, modifié 1 fois.

Eléphanteau du PHP | 14 Messages

07 juin 2005, 14:04

cool! bon courage pour la suite!