Insérer un minuteur dans un script QCM

Résolu/Fermé
yacinedu13001 Messages postés 292 Date d'inscription vendredi 2 mai 2008 Statut Membre Dernière intervention 20 mars 2019 - 11 nov. 2011 à 12:15
 Hubert - 29 nov. 2011 à 12:28
Bonjour,

Voilà, l'idée est d'insérer un minuteur dans un QCm afin de savoir combien de temps les gens mettent pour répondre au QCM.
Donc j'aimerai que le minuteur démarre lorsqu'on clique sur le QCM et qu'il s'arrête lorsqu'on clique sur un autre bouton envoyer par exemple.
Cela me permet de connaitre le temps qu'il a fallu à chaque personne pour répondre au QCM.

Voilà j'espère que je me suis bien expliqué. J'ai déjà le script du QCM à ma disposition, il me reste qu'à lui intégrer le minuteur.

Je vous remercie infiniment pour le temps que vous prendrez à m'aider.

Cordialement.

A voir également:

10 réponses

<html>
<head>
<title>Document sans nom</title>
<script language="JavaScript" type="text/JavaScript">
<!--
var i=1
var h1=0
var h2=0
var h3=0
var h4=0
var h5=0
var h6=0
var h7=0
var h8=0
function hmaintenant()
{var today=new Date()
var h4=parseInt(today.getHours());
var h5=parseInt(today.getMinutes());
var h6=parseInt(today.getSeconds());

if((secs)>h6){h6=60+h6};
h8=h6-(secs);
if((secs)>h6){h5=h5-1};
if(h8>59){h7=h7+1};

if((mins)>h5){h5=60+h5};
h7=h5-(mins);
if((mins)>h5){h4=h4-1}
if(h7>59){h4=h4+1};

if(h7>60){h7=="--"};
i=0
}
//-->
</script>
</head>
<body>
<div id="Layer1" style="position:absolute; width:200px; height:81px; z-index:1; left: 359px;">
<script language='JavaScript'>
mark=new Date();d=document
if (d.all || d.getElementById) {d.write('<span id="activeCount" style="width:30px;"></span>');
} else if (d.layers) {d.write('<ilayer id="wrapCount"><layer width="30" id="activeCount"></layer></ilayer>'); }
else {KW_doCount();}
function KW_doCount() {
var newMark=new Date();
diff=newMark-mark
hrs=parseInt(diff/(1000*60*60))
hrs=(hrs<10)?"0"+hrs:hrs;
mins=parseInt((diff-hrs*1000*60*60)/(1000*60))
mins=(mins<10)?"0"+mins:mins;
secs=parseInt((diff-hrs*1000*60*60-mins*1000*60)/1000)
secs=(secs<10)?"0"+secs:secs;
if(i==1){
dCount="<font face='Arial, Helvetica, sans-serif' color='#ff0000' size='120pt'>"+hrs+":"+mins+":"+secs+"</font>"
if (d.layers) {wc = document.wrapCount;lc = wc.document.activeCount;
lc.document.write(dCount);lc.document.close();
} else if (d.all) { activeCount.innerHTML = dCount;
} else if (d.getElementById) {d.getElementById("activeCount").innerHTML = dCount;}
setTimeout("KW_doCount()",1000);
}
}
</script> </div>
<br>
<img src="lancerlechrono.jpg" width="277" height="94" onClick="KW_doCount()"> <br>
<br>
<br>
<img src="arreterlechrono.jpg" width="277" height="94" onClick="hmaintenant()">
</body>
</html>
1
nar6du14 Messages postés 459 Date d'inscription dimanche 27 décembre 2009 Statut Membre Dernière intervention 7 décembre 2013 64
11 nov. 2011 à 12:21
ça dépend du langage utilisé mais de toute façon les fonction gérant le temps te permettent de le faire. Avec python les classes du module "Time" sont là pour ça il faut chercher son équivalent pour les autres langages.
0
yacinedu13001 Messages postés 292 Date d'inscription vendredi 2 mai 2008 Statut Membre Dernière intervention 20 mars 2019 24
11 nov. 2011 à 12:28
Merci pour la réponse :) mais j'aurai peut être dû préciser mon niveau en langage...

Alors comment vous expliquer ça, mon niveau est plus bas que 0/20 :(

Le script est en HTML ça j'en suis sur. Je ne l'ai pas écrit moi même, j'ai utilisé un simple site permettant de générer le QCM.

Pour tout le reste, je suis un boulet complet. Je comprend quelques notions mais là avec ton aide je ne sais absolument pas quoi en faire :(

Merci encore.
0
nar6du14 Messages postés 459 Date d'inscription dimanche 27 décembre 2009 Statut Membre Dernière intervention 7 décembre 2013 64
11 nov. 2011 à 12:48
bha faudra prendre des cours en PHP et en HTML mais avant tout commence par apprendre à programmer en C sinon tu peux toujours aller voir un petit programmeur qui maitrise assez bien ces langages cités, il te fera ça sans soucis.
0

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

Posez votre question
Sur mon site http://balbutiement.ovh.org/lettresetoiles/frameset.htm, j'ai mis un chronomètre qui vient de http://www.javascriptkit.com/script/cutindex1b.shtml ou quelque chose comme ça.
Vous pouvez regarder et copier le code.

Je ne suis pas d'accord avec nar6du14 pour adorer le C. En C, il faut compiler chaque fois qu'on veut changer un détail dans un mot, une phrase ou une image. En plus, le code n'est pas directement visible. Les programmes faits en C doivent être installés et c'est long. Beaucoup d'enseignants cherchent à mettre sur internet leur réflexion pédagogique en permettant une interaction avec l'apprenant. Javascript (avec les CSS) est de loin la meilleure réponse. Il permet de quasiment recopier le programme ou plutôt la page en changeant uniquement énoncé et réponse
0
yacinedu13001 Messages postés 292 Date d'inscription vendredi 2 mai 2008 Statut Membre Dernière intervention 20 mars 2019 24
Modifié par yacinedu13001 le 11/11/2011 à 14:18
Merci beaucoup Hubert ! Cela va m'aider déjà à partir sur une base solide.
Il faudra que je le modifie car il ne convient pas à 100%.

En effet, le compteur doit démarrer quand le participant clique sur un bouton pour démarrer le QCM. Car quand il arrivera sur la page du QCM, il y a d'abord des consignes à lire et des photos à visualiser, donc sa faussera le résultat final.

L'idéal pour moi sa serait d'avoir le même compteur mais qui démarre quand on clique sur un bouton et qui s'arrête quand on clique sur un bouton.

Mais merci beaucoup déjà pour ce script :)

PS : J'ai pas pu m'empêcher de répondre à ton QCM, au début j'ai voulu juste le tester et puis au final j'ai fait 21 questions :D


Merci !
0
C'est très faisable. Il faudrait une image avec marqué dessus "Je commence à répondre". La function onClick lancerait le compteur. Mais il y a du boulot. Il faut étudier un peu javascript. C'est un langage, ça s'apprend comme l'Anglais ou l'Allemand. Il suffit d'en savoir un tout petit peu pour déjà faire des choses. Mais ça peut aussi devenir dur. Essayez de poser une série de questions à Google en Français ou mieux en Anglais(countdown). Il peut probablement vous donner une réponse toute faite.
J'ai utilisé ce compteur sur une autre série d'exercices, encore une fois regardez le code. Mais si c'est la première fois que vous lisez du javascript, il faut vous motiver.
Si vous pouvez lire en Anglais, l'adresse que je vous ai indiquée est pleine de choses qui vous intéresseront.

Il y a aussi le site
http://www.codingforums.com/forumdisplay.php?s=ca1de98f9e9aa0e9d1719dd4584107e1&f=2
qui a un moteur de recherche interne
0
nar6du14 Messages postés 459 Date d'inscription dimanche 27 décembre 2009 Statut Membre Dernière intervention 7 décembre 2013 64
13 nov. 2011 à 01:10
le C est la base de tout langage c'est pk je parle de lui.
0
yacinedu13001 Messages postés 292 Date d'inscription vendredi 2 mai 2008 Statut Membre Dernière intervention 20 mars 2019 24
26 nov. 2011 à 19:12
Bonsoir et Merci à tous pour votre aide !!! Hubert vous êtes au top ;)

Il me manquait quelques détails mais grâce à vous je vais pouvoir le finaliser !
0
mettre var i=0
supprimer i=0 à la fin de la function hmaintenant
0