Passer une variable javascript avec POST

Bonjour,
Je cherche à passer le résultat d'une fonction javascript avec les données d'un formulaire html (méthode POST) à la page suivante.

Je m'explique :

Page d'accueil :
- j'exécute un javascript pour connaître l'heure locale du visiteur de mon site
- je l'invite à choisir une langue de navigation grâce à un FORM html classique
- il clique sur un bouton pour passer à la page suivante.

Page suivante :
- je récupère la langue sélectionnée par le visiteur
- je voudrais récupérer aussi le résultat du javascript de la page d'accueil.

Je n'arrive pas à insérer le résultat de ma fonction javascript dans un champ hidden de mon formulaire en page d'accueil.

Merci de votre aide

Pex
Configuration: Mac OS X
Safari 528.16

6 réponses

  1. Bonjour,

    Assumons que dans ton formulaire t'as ces champs

    <form name="nom">
    Prénom: <input name="prenom" type="text"><br>
    Nom de Famille: <input name="nomfamille" type="text">
    </form>
    <form name="principal" onsubmit="return traitement(this)">
    <input name="invisible" type="hidden">
    <input type="submit">
    </form>

    Il suffit alors d'y ajouter le script suivant

    <script type="text/javascript">
    function singleName(form)
    {
    form.invisible.value = LA_VALEUR_QUE_TU_VEUX_FAIRE_PASSER;
    return true;
    }
    </script>

    et d'utiliser le POST normallement.

    Bonne chance
    1. il faut mettre tous les attributs dans les balises html notament le name qui va te servir pour charger la valeur avant l'envoi

      <html>
      ...
      </<script language="Javascript">
      ...
      var g = y + "-" + mo + "-" + d + " " + h + ":" + m + ":" + s;
      //on charge la valeur dans le champ cache
      document.form1.date_g.value = g;
      </script>
      
      <!-- j'ai un unique formulaire (je n'en veux qu'un seul dans ma page web) : -->
      
      <form name="form1" action="next_page.php" method="post">
      
      <input type="text" name="nom"   id="nom" value="" size=60 />
      
      <!-- champ cache pour passage a la page suivante :-->
      <input type="hidden" name="date_g"  id="date_g" value= "" />
      
      
      <input type="submit" name="start" value="start !" style="width:60px">
      
      </form>
      </html>
      1. Mille fois merci pour ce code! des journées que je cherchais quelque chôse qui fonctionnait et la, sa fonctionne à 200% encore merci!
    2. il en manque un petit bout a mon precedent post
      <html>
      ...
      </<script language="Javascript">
      functiion ajoutJS(){
      .....
      var g = y + "-" + mo + "-" + d + " " + h + ":" + m + ":" + s;
      //on charge la valeur dans le champ cache
      document.form1.date_g.value = g;
      }
      </script>
      
      <!-- j'ai un unique formulaire (je n'en veux qu'un seul dans ma page web) : -->
      
      <form name="form1" action="next_page.php" method="post" onSubmit="ajoutJS();">
      
      
      1. Merci beaucoup d'avoir pris le temps de me répondre, Py-Rex. Malheureusement, je n'ai pas tout capté.

        Imagine que j'ai ma variable javascript (g), générée à l'ouverture de la page web :

        <html>
        ...
        </<script language="Javascript">
        ...
        var g = y + "-" + mo + "-" + d + " " + h + ":" + m + ":" + s
        </script>

        <!-- j'ai un unique formulaire (je n'en veux qu'un seul dans ma page web) : -->

        <FORM action="next_page.php" method="post">

        <input type="text" name="nom" size=60 />

        <!--HIDDEN FIELDS TO BE PASSED ON TO NEXT PAGE :-->
        <input type="hidden" name="nom" value= <!--MA VAR JAVASCRIPT--> />

        <valid_button>
        <INPUT type="submit" value="start !" style="width:60px">
        </valid_button>
        </FORM>
        </html>

        J'ai du mal à comprendre comment j'applique ta méthode à mon contexte.

        Merci encore

        Pex
        1. Excellent : ça fonctionne !

          Merci beaucoup à vous deux pour votre aide et veuillez excuser mon manque de réactivité.

          Pex
          1. J'ai essayé la solution proposée ici. Elle n'a pas marché pour moi. J'ai posté mon problème sur le forum webmastering sous le titre: Passer une variable de javascript à php via form.

            Pouvez-vous lire ce post et éventuellement me dire ce qui cloche.

            Merci d'avance,

            proseme