Comment créer un Hasard

Bonjour,
je tiens à préciser que je n'ai pas pas de compétences énormes et donc ma question peut paraître bête. Et je m'escuse d'avance de mon orthographe qui n'est pas parfaite.

Voici mon projet :
J'ai une liste de 12 prénoms, je veux les diviser en 4 afin de pouvoir former 3 équipes, mais qui soient créées avec le HASARD et non créées par un "humain" si je puis dire.
Exemple (4 personnes en 2 équipes) :
Alain, Bertrand, Cecil, Donnovan. Et je veux obtenir ensuite avec par exemple un bouton "mélanger" ceci:
Equipe 1 : Alain, Cecil Equipe 2 : Bertrand, Donnovan


Donc j'aimerai savoir avec quel logiciel (ou autre), je peux faire cette réalisation.
Je ne suis pas sûr d'avoir posté dans la bonne catégorie ma question mais je ne sais pas si cela peut être créé avec du PHP/HTML ou encore du Flash.

Merci d'avance de vos réponses,
Crimson

4 réponses

  1. Bonjour,

    Un petit up.
    Moi j'utilise ce site pour former des équipes au hasard : https://www.keamk.com
    Tu peux aussi faire des équipes mixtes ou selon des niveaux avec.
    4
    1. Bonjour

      En PHP, le plus simple est encore la fonction shuffle qui mélange les éléments d'un tableau
      1
      1. Pourrai tu m'expliquer comme l'ajouter dans un tableau ? Je l'aoute au même endroit que pour la taille des bordure, des couleurs etc ?
        0
      2. Contributeur
        le père parle de tableau en Php (pas de tableaus html), qui sont un type de variables ("array" en anglais) : https://www.w3schools.com/php/php_arrays.asp

        Donc, c'est dans le code Php que tu vas inclure, quelque chose comme cela, faisant usage de la fonction Php shuffle proposée par le père et dont il te donne le lien vers la documentation Php :

        $joueurs=array("Alain","Bertrand","Cecil","Donnovan","Joueur05","Joueur06","Joueur07","Joueur08","Joueur09","Joueur10","Joueur11","Joueur12");
        shuffle($joueurs);
        
        echo "<p>Equipe 1</p>";
        echo "<li>$joueurs[0]</li>";
        echo "<li>$joueurs[1]</li>";
        echo "<li>$joueurs[2]</li>";
        echo "<li>$joueurs[3]</li>";
        echo "<p>Equipe 2</p>";
        echo "<li>$joueurs[4]</li>";
        echo "<li>$joueurs[5]</li>";
        echo "<li>$joueurs[6]</li>";
        echo "<li>$joueurs[7]</li>";
        echo "<p>Equipe 3</p>";
        echo "<li>$joueurs[8]</li>";
        echo "<li>$joueurs[9]</li>";
        echo "<li>$joueurs[10]</li>";
        echo "<li>$joueurs[11]</li>";

        Dal
        0
      3. JE n'avais pas vu le lien shuffle pardon. Donc merci beaucoup pour ton "code", j'aimerai savoir si je dois le mettre sur la même page comme sur laquelle je m'étais mes code HTML.

        Merci de ta réponse
        0
      4. Contributeur
        C'est dans ton code Php que tu dois mettre cela.

        Tes questions laissent supposer que tu ne programmes pas en Php.

        Crée un fichier, par exemple tirage.php, et mets ce code dedans entre les balises php de début et de fin de code Php : https://www.w3schools.com/php/php_syntax.asp

        Avant et après, tu peux mettre du Html, pour faire joli.

        Dal
        0
      5. OK merci beaucoup de t'es explications.
        Et non je me suis arrêter à l'HTML et au CSS.

        Merci à toi.
        0
    2. Contributeur
      Salut.
      en PHP, oui, en HTML, non. Flash, je ne sais pas.
      Le plus simple, je pense c'est le tirage au sort : tu met toutes les personnes dans un tableau, tu tires un nombre au hasard, tu sort la personne correspondante du tableau et tu recommences avec ceux qui restent.
      0
      1. Merci de ta réponse, comment puis-je le réaliser en PHP (as tu une explication s' il te plait).
        Oui mais une fois de plus JE choisis un numéro, et donc les personnes avec qui je fais ce tirage au sort peuvent croire que j'ai triché.
        0
      2. Pourquoi ne pas le faire en javascript ?
        Il n'y aurait pas besoin de PHP et la page resterait en .html !
        0
      3. Copie ce qui suit dans une page vierge (example : test.html) :
        <html>
        <head>
        </head>
        <body>
        <script type="text/javascript">
        function shuffle(a)
        {
           var j = 0;
           var valI = '';
           var valJ = valI;
           var l = a.length - 1;
           while(l > -1)
           {
              j = Math.floor(Math.random() * l);
              valI = a[l];
              valJ = a[j];
              a[l] = valJ;
              a[j] = valI;
              l = l - 1;
           }
           return a;
        }
        
        function show_groups()
        {
           var joueurs = new Array("Alain", "Bertrand", "Cecil", "Donnovan", "Joueur05", "Joueur06", "Joueur07", "Joueur08", "Joueur09", "Joueur10", "Joueur11", "Joueur12");
           var joueurs_melanges = shuffle(joueurs);
        
           var group1 = "Groupe 1 : " + joueurs_melanges[0] + ", " + joueurs_melanges[1] + ", " + joueurs_melanges[2] + ", " + joueurs_melanges[3] + ", " + joueurs_melanges[4] + ", " + joueurs_melanges[5] + ".<br/>";
           var group2 = "Groupe 2 : " + joueurs_melanges[6] + ", " + joueurs_melanges[7] + ", " + joueurs_melanges[8] + ", " + joueurs_melanges[9] + ", " + joueurs_melanges[10] + ", " + joueurs_melanges[11] + ".";
           document.getElementById("div_groups").innerHTML = group1 + group2;
        }
        </script>
        <input type="button" value="Mélanger !" onclick="show_groups();" /><br/><br/>
        <div id="div_groups"></div>
        </body>
        </html>
        0
      4. C'est parfait Merci Beaucoup !!
        Merci à tous de vos réponses et de votre aide :D !

        Dernière question :(ensuite ce sera résolu :)
        Si je veux rajouter d'autre groupe, et d'autre personne j'ai juste à copier coller :
          var group2 = "Groupe 2 : " + joueurs_melanges[6] + ", " + joueurs_melanges[7] + ", " + joueurs_melanges[8] + ", " + joueurs_melanges[9] + ", " + joueurs_melanges[10] + ", " + joueurs_melanges[11] + ".";

        Mais en changeant le nom du groupe et en rajoutant ce dernier ici ? :
           document.getElementById("div_groups").innerHTML = group1 + group2; 
        


        Encore merci :)
        0
    3. J'ai réussi, merci beaucoup à vous tous pour l'aide que vous m'avez apporter.
      J'ai choisis la dernière méthode qui m'a été proposée car elle me permettait de conserver mes pages HTML sans à avoir passer par je ne sais quelles procédures.

      Bonne continuation à vous tous,
      Crimson
      0
      1. Super !
        Aucun soucis ;)
        Tu as résolu ta dernière question ?
        0
      2. Oui, :)
        Juste un problème quand j'insère le CSS tout disparaît même le contenu texte body j'ai juste le fond de couleur, m'enfin bon on ne peux pas tout avoir.
        0
      3. On peut continuer à t'aider si tu veux ;)
        0
      4. Alors là oui je veux bien :) J'aimerai savoir pourquoi mon CSS que j'insère (dans head apres le script) fais disparaître TOUT (texte, image, et le bouton mélanger).
        Par contre le fond de couleur demandé apparais bel et bien.
        0
      5. Donne le css en question stp ;)
        0