Formulaire double action

kixz Messages postés 10 Statut Membre -  
 max -
Bonjour , j'ai realisé un formulaire :

<form method="post" action="newsletter.php">
...
</form>

je voudrais savoir si il serait possible de rajouter un action pr le meme formulaire. ( 2 actions en tous )

Merci pour vos infos !!

a bientot !

11 réponses

  1. ric
     
    Bonsoir
    A partir du code suivant, tu définis 2 actions différentes selon tes besoins.
    <script language="javascript">
    function Envoie(Url)
    {
    document.Form_envoi.method='post';
    document.Form_envoi.target='_self';
    document.Form_envoi.action=Url;
    document.Form_envoi.submit();
    }
    </script>
    <form name="Form_envoi">
    <input type="button" name="Retour" value="Retour à la liste" Onclick="Envoie('stage_choix.asp');">
    </form>
    5
  2. kixz
     
    salut les gars !
    dslé gT pas la ce we!
    merci pr vos infos !

    suppozons qe jutiliz le script javascript :
    <script language="javascript">
    function Envoie(Url)
    {
    document.Form_envoi.method='post';
    document.Form_envoi.target='_self';
    document.Form_envoi.action=Url;
    document.Form_envoi.action=Url2;
    document.Form_envoi.submit();
    }
    ...

    jdoi faire cela pour avoir une deuxieme actions ?

    j'ai testé: et sa ne m'executé qe la 2eme action, que dois-je faire ?

    merci a vous !!

    a bientot !
    1
  3. ric
     
    function Envoie(Url)
    {
    document.Form_envoi.method='post';
    document.Form_envoi.target='_self';
    document.Form_envoi.action=Url;
    document.Form_envoi.submit();
    }

    <form name="Form_envoi">
    ...
    blablabla
    ...
    <input type="button" name="Retour" value="Retour à la liste" Onclick="Envoie('stage_choix.asp');">
    ...
    blablabla
    ...
    <input type="button" name="Retour" value="Retour à la liste" Onclick="Envoie('stage_choix2.asp');">
    </form>
    1
  4. Fidzy
     
    Bonjour Kixz,

    Je suis sur le meme cas (mais avec differentes contrainte).

    J'ai été capable de faire 2 posts avec cette variante:

    function Envoie(Url)
    {
    document.Form_envoi.method='post';
    document.Form_envoi.target='_self';
    document.Form_envoi.action=Url;
    document.Form_envoi.submit();
    }

    function MondoublePost()
    {
    Envoie('http://monpremier.php');
    Envoie('http://monsecond.pl');
    }

    Fait attention à ce que ton premier appel ne charge une page. Cela pourrait écraser ta page (et donc cesser l'exécution de ton script).

    Fidzy
    1
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Springbox
     
    Bonjour,
    J'avais le même problème, j'ai cherché un moment. La solution est pourtant simple : ce n'est pas pas dans le formulaire qu'il faut intervenir, mais, dans l'exemple cité dans le premier post, sur le fichier "newsletter.php". Il suffit d'y programmer les deux actions, à savoir, enregistrer l'adresse mail transmise par le formulaire dans une base de donnée et être prévenu par mail qu'une nouvelle entrée a été ajoutée.

    Moi, je voulais enregistrer le pseudo des posteurs de mon livre d'or nom seulement dans une bdd, mais aussi dans un cookie.
    1
  7. kixz Messages postés 10 Statut Membre
     
    Bonjour !

    Ce que tu me propose m'affiche deux boutons distinct. Es t il possible d'en avoir un seul qui revoi vers 2 actions ?

    mer6 !!!
    bon jée !
    0
  8. ric
     
    Un truc dans le genre
    function Envoie(Url) 
    { 
    if(document.Form_envoi.champ1.value='cequetuveux') {
    document.Form_envoi.action=Url; 
    } 
    if(document.Form_envoi.champ2.value='laaussicequetuveux') {
    document.Form_envoi.action=Url2; 
    }
    ...etc
    ...
    document.Form_envoi.method='post'; 
    document.Form_envoi.target='_self'; 
    document.Form_envoi.submit(); 
    }
    
    
    <form name="Form_envoi"> 
    ... 
    un champ 1
    un champ 2
    ... 
    <input type="button" name="" value="" Onclick="Envoie('');"
    0
  9. kixz Messages postés 10 Statut Membre
     
    Désolé , c'est encore moi !

    jvous explique mon pb en detail , pcq a mon avi jme suis mal expliqué !

    en fait , j'ai un champ ( qui recupere l'adresse email) , ma premiere action execute mon fichier.php qui va enregistré l'adresse mail ds une base de donnée.
    Je voudrai etre prévenu par mail , lorsque un mail est ajouté!
    j'ai utilizé la fonction mail ds le php , mais chez free , sa pose pb !

    eux il propose un truc pr recevoir le formulaire par mail
    ACTION="http://perso0.free.fr/cgi-bin/form2mail.pl"

    je doi metre sa comme action !
    dc il me faut pr le mem bouton et pr un seul champ qq chose qui puiss m'executer les 2 actions

    une idée ?
    Merci !!!!!!!!!!!!
    0
    1. me soule les ggeks SMS
       
      Tu pourrais pas écrire en français...
      0
    2. max
       
      ggek ?
      0
  10. Thope
     
    Bonjour,

    J'ai utilisé cette solution avec mon premier script qui ne charge aucune page :

    <%

    email = Request.Form("email")
    url = Request.ServerVariables("URL")

    Sql = "select email_simul from sim_contacts "

    set rs = MaConnexion.execute(Sql)
    if email <> "" then

    while not RS.eof

    if rs("email_simul") = "" & email & "" then

    ok = 1

    end if

    RS.MOVENEXT
    wend
    RS.close

    if ok <> 1 then

    Sql = "INSERT INTO sim_contacts(email_simul) VALUES('" & email & "')"

    MaConnexion.execute(Sql)
    end if

    end if

    %>

    Mais ensuite il ne veut pas continuer le deuxieme script ....

    function MondoublePost()
    {
    Envoie('http://monpremier.asp'); ====> celui la marche (cf code au dessus)
    Envoie('http://monsecond.asp'); ====> mais celui là ne passe pas ...
    }
    0
  11. blackdiamant
     
    Il faut valider le formulaire par javascript appelant la première page comme une fausse source et non pour l'ouvrir avec un return valide genre < type=javascript src="la1page.php">.

    la validation entraine l'exécution de la premiere page et une confirmation du formulaire. La seconde s'ouvrira ensuite automatiquement.
    0
    1. Fidzy
       
      BlackDiamond, Nous donnerais-tu un exemple ?
      0
  12. kij_82 Messages postés 4102 Date d'inscription   Statut Contributeur Dernière intervention   857
     
    Je te conseil une solution peu être plus à ta portée si tu ne connais par le JavaScript :
    Au lieu de ne mettre qu'un seul bouton d'envoi, tu en met deux comme suit par exemple intitulé "form.php":

    <?php
    if(isset($_POST['confirmer']))
    echo "vous avez confirmer votre message<BR>";
    else if(isset($_POST['pas_confirmer']))
    echo "Vous n'avez pas confimer votre message<BR>";
    ?>

    <FORM>

    Entrer votre message :<BR>
    <INPUT TYPE="text" NAME="texte_bidon">

    <INPUT TYPE="submit" NAME="confirmer" VALUE="confirm">
    <BR>
    <INPUT TYPE="submit" NAME="pas_confirmer" VALUE="no_confirm">

    </FORM>

    Good luck! @++
    -2