Fichiers utilisés

Pour simplifier les explications ci-dessous, on partira du principe de mettre dans le même répertoire tout ce qui sera utile pour la mise en œuvre d'un test. Les fichiers indispensables seront affichés en vert et soulignés alors que les fichiers optionnels (ceux qui ne sont utilisés que dans certains cas) seront écrits en gris et soulignés.

QCM.php

C'est la classe d'objet PHP, QCM Class, nécessaire à l'affichage et au dépouillement.

index.php

C'est la page d'index de votre questionnaire. Celle-ci permet de présenter le questionnaire et de donner toutes les précisions sur les conditions du test et, sur clic, d'appeler la page du test :

<html>

<head>
  <title>Titre de la page</title>
  <meta charset="iso-8859-1" />
  <style type="text/css">
    /* éventuellement styles pour cette page */
  </style>
</head>

<body>
  <form>
  <p>
    ...ici, Présentation du test ...
      - objectif,
      - chronométré ou pas,
      - utilisation de documents vidéo, audio ou pas,
      - si nécessaire, port du casque audio pour ne pas gêner les autres,
      - envoi ou non des résultats par courriel,
      - consignes d'utilisation,
      - toute autre indication utile pour ce test.
  </p>
  <input type="button" value="Faire le test" onclick="javascript:document.location='test.php';">
  </form>
</body>

</html>

test.txt

C'est le fichier questionnaire, le fichier qcm qui a été détaillé au menu "Fichier qcm" et que le formateur ou l'enseignant a conçu.

test.php

Ce fichier est affiché à partir de index.php. C'est lui qui, grace à l'insertion de QCM Class, permettra d'afficher le questionnaire et, après avoir fait appel à lui-même lors de la soumission, corrigera les réponses et effectuera les opérations demandées.

En principe, l'instanciation ($test = new qcm($idQCM);) pourrait se faire n'importe où dans la page à condition de la faire avant d'utiliser ses membres (valeurs. ex: $test->title) ou ses méthodes (fonctions. ex: $test->display()). Mais il est préférable de la faire avant d'afficher la page de façon à pouvoir utiliser les définitions qui auront été faites dans l'en-tête du fichier qcm (title, charset, bgcolor).

<?php
$idQCM = 3;              // Numéro du test (fichier lu : qcm3.txt)
require("QCM.php");      // Insertion de la QCM Class
$test = new qcm($idQCM); // Instanciation
?>
<html>

<head>
  <title><?php $test->title; ?></title>
  <meta charset="<?php echo $test->charset; ?>" />
  <link rel="stylesheet" href="test.css" type="text/css" />
  <style type="text/css">
    body {background-color:<?php echo $test->bgcolor; ?>}
  </style>
</head>

<body>
<?php
if(!$_POST['submit']) {
   echo "<form method='post' name='qcm' action='".$_SERVER['PHP_SELF']."'>";
   $test->display();    // Affichage du questionnaire
   echo "</form>";
else {
   $test->correction(); // Correction du questionnaire
}
?>
</body>

</html>
test.css

C'est le fichier des styles utilisés pour la présentation du questionnaire. Sa présence dans le répertoire est nécessaire mais vous pouvez y changer la définition de ces styles

body    {font-family:arial;font-size:10pt;background-color:#C0C0FF} /* corps de la page */
td      {font-family:arial;font-size:10pt} /* cellule de tableau */
a       {text-decoration:none} /* liens */
h1      {font-family:times new roman;font-size:24pt;font-weight:bold;font-style:italic;color:#000080} /* titres niveau 1 */
h2      {font-family:arial;font-size:10pt;font-weight:bold;color:#006000;margin-left:40px} /* titres niveau 2 */
.author {font-size:8pt} /* auteur du test, bas de page */
.in     {background-color:#A0FFA0} /* champ de saisie actif */
.ro     {background-color:#B0B0B0} /* champ de saisie désactivé : read only */
.q      {font-weight:bold;color:#000080} /* libellé de la question */
.m      {font-family:times new roman;font-size:11pt;font-weight:normal;font-style:italic;color:#006000} /* saisie adresse courriel */
.notnow {font-family:times new roman;font-size:18pt;font-weight:bold;color:#A00000;text-align:center} /* hors période de test */
.new    {font-weight:bold;color:#FF0000} /* indication "nouveau" */
.bt     {
   font-family:arial; font-size:10pt; font-weight:bold;
   color:#008000; background-color:#FFFFC0;
   border:1px solid #808080; border-radius:5px;
   padding-bottom:3px
} /* bouton "Apprendre" */
liste utilisateurs : *.txt

Si, au lieu de laisser le testé saisir ses nom et prénom, vous souhaitez qu'il se choisisse dans une liste, vous devrez réaliser cette liste dans un ficher texte nommé, par exemple : eleves_6a.txt.
Ce fichier sera précisé dans la clef userlist tel que : userlist=file,eleves_6a.txt" et réalisé comme ci-dessous :

DUPONT;Jean;M.
DUPONT;Marc;M.
DUBROVNICK;Ildiko;Mme
DUVAL;Aliénor;Mlle;
HOAREAU;Marianne;Mme
MOREAU;Isabelle;Mlle
fichiers de langue : texts.*.php

Il y a la langue utilisée dans les items pour poser les questions. Cette langue là est celle du concepteur du test. Il n'y a besoin d'aucun fichier pour cette langue vu que les questions seront directement rédigées dans celle-ci. Il y a ensuite la langue utilisée par QCM Class pour écrire sur les boutons, afficher des alertes ou envoyer des messages. Pour cette langue là, si vous avez l'intention d'utiliser le français, vous n'avez non plus aucun fichier particulier à utiliser, c'est la langue par défaut. En revanche si vous souhaitez utiliser une autre langue, vous devrez aussi placer le fichier ad hoc dans le répertoire (voir la clef language de l'en-tête). Si vous souhaitez que QCM Class utilise l'italien, vous devrez placer dans le répertoire le fichier texts.it.php et le préciser à la clef voulue dans l'en-tête language=it

vidéo : *.flv

Si vous utilisez vos propres fichiers vidéos, ils seront au format flv (la conversion aura eventuellement été faite avec un convertisseur tel que Format Factory) et placés dans le répertoire avec les autres fichiers du test. Veillez à ce que les nom des fichiers ne contiennent pas d'espace. Eventuellement utilisez l'underscore ( _ ) pour simuler les espaces. Par exemple :

La vidéo du groupe Texas, "I don't want a lover" pourrait être nommée : idontwantalover.flv ou i_dont_want_a_lover.flv

Naturellement, si vous n'utilisez pas de vidéo flv mais simplement des vidéo YouTube ou Dailymotion ou encore pas de vidéo du tout, il n'y aura pas besoin de fichier flv dans la liste des fichiers utiles.

dewtube.swf

Si vous utilisez des vidéos flv, vous devez placer ce fichier dewtube.swf dans le même répertoire que le fichier test.php, avec vos vidéos. Ce fichier n'est pas utile si vous utilisez des vidéos placées sur YuTube ou Dailymotion.

audio : *.mp3

Si vos questions comprennent des documents sonores –vos fichiers audio–, ils seront au format mp3 et pourront être placés, avec les autres fichiers, dans le même répertoire. Si vous utilisez d'autres fichiers audio, leur présence dans le répertoire n'est alors pas utile, il suffira seulement de mentionner leur URL comme indiqué dans les exemples multimédia, insertion de sons

dewplayer.swf

Si vous utilisez des fichiers audio mp3 que ce soient les vôtres dans le même répertoire, ou d'autres en précisant leur URL, vous devez placer ce fichier dewplayer.swf dans le même répertoire que le fichier test.php.

images : *.jpg *.gif *.png

Les images utilisées dans le questionnaire et au format jpg, gif, ou png seront placées avec les autres fichiers dans le répertoire du fichier test.php. Par images utilisées, il faut entendre aussi bien celles qui seront employées dans les questions que celle qui sera éventuellement utilisée en guise de logo si elle est définie avec la clef logo

Mise à jour le 07/12/2014 à 19:24:20