Cette source est composée de trois classes php 5, avec un peu de surcharge (overloading).
Elle permet de créer un QCM, de l'afficher, si vous aviez choisi des valeurs corectes, il vous affiche votre note : -0.5 par mauvaises réponse, et 1 point par bonne. vous pouvez aussi le passer en mode enregistrement + statistiques.
dans le fichier exemple1_QCM.php, vous avez le code qui permet de créer la table, et d'enregistrer un sondage :
$a->CreateTablesMysql() or die(mysql_error());
$a->saveMysql() or die(mysql_error());
n'oubliez pas de décommenter cette partie et de modifier la partie du dessus avant d'exécuter ce fichier, et le reste...
1°) on déclare le Qcm
$a=new Qcm('titre', 'description');
2°) on ajoute une question
$a->addQuestion('question', 'type'); // le titre peut être checkbox ou bien radio
3°) on ajoute des réponses, si vous supprimez true, ou que vous le remplacez par false, vous la déclarez comme étant une réponse erronée.
$a->Question1->addBox(réponse, true);
On peut charger la strucure d'un Qcm depuis mysql :
$a->loadFromMysql('1') or die(mysql_error());
if ($a->posted()){
si on a voté, enregistrer, et afficher les statistiques,
$a->register(ip2long($_SERVER['REMO TE_ADDR']), '1') or die(mysql_error());
echo $a->stats('1');
$b=$a->correction();
echo $b['str']. '<p>Vous avez '.$b['score'].' points</p>';
on peut aussi afficher la correction
}else{
sinon, afficher le formulaire
echo '<form action="?" method="post">'.
$a->toStr().
'<input type="submit" />
</form>';
}