Faire des liens aleatoires pour des QCM

Résolu/Fermé
Clidy Messages postés 13 Date d'inscription lundi 22 février 2021 Statut Membre Dernière intervention 23 novembre 2021 - 22 févr. 2021 à 19:25
yg_be Messages postés 23317 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 10 novembre 2024 - 25 févr. 2021 à 17:50
Bonjour, je suis enseignant en lycée Pro, j'ai pas mal de QCM environ une centaine, réalisés avec Google Forms.
je recherche un script pour afficher les QCM en mode aléatoire.
exemple: un élève clic sur un lien et ça ouvre un de mes QCM au hasard.
je ne sais pas si je suis très clair, je ne connais rien en programmation.
Bien à vous, merci pour votre aide.

9 réponses

Utilisateur anonyme
22 févr. 2021 à 21:44
Bonsoir

Il te faut un fichier qui contient tout les liens de tes questionnaires.
Ça peut être, un fichier texte, Excel, base de données, etc.. peu importe.

Ensuite il faut écrire un bout de code (on va l’appel lanceur) qui va savoir déterminer le nombre de liens disponibles (le comment dépend du type de fichier choisi et du langage utilisé) puis génère un numéro aléatoire qui ne dépasse pas ce nombre de lien.

Enfin il va ouvrir le navigateur avec l’adresse qui correspond au numéro.


Pour t’aiguiller mieux, il nous faudrait plus de détails sur le contexte.
C’est pour du « presentiel » du « distanciel », les deux?

Veux tu que chaque élève « installe » le lanceur sur son poste, ou alors qu’il aille ouvrir un site web ou un répertoire réseau?

Veux tu qu’il puisse accéder de lui-même à la liste des liens ou qu’au contraire elle reste cachée ?
0
Clidy Messages postés 13 Date d'inscription lundi 22 février 2021 Statut Membre Dernière intervention 23 novembre 2021 1
23 févr. 2021 à 06:59
Super, Whismeril.

- les élèves sont en distanciel
- ils ouvrent une page Web
- la liste des liens reste cachée

Merci, pour ton aide !
0
Utilisateur anonyme
23 févr. 2021 à 08:08
Ok, le web c’est pas mon rayon.
Il va falloir attendre qu’un autre passe pour t’aiguiller.

De mon côté, en soirée (mais pas forcément aujourd’hui) je tacherais de regarder s’il est possible de faire quelque chose avec Google documents
0
Clidy Messages postés 13 Date d'inscription lundi 22 février 2021 Statut Membre Dernière intervention 23 novembre 2021 1
Modifié le 23 févr. 2021 à 08:44
j'ai bien trouvé un script, peut être utile ? je ne sais pas comment faire pour le modifier ?

Le script ci-dessous permet de créer un lien hypertexte dirigeant le visiteur vers une adresse choisie au hasard dans une liste.

Le code ci-dessous est à insérer entre les balises <head> et </head> en début de page :

<script Language="Javascript">
<!--
function LienAuHasard()
{
Url = new Array;
base = "http://www.commentcamarche.net/";
Url[0] = "index.php3";
Url[1] = "wifi";
Url[2] = "php";
Url[3] = "forum/";

ChoixLien = Math.floor(Math.random() * Url.length);
window.open(base + Url[ChoixLien],'_blank');
}
//-->
</script>


Le code ci-dessous est à insérer dans le corps de la page web (quelque part entre les balises <body> et </body>) pour afficher le lien :

<a href="#" onClick="LienAuHasard(); return(false)">Lien aléatoire</aA>

Cet article est régulièrement mis à jour par des experts sous la
direction de Jean-François Pillou, fondateur de CommentCaMarche.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Le mode aléatoire n'a pas de sens pour les raisons suivantes:
- Possiblité de retirage (sauf à alourdir le code avec procédure d'exclusion)
- Possibilité de non tirage (sortie)
Le tirage séquentiel complet avec mélange (shuffle) est plus pertinent.
0
Clidy Messages postés 13 Date d'inscription lundi 22 février 2021 Statut Membre Dernière intervention 23 novembre 2021 1
23 févr. 2021 à 16:01
Merci, pour votre réponse.
Et pour la suite ?
0
Utilisateur anonyme
23 févr. 2021 à 19:30
En fait l’intervention de poissondemai sera peut-être utile plus tard....
C’est pas faux, c’est juste pas encore le moment.
Je pense qu’il n’a pas lu la discussion mais seulement le post où tu montres le script JavaScript.

Le javascript sert à coder certaines parties d’un site web.
Avant de pouvoir se servir de ce script tel quel, il faut créer le site.
Après on pourrait étudier la remarque de poissondemai.

A moins qu’on puisse utiliser des scripts js dans Google documents

0
Clidy Messages postés 13 Date d'inscription lundi 22 février 2021 Statut Membre Dernière intervention 23 novembre 2021 1
23 févr. 2021 à 20:27
Whismeril, voila j'ai trouvé un script en HTML.
il a l'air de fonctionner, sauf que je n'arrive pas à le mettre en place, sur le site fait avec Google sites, dommage.

Le script lien WeTransfer: https://wetransfer.com/downloads/0329e53dfc5026909d6bf6adbf88f15820210223191908/b474ed

Merci
0
Utilisateur anonyme
23 févr. 2021 à 21:04
Je te l'ai dit, le web c'est pas mon rayon. Je ne serait pas de bon conseil
0
yg_be Messages postés 23317 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 10 novembre 2024 1 552
25 févr. 2021 à 15:09
il s'agit à nouveau de javascript. c'est donc le navigateur de l'utilisateur qui va choisir le QCM.
tu as écrit "la liste des liens reste cachée": pourquoi, est-ce important?
je pense que Google Sites ne te permet pas de travailler au niveau du HTML (ni, donc, d'y inclure de javascript).
Google Sites peut être programmé en utilisant Google Apps Scripts, que je ne connais pas.
0
Clidy Messages postés 13 Date d'inscription lundi 22 février 2021 Statut Membre Dernière intervention 23 novembre 2021 1
25 févr. 2021 à 17:11
Merci yg_be, voilà ce que j'ai trouvait, ci-dessous, ça aller de fonctionner. Ce n’est pas très joli, mais bon. En attendant mieux. merci encore.

<!DOCTYPE html>
<html>
<head>
<title>Lien Aleatoire</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8/jquery.min.js"></script>
<script type="text/javascript">
//on genere un lien au chargement de la page
$(document).ready(function(){

generationLienAlea();

});

//quand on click sur le lien, le lien change
$("#lienaleatoire").live("click", function(){

generationLienAlea();

});


function generationLienAlea(){

var listliens = [ ];
listliens[0] = "https://forms.gle/xMxbhhmRiQX4hoq29";
listliens[1] = "https://forms.gle/Xqay5Y7Xu4GfVd9f6";
listliens[2] = "https://forms.gle/myPgrMWJwbhzyLtE8";
listliens[3] = "https://forms.gle/cSnFTDUpWej6GKmE7";
listliens[4] = "https://forms.gle/DQ6ndkasHwAY5bfq6";
listliens[5] = "https://forms.gle/ZqD6YNYaJfvqz4aj6";
listliens[6] = "https://forms.gle/LvRysEN8W6isSDR29";

nb = rand(0, listliens.length - 1);

$("#lienaleatoire").attr('href', listliens[nb]);
}

//rand pour les parésseux qui ont horeur des fn.maths ????
function rand (min, max) {

var argc = arguments.length;
if (argc === 0) {
min = 0;
max = 2147483647;
} else if (argc === 1) {
throw new Error('Warning: rand() expects exactly 2 parameters, 1 given');
}
return Math.floor(Math.random() * (max - min + 1)) + min;

}
</script>
</head>
<body>
<!-- target="_blank" pour que la page s'ouvre dans un autre onglet -->
<a href="" id="lienaleatoire" target="_blank">Entraine-toi Comme un Pro BT, c'est un debut ! Rafraichir la page apres chaque question !</a>
</body>
</html>
0
yg_be Messages postés 23317 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 10 novembre 2024 1 552
Modifié le 25 févr. 2021 à 17:54
pourras-tu marquer la discussion comme résolue, le moment venu?
0