2 boutons submits dans le même formulaire - PHP - Programmation
Marsh Posté le 14-09-2004 à 11:59:18
attentio a écrit : |
C'est normal. Je vois 2 solutions :
- soit tu fais des "vrai" boutons submit :
<input type="submit" value="Supprimer" name="suppr" />
<input type="submit" value="Recalculer" name="recalc" />
et tu testes ensuite dans le PHP si tu as $_POST['suppr'] ou $_POST['recalc']
- soit tu passes par le javascript. Tu fais un champ caché qui sera mis à jour selon que l'utilisateur clique sur supprimer ou recalculer :
<input type="hidden" name="action" value="recalc" />
<a href="javascript:suppr();"> Supprimer </a>
<a href="javascript:recalc();"> Recalc </a>
Avec les fonctions javascript qui seraient qqchose dans le genre (à vérifier la syntaxe, je suis pas un pro du js) :
function suppr(){
Document.form_caddy.action.value = "suppr";
Document.form_caddy.submit();
}
function recalc(){
Document.form_caddy.action.value = "recalc";
Document.form_caddy.submit();
}
"Document.form_caddy.action.value" ne doit sûrement pas marcher
Marsh Posté le 14-09-2004 à 17:05:15
Ou un peu plus simple mais dans le même esprit :
tu fais un champ caché nommé action :
<INPUT TYPE="HIDDEN" NAME="action" VALUE="">
et sur tes boutons submit, tes images ou autre objet de validation, tu modifies la valeur de action qui est supposé être dans la forme "form" :
<INPUT TYPE="SUBMIT" NAME="submit" VALUE="Supprimer" onClick="document.form.action.value='suppr';">
Marsh Posté le 14-09-2004 à 18:36:52
pascal_ a écrit : C'est normal. Je vois 2 solutions : |
Et moi qu'ait toujours cru qu'on pouvait pas avoir 2 boutons submit avec un action "différent", c'etait si simple que je n'y ai pas pensé
Marsh Posté le 15-09-2004 à 15:55:48
aspegic500mg a écrit : Et moi qu'ait toujours cru qu'on pouvait pas avoir 2 boutons submit avec un action "différent", c'etait si simple que je n'y ai pas pensé |
perso j'en gere parfois plus de 2 avec des tableaux !(boutons modifier/supprimer en colonne)
je vois pas ou est la difficulté
de préférence faites le en PHP, le javascript est à bannir pour ce genre de chose
Marsh Posté le 15-09-2004 à 21:18:16
spike a écrit : |
Je ne serais pas aussi catégorique.
Marsh Posté le 15-09-2004 à 23:09:22
facile ... facile?
mais est ce que tu pourrais me dire comment tu ferais les submits tout en php /mon code
ATTENTIO
debutant malgré lui
Marsh Posté le 15-09-2004 à 23:10:20
sircam a écrit : Je ne serais pas aussi catégorique. |
On ne base pas des fonctionnalités nécessaires d'un site sur un truc désactivable sur le client...
Marsh Posté le 18-09-2004 à 00:27:52
naceroth a écrit : On ne base pas des fonctionnalités nécessaires d'un site sur un truc désactivable sur le client... |
L'idéal étant de faire une vérif en javascript ET une vérif en php, ca allège le serveur (faut en avoir besoin), ca allège le temps d'attente pour le visiteur (mais si page légère et/ou visiteur en adsl, pas besoin), mais c'est + de temps à coder.
Marsh Posté le 18-09-2004 à 00:36:04
Oui oui, on l'a déjà dit et redit et ce n'était nullement mon propos
Je précisais juste qu'il ne fallait pas baser une verif sur le seul jscript. Chez moi, ton exemple plus haut en jscript planterait par exemple (et pas parce que le .value est de trop hein ))
Marsh Posté le 18-09-2004 à 14:00:49
j'ai fais ca en php mais ca marcha pas !!!
si quelqu'un pouvait m'aider
Code :
|
il ya toujours des confusions dans mes boutons... je ne trouve pas la solution pour bien rendre distinct ces deux submits
merci infiniment
Marsh Posté le 18-09-2004 à 17:00:03
attentio a écrit : j'ai fais ca en php mais ca marcha pas !!! |
Bon, déjà, respecte les quelques réglesde l'html (juste celle là, je demande même pas l'xhtml) donc les attributs entre "
Ensuite, pourquoi pas utiliser un champ hidden plutôt qu'un index.php?page=caddy comme action, ça t'éviterait devoir jongler entre $_GET et $_POST dans le traitement ?
Et pour finir, dans la version php, c'est pas dans le forumulaire que tu dois faire la disctinction entre les deux submits, mais sur la page de traitement
Marsh Posté le 20-09-2004 à 17:30:22
(dommage que je gagne pas un euro chaque fois qu'on pose une question sur les champs hidden )
ton formulaire :
Code :
|
ton fichier index.php
Code :
|
exemple basique sans vérifications particulières
Marsh Posté le 21-09-2004 à 01:10:39
slt!
juste une ptite question de debutant !!!!
alors a koi ressemblerai mon code si:
- ACTION1 reactualise simplement la page index.php
- et que ACTION 2 = unset($_SESSION['caddy'][$ref]);
est ce que ceci suffit :
Code :
|
ou je suis completement a coté de la plaque
merci infiniment de ton aide
Marsh Posté le 21-09-2004 à 01:57:45
A mon avis, si tu n'interviens pas dans le cas où le bouton renvoit 'action1' et que tu n'as pas de traitement par défaut, tu peux simplifier en
Code :
|
Marsh Posté le 21-09-2004 à 11:23:24
z'arrive pas ... z'arrive pas !!!!!!!! de l'aide !!!!
Voila ce qui ce passe quand j'arrive sur ma page, j'ai un Notice: Undefined index sur sender mais quand je clique sur supprimer l'erreur ne s'inscrit plus mais rien ne s'est passé.mais si je clique une deuxieme fois alors mon article va se supprimer.
mais si dans mon caddy G 3 articles il va me supprimer les trois articles ... est ce que ca vient de mon unset qui n'est pas bon ou bien du bouton supprimer passé dans la boucle foreach
Code :
|
merci encore de ton aide
attentio
ps :un point positif lus de confusion entre le bouton recalculer et supprimer
Marsh Posté le 21-09-2004 à 11:26:53
houps, erreur de frappe
Code :
|
Marsh Posté le 21-09-2004 à 18:36:55
Bah oui, forcément, si tu renommes les boutons, t'étonnes pas que mon exemple marche pas
(ce qui est marrant, c'est que même après correction, il suit pas les normes et intègre du jscript pour faire un truc idiot, y a des fois je me demande pourquoi on aide )
Marsh Posté le 14-09-2004 à 11:39:19
salut a tous !
G quelques difficultés pour creer un bouton "supprimer"dans un formulaire qui contient deja un bouton submit, qui lui, me permet de recalculer le prix total d'un caddie.
en fait ce bouton"supprimer" doit me permettre de supprimer chaque article dans le caddie.
voici le code de mon formulaire actuellement :
la ca marche ...
et en fait il faudrait qu'a l'interieur de ce formulaire G un bouton du genre :
seulement, ca me fait deux boutons submits ...resultat ya des confusions partout avec les actions.
j'ai essayé plusieurs choses mais il ya toujours C confusion entre les 2 boutons
pour info j'ai un champ quantité :
qui, si il est a 0 me supprime bien mon article
voila j'espere avoir été clair
merci de bien vouloir m'aider .... je suis dans la detresse la + complete
attentio
Message édité par attentio le 24-03-2005 à 21:16:15
---------------
L'ordinateur a de la mémoire mais aucun souvenir ...