Partage
  • Partager sur Facebook
  • Partager sur Twitter

envoyer les dimensions de l'écran dans un formulaire

Sujet résolu
    8 avril 2009 à 23:43:09

    Bonjour,

    Je sais récupérer les valeurs de l'écran d'un utilisateur:
    <script language="JavaScript">
    ecran_user = screen.height + " x " + screen.width;
    </script>
    


    Très simple de le faire entrer ensuite sur la page avec document.write, mais je souhaite entrer cette valeur (ecran_user) dans une balise d'un formulaire pour la stocker en bdd à des fins de statistiques.

    La valeur doit entrer dans value:
    <form id="postform" method="post" action="{U_ACTION}">
    ...
    <input type="hidden" id="screen" name="screen" value="" />
    


    Une petite aide est bienvenue car je bloque...
    • Partager sur Facebook
    • Partager sur Twitter
    Anonyme
      8 avril 2009 à 23:48:52

      Va voir le tuto dans ma signature, vu l'endroit où tu as appris le JS tu en as besoin :)

      gebi("screen").value = ecran_user;
      


      Tout simplement.
      • Partager sur Facebook
      • Partager sur Twitter
        8 avril 2009 à 23:52:08

        C'est pourtant la base... Il faudrait peut-être revoir JS du début... ?

        // D'abord on récupère l'input grâce à son id
        var inp = document.getElementById("screen");
        // Et ensuite en attribut le value
        inp.value = ecran_user;
        


        grilled.
        • Partager sur Facebook
        • Partager sur Twitter
          9 avril 2009 à 0:21:53

          Merci à tous les deux de ces réponses éclair !!

          Mais, j'avais déjà fait cela, et rien ne s'affiche à l'endroit voulu...
          value="" reste désert!
          • Partager sur Facebook
          • Partager sur Twitter
          Anonyme
            9 avril 2009 à 0:24:12

            heu rassures moi, tu vérifies bien le contenu après avoir envoyé le formulaire et pas en regardant la source ?

            Ha oui, en général les résolutions c'est width×height pas height×width
            • Partager sur Facebook
            • Partager sur Twitter
              9 avril 2009 à 0:35:05

              Oui, je te rassure, je vérifie dans la bdd après le submit

              La valeur retournée est 0 alors que default est ''
              • Partager sur Facebook
              • Partager sur Twitter
              Anonyme
                9 avril 2009 à 0:36:30

                non faut pas vérifier dans la bdd, faut vérifier dans la page php (ou autre) qui récupère le formulaire. Que contient $_POST["screen"] ?
                • Partager sur Facebook
                • Partager sur Twitter
                  9 avril 2009 à 0:46:49

                  Je récupère le valeur par:
                  if (isset($_POST['upload']))
                  {
                      ...
                      $screen = utf8_normalize_nfc(request_var('screen', '', true));
                  


                  C'est avec phpbb3, j'avais mis 'screen', 0
                  J'ai modifié, mais la valeur est vide maintenant
                  • Partager sur Facebook
                  • Partager sur Twitter
                  Anonyme
                    9 avril 2009 à 0:49:27

                    j'pige rien, pas envie de me plonger dans les problèmes de phpbb3

                    que renvoie
                    echo $_POST["screen"] ?
                    • Partager sur Facebook
                    • Partager sur Twitter
                      9 avril 2009 à 0:56:43

                      Il ne me renvoie rien, c'est vide, nada!

                      Par contre, un petit truc me gratouille l'esprit!
                      après:
                      <form id="postform" method="post" action="{U_ACTION}"
                      

                      mon formulaire contient:
                      <fieldset class="fields1">
                      

                      Cela n'aurait il pas une certaine importance pour:
                      var inp = document.getElementById("screen");
                      inp.value = ecran_user;
                      

                      A tout hasard ?
                      • Partager sur Facebook
                      • Partager sur Twitter
                      Anonyme
                        9 avril 2009 à 1:11:31

                        nope riena voir, tu est sur de pas avoir un autre élement avec l'id screen dans ta page ?
                        • Partager sur Facebook
                        • Partager sur Twitter
                        Anonyme
                          9 avril 2009 à 1:43:15

                          bah oui, bah oui, si tu essaie de récupérer l'élement avec javascript avant de le crée dans le HTML jamais ça marche.

                          Lit mon tuto, le premier point sur la place du script et le fonctionnement du chargmenet d'une page et met ce bout de code _après_ le formulaire ou utilise wondow.onload. La plupart des codes javascript que tu as trouvé font peur a voir m'enfin.
                          • Partager sur Facebook
                          • Partager sur Twitter
                            9 avril 2009 à 2:36:05

                            Merci !!!!!

                            Cela fonctionne super bien maintenant...

                            Grâce à ces conseils très bien éclairés, cette fonction... fonctionne!

                            J'en suis à mes début javascript et apprend pour avancer.
                            En php, je m'en sort mieux, j'ai créé cette galerie images pour phpbb, mais javascript est incontournable pour tout un tas de choses.

                            Et encore merci, à plus...
                            • Partager sur Facebook
                            • Partager sur Twitter

                            envoyer les dimensions de l'écran dans un formulaire

                            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                            • Editeur
                            • Markdown