SPIP-Contrib

SPIP-Contrib

عربي | Deutsch | English | Español | français | italiano | Nederlands

290 Plugins, 198 contribs sur SPIP-Zone, 62 visiteurs en ce moment

Accueil > Interactivité, échanges > Jeux > Des jeux pour votre site > QCM dans article > Une architecture complète pour proposer des QCMs

Une architecture complète pour proposer des QCMs

1er août 2005 – par Yorghos – commentaires

0 vote

Ceci est une ARCHIVE, peut-être périmée. Vérifiez bien les compatibilités !

Architecture pour QCMs, réponses commentées et conservation des résultats sur la fiche auteur.

Le besoin a été exprimé sur la liste de façon récurrente. Des contributions ont déjà été proposées 1, 2. Celles-ci présentent deux types de limitations :
-  La seule interaction possible consiste à identifier la bonne réponse. Du coup il n’y a pas de possibilité de fournir des explications complémentaires, voire des liens vers des lectures évoluées ;
-  Le résultat ne peut être conservé dans la base de données pour fournir des indications sur la performance dans une matière.

Attention, la contribution a été modifiée pour être compatible avec la version 1.8.1. À cause de l’utilisation de la balise #ENV elle n’est plus utilisable avec la version 1.7.2 de SPIP.

Architecture

Pour permettre un maximum de possibilités, chaque exercice sera une sous-rubrique d’une rubrique dédiée. Ces sous-rubriques sont sélectionnées par le mot-clé “lesqcms”. L’énoncée constitue le descriptif de la sous-rubrique. Cette dernière contient deux types d’articles, différenciés par des mots-clés :
-  Les informations complémentaires (optionnelles) qui peuvent compléter l’énoncé, fournir des indices, etc, portent le mot-clé “complements” ;
-  Les questions à proprement parler, peu importe le nombre, dont la sélection se fait en ajoutant {doublons} par rapport aux compléments.

Le squelette d’affichage, le Questions_CM.html de la contrib, se présente en deux parties avec l’énoncée et informations complémentaires sur la gauche et les questions sur la droite. Les boucles sont dupliquées pour permettre éventuellement de regrouper les questions en catégorie (un seul niveau de profondeur est admis).

Les interactions

Le système est basé sur un seul formulaire en deux parties :
-  Un groupe de boutons radio pour choisir la réponse oui ou non (ou autre) à chaque question à l’intérieur d’une boucle articles {id_rubrique} ;
-  Une partie validation, avec un bouton submit et un reset.
Le champs action du formulaire mène au squelette d’affichage des résultats. Celui-ci ressemble au précédent mais contient les solutions et les messages concernant l’évaluation des réponses de l’utilisateur.

Le contrôle des résultats

Pour le bon fonctionnement du système il faut encore une fois respecter l’écriture des articles. Trois champs sont utilisés :
-  Le titre est la formulation de la question ;
-  Le texte fourni la solution ;
-  Le chapo, dont le contenu est optionnel, peut fournir des informations de contexte à afficher avant la question

Enfin, les valeurs vrai ou faux sont indiquées dans un champs-extra de type select, que l’on appellera choix.
Le script php qui contrôle les saisies utilisateurs (bouton radio sélectionné) et les compare avec la valeur du champs extra est simple. Il se trouve intégralement sur le fichier appelé par le formulaire, soit Questions_CM_vue.html. en voici un aperçu :

Le passage de l’un à l’autre ne se fait pas par l’action du formulaire qui est laissée vide. Un champ spécifique du formulaire contient un paramètre important, “mode_affiche”, dont la valeur permet de changer de squelette (Questions_CM ou Questions_CM_vue).html, par le biais de la variable $fond du fichier .php3 (également inclus dans la distribution).

Conservation des résultats dans la base de données

Le fichier Questions_CM_vue.html contient également le fichier AddtoMycontrols.php3 (présent dans le .zip), dont la fonction est de conserver dans un champs extra de la fiche auteurs les identifiants (id_rubrique) des QCMs, séparés par une #. Le même fichier permet de stocker le % de réussite dans un autre champs de la table spip_auteurs. Le script est lancé à la validation du formulaire "Vous avez fini avec ce cas" sur la page des réponses. Pour l’utiliser il faut décommenter la ligne correspondante du squelette (ligne 234).

Un dernier préalable pour le bon fonctionnement : l’authentification de l’utilisateur

Celle-ci se fait grâce à un fichier.php, inclus dans les deux squelettes. Il ne sert qu’a tester si l’utilisateur est authentifié et affiche le nom de l’utilisateur dans un bandeau. Je vous laisse le choix de la limitation des droits aux rédacteurs ou aux visiteurs en remplaçant par exemple l’#URL_SITE_SPIP par #LOGIN_PUBLIC dans le fichier control_membre.php3.

Note de la fin : Un mini fichier .css fait partie de la distribution. Il n’est peut-être pas complet. Enfin l’adresse de retour une fois les réponses affichées (action du formulaire sur la page Questions_CM_vue.html) est mon_espace.php3, vous la remplacerez par celle qui correspond à votre site.

P.-S.

Vous devez créer les 3 champs-extras nécessaires : 2 sur la fiche auteur (les id_rubriques des QCMs et les % de réussite) et un sur article (pour le choix vrai ou faux).

Dernière modification de cette page le 13 novembre 2006

Retour en haut de la page

Vos commentaires

  • Le 9 mai 2012 à 18:22, par azerty En réponse à : Une architecture complète pour proposer des QCMs


    [titre]
    l’énergie solaire photovoltaique

    [qcm]
    Q Les premiers panneaux photovoltaiques ont été utilisés dans l’industrie ?
    P1 du batiment
    P2 aéronautique
    P3 spatiale
    P4 automobile
    R3

    [qcm]
    Q quand les premiers panneaux photovoltaiques sont-ils apparus ?
    P1 1959
    P2 1973
    P3 1980
    P4 1990
    R2

    [qcm]
    Q les panneaux solaires photovoltaiques permettent de transformer la lumière du soleil en énergie ?
    P1 mécacnique
    P2 électrique
    P3 thermique
    P4 hydraulique
    R2

    [qcm]
    Q les cellules photovoltaiques des panneaux solaires les plus répandus aujourd’hui sont composées d’un matériau semi-conducteur qui est ?
    P1 l’uranium
    P2 le silicium
    P3 l’aluminium
    P4 le plastique
    R2

    [qcm]
    Q quel est le nom des particules de lumière qui heurtent la surface de la cellule photosensible ?
    P1 les protons
    P2 les électrons
    P3 les photons
    P4 les neutrons
    R3

    [qcm]
    Q Pour un meilleur rendement du panneau photovoltaique, il faut ?
    P1 de la luminosité
    P2 de la chaleur
    P3 du froid
    P4 de l’humidité
    R1

    [qrm]
    Q Quels sont les pays précurseurs dans la production d’énergie photovoltaique ?
    P1 la France
    P2 l’Allemagne
    P3 le Japon
    P4 la Chine
    R2 R3

    Répondre à ce message

  • Le 13 octobre 2005 à 14:47, par chris28 En réponse à : Une architecture complète pour proposer des QCMs

    Tout d’abord merci beaucoup pour cette excellente contribution.
    Ayant eu quelques difficultés pour l’installer, je me propose d’ajouter quelques explications pour les débutants (sans parler de l’authentification et de la conservation des résultats que je n’utilise pas).

    En premier lieu, vous devez créer un groupe de mots-clés QCM (sur les rubriques et les articles) avec les deux mots clés « complements » et « lesqcms ».

    Puis créez un secteur (cad une rubrique à la racine) intitulé, par exemple, QCMS (pour la suite, je lui donne le numero 25) qui contiendra tous les questionnaires sous forme de sous-rubriques.

    Dans le fichier /ecrire/mes_options.php(3) (créez le fichier si nécessaire) ajoutez le code suivant :

    <?php
    $GLOBALS['champs_extra'] = Array (
    'articles'=>Array(
          "choix" => "select|propre|Réponse|vrai,faux"
           )
    );

    $GLOBALS['champs_extra_proposes'] = Array (
    'articles'=>Array(
           '25'=>'choix'    
    )
    );       
    ?>

    Créez à partir de votre squelette les fichiers rubrique-25.html et article-25.html pour l’affichage des questionnaires en ajoutant :

    <div id="mainqcm">
    <INCLURE(Questions_CM.php){id_rubrique}>       
    </div>       

    Vous pouvez enfin créer les sous-rubriques (vos questionnaires) en y associant le mot-clé « lesqcms » et contenant un article (facultatif) correspondant à l’énoncé avec le mot-clé « complements » et les articles sans mot-clé correspondants aux propositions pour lesquelles vous preciserez si elles sont « vrai » ou « faux ».

    J’ai aussi ajouté un tri {par date} pour les boucles artrac permettant ainsi d’ordonner les propositions.

    • Le 29 novembre 2005 à 22:21, par astinx En réponse à : Une architecture complète pour proposer des QCMs

      bonjour, je suis débutant sous SPIP (moins de 1 mois). Mon site est hebergé chez free. j’ai installé spip v1.8.2.e avec le squelette sarka_spip-1.1.1 (spip/squelette-sarka-spip).
      Puis je utiliser cette contribution ?
      Ou copier les fichiers de la contrib : spip/squelette-sarka-spip ?
      habillage.css squelette-sarka-spip/styles.
      merci d’avance
      christian

    • Le 29 novembre 2005 à 22:55, par Yorghos En réponse à : Une architecture complète pour proposer des QCMs

      Je ne sais trop quoi répondre, je ne connais pas sarka. Cependant, la contrib est basée sur des squelettes distincts, donc a priori pas de problème. Les .css permettent de gérer l’affichage ou non de certains champs. Par défaut il doivent être placés dans le même répertoire que les squelettes (html).

    Répondre à ce message

Répondre à cet article

Qui êtes-vous ?

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici Les choses à faire avant de poser une question (Prolégomènes aux rapports de bugs. )
Ajouter un document

Retour en haut de la page

Ça discute par ici

  • Convertir un site SPIP 3 en utf-8 avec le plugin Grenier

    8 janvier 2014 – 23 commentaires

    SPIP 3 fonctionne nativement avec l’encodage universel unicode utf-8. Sur certains sites (par exemple sur une mise à jour), on peut avoir un site qui est resté en iso-latin ce qui n’est pas conseillé (source de bugs, d’incompatibilité, ...) . (...)

  • ScolaSPIP 4

    19 janvier 2016 – 360 commentaires

    ScolaSPIP est plugin-squelette responsive personnalisable pour sites Web d’établissements scolaires basé sur SPIPr Présentation de ScolaSPIP Ce plugin pour SPIP 3 est développé par la Dane de l’académie de Versailles pour les webmestres de cette (...)

  • SPIP 3.2, Agenda et FullCalendar

    6 juin – 10 commentaires

    Nous avions publié un article sur la manière d’utiliser FullCalendar avec SPIP 3.0 afin d’afficher des évènements sous forme d’Agenda. La version de FullCalendar a changé avec SPIP 3.2. Le présent article est donc un tutoriel adapté à SPIP 3.2. Pour (...)

  • Mailsubscribers

    16 janvier 2013 – 408 commentaires

    Ce plugin permet de gérer les inscriptions (ou abonnements) à la diffusion de contenu par email. Mailsubscribers permet de gérer les inscriptions par Opt-in simple ou double et la désinscription par URL. Ce plugin gère également plusieurs listes de (...)

  • Nouvelle version - Modération de modifications

    29 janvier 2012 – 49 commentaires

    Suite à une migration depuis SPIP-Agora, j’ai développé ce plugin permettant de reprendre la fonctionnalité « Nouvelle version » inexistente sur SPIP2 ni sur SPIP3 Ce plugin permet d’étendre le work-flow de -rédaction-publication d’un article au cas d’un (...)