[RESOLU] 2 submit pour un form

2 submit pour un form [RESOLU] - HTML/CSS - Programmation

Marsh Posté le 12-08-2005 à 14:05:01    

Bonjours ,
 voila je cherche a avoir 2 lien possibles dans une form afin de recup des données pour 2 utilisation bien differente ,en evitant de passer pour la 2eme par un passage des variable par adresse du style toto.php?a=$a&&b=$b... Donc pour avoir un form avec 2 submit qui pointe vers 2 page differentes,
 Merci pour vos reponse ;)


Message édité par yopens le 13-08-2005 à 23:52:44
Reply

Marsh Posté le 12-08-2005 à 14:05:01   

Reply

Marsh Posté le 12-08-2005 à 14:12:42    

ben du javascript
 
genre : le premier bouton appelle la fonction ENvoiPage1
et cette fonction sera :  
function envoipage1() {
  monform = document.getElementById("monformulaire" );
  monform.action = "page1.php";
  monform.action = submit;
}
 
bien entendu il y a moyen de gérer facilement tout ca

Reply

Marsh Posté le 12-08-2005 à 14:26:40    

Et si le mec a pas le JS activé il fini ou?


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 12-08-2005 à 14:33:07    

ben tu vois esox_ch je ne lui ai pas dit pour une fois, car jsutement, le fait d'avoir 2 submits pour 2 pages différentes peut poser pas mal problème, donc la question est plutôt, tu pourrais pas plutot ne mettre qu'une seule page et faire une verif de l'action via la valeur du submit ?

Reply

Marsh Posté le 12-08-2005 à 14:52:08    

Ouep ... Hier j'ai eu le meme probleme .. a la fin je m'en suis sorti avec un gros switch un peu moche mais ça a passé ... Mais c'est clair que si tu fais tout via JS ... le mec sans JS il se ramasse le mur


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 12-08-2005 à 14:59:36    

ben moi je m'emmerde pas :  
 
s'il faut faire appel à 2 pages tu fais decette manièer :  
<form action="pageunique.php">
 
 
<input type="submit" name="action" value="action1">
<input type="submit" name="action" value="action2">
</form>
 
et dans pageunique.php tu fais : (c'est fais en gros oki donc je fais pas de controle de machin et de bidule) :o
 
swith($_GET["action" )) {
case action1 : include('pageaction1.php'); break;
case action2 : include('pageaction2.php'); break;
}
 
Le but de la manipulation est de jouer sur la valeur des boutons submits. J'ai fait ça pour une partie admin d'un site, sur un seul formulaire il devait y avoir 3 ou 4 submit et un lien vers la page de traitement, et dans les 2 cas que ce soit du GET ou du POST, j'ai une fonction que s'occupe de récupérer la valeur Action et de la traiter si besoin est.
evidement on peut directement ecrire tout le code mais si pageaction1 et lautre sont utilisées par d'autres formulaires c'est évident de les inclure.
 

Reply

Marsh Posté le 12-08-2005 à 17:07:22    

Heu ... je vais peut-etre dire une connerie ... mais la valeur du bouton est envoyée meme si le bouton n'est pas pressé non ? [:pingouino]


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 12-08-2005 à 18:03:54    

ben non
 
essaye tu verras bien, c'est ce que je fais dans mes formulaires pour ne pas m'emmerder. Quand il y a plusieurs submit, je leur donne tous le même nom, et seul celui qui sera pressé aura sa valeur envoyée.

Reply

Marsh Posté le 12-08-2005 à 20:15:11    

Ah j'avais pas vu qu'il avaient le meme nom ... Ca sent le hack a plein nez ça Oo... Teoriquement le nom de l'element doit etre unique en son genre Oo.... Comme l'id ... (D'ailleurs, vous saviez que tomcat prend pas en compte le id mais seulement le nom ? [:pingouino] C'est a la limite du scandaleux)


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 12-08-2005 à 20:29:57    

mais non c'est l'id qui doit être unique
le nom d'un champ dans un formulaire n'a pas forcément besoin d'être unique :  
 
exemple : 3 boutons radios, ils portent tous les trois le meme nom.
Un ensemble de checkbox qui portent aussi le meme nom, et le resultat tu le récupère sous forme : val1,val2,val3
 
et pour les boutons c'est pareil.
Je préfère utiliser cette technique ca me simplifie la vie quand j'ai plusieurs boutons dans mon formulaire

Reply

Marsh Posté le 12-08-2005 à 20:29:57   

Reply

Marsh Posté le 12-08-2005 à 20:44:01    

On est d'accord pour les checkbox dans le sens où c'est fait pour ça :D ... Mais je me demande si pour les boutons c'est un truc permis ... Enfin bon c'est une astuce a laquelle j'avais jamais pensé ... bien vu :D


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 12-08-2005 à 22:37:58    

ben c'est un truc permis, même FlorentG le préconise

Reply

Marsh Posté le 13-08-2005 à 20:59:56    

esox_ch a écrit :

Et si le mec a pas le JS activé il fini ou?


 
non mais lol quoi, comment veux tu surfer sans le JS activé... Pourquoi pas surfer avec lynx pendant qu'on y est...

Reply

Marsh Posté le 13-08-2005 à 23:52:11    

merci pour vos reponse , j'ai opte pour la solution de gatsusat , merci a toi  ^^

Reply

Marsh Posté le 14-08-2005 à 09:17:56    

ToxicAvenger a écrit :

non mais lol quoi, comment veux tu surfer sans le JS activé... Pourquoi pas surfer avec lynx pendant qu'on y est...


 
Pour ton info ça m'arrive de surfer avec Lynx (quand j'installe un systeme sans serveur graphique et qu'il y a une boulette que je sais pas resoudre).  
A part ça, tout les navigateurs interpretent JS a leur maniere, ce qui le rend souvent peu accessible... Deplus je surf avec pratiquement toutes les fonctions JS désactivées parceque j'estime par exemple que je suis le seul a avoir le droit d'ouvrir une nouvelle fenetre sur mon browser =>loins les window.open, je veux pas qu'on me redirige sans me dire pourquoi ni comment => loin les window.location, et la liste est encore relativement longue


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 14-08-2005 à 09:22:12    

dans ces cas là, surf pas [:spamafote]

Reply

Marsh Posté le 14-08-2005 à 14:27:24    

dans ces cas là arrête de faore un site web ToxicAvenger, jvais peut etre paraitre lourd, mais même si le JS existe c'est pour améliorer le confort de navigation du visiteur, pas le contraindre à l'activer pour utiliser ton site. Et si tu passes par du JS pour patcher des problèmes de ton site coté serveur là c'est encore plus grave

Reply

Marsh Posté le 14-08-2005 à 15:15:21    

ToxicAvenger a écrit :

dans ces cas là, surf pas [:spamafote]


Ce genre de propos dans un forum de programmation devrait valoir un [:ban] immediat [:pingouino]


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed