Partage
  • Partager sur Facebook
  • Partager sur Twitter

Récupérer valeur en PHP et comparer en JavaScript

Valeur des cases cochées

Sujet résolu
    27 avril 2017 à 14:15:29

    Bonjour. J'ai un petit soucis je sais que je ne dois pas mélanger PHP et JavaScript voilà mon problème sur une première page le joueur choisit 6boules cases à cocher parlais 49 il valide formulaire ensuite page 2affiche ses choix puis tirage en JavaScript de 6boules comment comparer les boules choisis en PHP avec le tirage JavaScript ça ne marche pas.

    Merci de votre aide.

    -
    Edité par mariongellar 29 avril 2017 à 14:30:24

    • Partager sur Facebook
    • Partager sur Twitter
    "TOUT LE MONDE EST UN GENIE. Mais si vous jugez un poisson sur ses capacités à grimper à un arbre, il passera sa vie à croire qu'il est stupide" albert Einstein.
      27 avril 2017 à 14:33:47

      Bonjour,

      Si je comprend bien (Tes phrases ne sont pas très claire pour moi ^^') :

      Avec un formulaire tu coche 6 boules, ensuite tu valide et "l'ordinateur en choisis 6 autres"? C'est bien ça?

      Je ne pense pas qu'il est interdit d'utiliser php et javascript.. Tu peux très bien utiliser du php dans ton javascript. L'inverse est par contre impossible. Par exemple :

      var boule 1 = <?php echo $boule1; ?>;

      Ta variable javascript contiendra la chaine de caractère de ta variable PHP. Tu peux donc une fois le formulaire valider ajouter un script javascript qui contiendra les 6 boules sélectionner par l'utilisateur.

      J'espère avoir pu te donner une piste :)

      • Partager sur Facebook
      • Partager sur Twitter
        27 avril 2017 à 21:07:01

        EN FAIT CA Tu as compris ce que je voulais faire excuse moi si je me suis mal exprimé c'est difficile d'expliquer ce que l'on souhaite faire. Merci de ton aide je vais essayer de faire quelque chose et te redit . Bonne soirée.

        Par exemple je veux comparer les choix du joueur au tirage ou l'inverse

        Faire un truc du genre si boule 1du tirage est égale à   case cochée 1 ou case cochée 2etc jusqu'à 49car il  ya 49 cases que le joueur peu cocher

        Ou 

        If isset $_POST[`boule 1`] en php si la case est cochée et si correspondant à l'une des boules du tirage obtient un point.

        Exemple je choisis 2. 8.33.22.45.7Le tirage hasard est 45.6.3.9.25.43

        Le tirage 1  correspond  à l'une des cases cochéesbravo gain un point

        EtcLe tirage 5 ne correspond pas à l'une de vos boules 

        Ou une de vos boules correspond au tirage 

        Voilà en français lol ce que je veux j'espère que je me suis mieux expliquer


        Merci encore pour ton aide.

        -
        Edité par mariongellar 2 mai 2017 à 17:22:29

        • Partager sur Facebook
        • Partager sur Twitter
        "TOUT LE MONDE EST UN GENIE. Mais si vous jugez un poisson sur ses capacités à grimper à un arbre, il passera sa vie à croire qu'il est stupide" albert Einstein.
          29 avril 2017 à 17:00:30

          ENCORE MOI ca ne marche pas sniff

          j'ai essaye ca mais non plus

          var numeroremplacantquandboulepascochee =50;
          
          
          // DESCRIPTION DE LA FONCTION SI MARCHE
          //  SI BOULE1 COCHEE ON RENVOIE LA VALEUR DE LA BOULE1
          // SINON ON RENVOIE LA VALEUR 50 QUI NE PEUT JAMAIS APPARAITRE DANS LE TIRAGE DONC JAMAIS GAGNE 
          // ON DECLARE ENSUITE   / var boule1cochee=boule1cochee ();  POUR POUVOIR UTILISER LA VALEUR OBTENUE 
          function boule1cochee ()
          { if (document.getElementById('boule1').checked == true) {return <?php echo $_POST['boule1'];?>;}
           else { return numeroremplacantquandboulepascochee;}
          }
          
          function boule2cochee ()
          { if (document.getElementById('boule2').checked == true) {return <?php echo $_POST['boule2'];?>;}
           else { return numeroremplacantquandboulepascochee;}
          }
          
          function boule3cochee ()
          { if (document.getElementById('boule3').checked == true) {return <?php echo $_POST['boule3'];?>;}
           else { return numeroremplacantquandboulepascochee;}
          }
          
          function boule4cochee ()
          { if (document.getElementById('boule4').checked == true) {return <?php echo $_POST['boule4'];?>;}
           else { return numeroremplacantquandboulepascochee;}
          }
          
          var boule1cochee=boule1cochee ();
          var boule2cochee=boule2cochee ();
          var boule3cochee=boule3cochee ();
          var boule1cochee=boule4cochee ();
          

          -
          Edité par mariongellar 2 mai 2017 à 17:20:27

          • Partager sur Facebook
          • Partager sur Twitter
          "TOUT LE MONDE EST UN GENIE. Mais si vous jugez un poisson sur ses capacités à grimper à un arbre, il passera sa vie à croire qu'il est stupide" albert Einstein.
            30 avril 2017 à 21:53:34

            le resultat marche si je separe les boules

            <script type="text/javascript">
            var point1 = 0;
            var boule1cochee = <?php echo $_POST['boule1'];?>;
            if ((boule1cochee == tirage[1])||(boule1cochee == tirage[2])||(boule1cochee == tirage[3])
            			||(boule1cochee == tirage[4])||(boule1cochee == tirage[5])||(boule1cochee == tirage[6]))
            			{ document.write("<font color='green'> GAGNE </font>---- la boule 1 que vous avez cochée  correspond à l'une des boules du tirage ---");
            			point1 = point1 + 1;document.write(" nouveau solde "+point10+"</br>");}
            			else 
            				{ document.write("<font color='red'> PERDU </font>----  la boule 1 que vous avez cochée  NE correspond PAS à l'une des boules du tirage ---");
            				point1 = point1 + 0;document.write(" nouveau solde "+point10+"</br>");}
            </script>

             etc pour chaque boule jusqu'a 49  un peu long je vais essayer des fonctions

            ensuite  faut que je vois comment faire pour additionner les points

            car point1 point2 ne sont pas dans le même code

            -
            Edité par mariongellar 2 mai 2017 à 17:23:44

            • Partager sur Facebook
            • Partager sur Twitter
            "TOUT LE MONDE EST UN GENIE. Mais si vous jugez un poisson sur ses capacités à grimper à un arbre, il passera sa vie à croire qu'il est stupide" albert Einstein.
              5 mai 2017 à 21:51:14

              Les points ne s'accumulent pas car quand la boule nest pas cochee ben sa valeur nexiste pas donc code javascript qui compare autre boule ne sexecute pas donc point nexiste pas aidez moi svp
              • Partager sur Facebook
              • Partager sur Twitter
              "TOUT LE MONDE EST UN GENIE. Mais si vous jugez un poisson sur ses capacités à grimper à un arbre, il passera sa vie à croire qu'il est stupide" albert Einstein.
                5 mai 2017 à 23:34:06

                J'ai déja commencé a réfléchiir sur ton soucis est ce que tu pourrais nous mettre l'énnoncé exact de ton soucis parce que je peux tout gérer en php sauf que j'ai surement été plus loin que ton énoncé
                • Partager sur Facebook
                • Partager sur Twitter
                "Il est hélas devenu évident aujourd’hui que notre technologie a dépassé notre humanité"  A.E.
                  6 mai 2017 à 5:43:54

                  Bonjour , voilà mon souci un joueur choisit coche 6boules parmi 49 et validé le formulaire ensuite je récupère les cases cochées et tirage loto en JavaScript nombre aléatoire. Ensuite je veux comparer les deux valeurs soit en JavaScript mais si je n'arrive pas à associer les valeurs des boules cochées pour comparer. Soit en PHP mais alors là variable du  tirage du loto en JavaScript peu pas comparer il ne connais pas .  

                  Transformer valeurs du tirage en JavaScript en PHPou transformer valeurs des boules choisis en PHP en JavaScript

                  Ensuite additionner les point exp

                  Si boule 3 cochée et correspond au tirage gagne1point

                  Si boule34 pas cochée ben on n'en n'a pas besoin 

                  Mais le problème c'est que lorsque la boule n'est pas cochée le code JavaScript enclenche pas 0 point

                   ce qui est normal

                  Merci de ton aide.

                  • Partager sur Facebook
                  • Partager sur Twitter
                  "TOUT LE MONDE EST UN GENIE. Mais si vous jugez un poisson sur ses capacités à grimper à un arbre, il passera sa vie à croire qu'il est stupide" albert Einstein.
                    6 mai 2017 à 7:24:36

                    Bonjour, avec quelque chose de ce genre ?
                    <script type="text/javascript">
                    // Stockage des choix en array JS
                    var choix = ["<?php echo $choix1; ?>", "<?php echo $choix2; ?>", "<?php echo $choix3; ?>", "<?php echo $choix4; ?>", "<?php echo $choix5; ?>", "<?php echo $choix6; ?>"];
                    function calcul () {
                    var resul = 0;
                    for (i = 0; i < 6; i++) {
                      for (j = 1; j < 7; i++) {
                        if (choix[i] == tirage[j]) {
                          resul++;
                          break;
                        }
                      }
                    }
                    return resul;
                    }
                    </script>


                    • Partager sur Facebook
                    • Partager sur Twitter
                    Comar
                      6 mai 2017 à 10:33:52

                      Au risque de paraitre lourd est ce que tu es vraiment obligé de passé par du JS.

                      En php, c'est tout simple,

                      -Tu généres ta grille et chaque fois que tu cliques sur une case tu l'ajoutes dans un tableau jusqu'a en avoir 6

                      -Tu généres aléatoirement un tableau avec 6 chiffres pour les resultat

                      -Pour le traitement array_intersect()

                      <?php
                      $array1 = array("a" => "green", "red", "blue");
                      $array2 = array("b" => "green", "yellow", "red");
                      $result = array_intersect($array1, $array2);
                      print_r($result);
                      
                      /** résultat
                      Array
                      (
                          [a] => green
                          [0] => red
                      )
                      

                      il suffit de calculé la taille du tableau pour avoir le nombre de point

                      ou si tu veux testé boule par boule un foreach sur ta grille avec un in_array sur la grille de résultat

                      <?php
                      $score=0;
                      foreach($grille_user as $chiffre){
                          if(in_array($chiffre, $tab_resultat){
                              echo $chiffre.' vous rapporte un point';
                              $score++;
                          }else{
                              echo $chiffre.' n\'est pas sur la grille de resultat 0 point';
                          }
                      }
                      echo 'Pour cette grille vous avez gagné '.$score.' point(s)';




                      -
                      Edité par kets14 6 mai 2017 à 10:35:25

                      • Partager sur Facebook
                      • Partager sur Twitter
                      "Il est hélas devenu évident aujourd’hui que notre technologie a dépassé notre humanité"  A.E.
                        14 mai 2017 à 16:58:09

                        Merci beaucoup j'ai nommer les boules dans le formulaire par un nom tableau et donc je récupère les boules cochées dans un tableau et je peux faire ceux ci

                        var boule 1 = <?php echo $boule1; ?>;

                        Pour comparer en JavaScript avec le tirage en JavaScript

                        Donc c'était une solution pas très conforme car mélanger PHP et JavaScript

                        Du coup j'ai pris un code en PHP pour le tirage en effet c'est plus simple

                        Merci de votre aide à bientôt.

                        • Partager sur Facebook
                        • Partager sur Twitter
                        "TOUT LE MONDE EST UN GENIE. Mais si vous jugez un poisson sur ses capacités à grimper à un arbre, il passera sa vie à croire qu'il est stupide" albert Einstein.

                        Récupérer valeur en PHP et comparer en JavaScript

                        × 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