Filtre QCM

All contributions published for previous SPIP versions

Filtre qui permet de générer un QCM à partir d’un article SPIP (utile pour des cours en ligne par exemple)

-  Description : Filtre qui permet de générer un QCM à partir d’un article SPIP (utile pour des cours en ligne par exemple)

-  Mise en place du filtre : Copier le code (code.txt) dans mes_fonctions.php3 à la racine du site et faire appel à la feuille de style (spip_qcm.css) dans la page où est appelé le filtre.

-  Appel du filtre : Le filtre doit recevoir le texte brut de l’article (#TEXTE*) de la manière suivante :
[(#TEXTE*|qcm|propre)]

-  Syntaxe de l’article :
Dans le texte de l’article, le code du qcm doit se trouver entre les balises "<qcm>“ et ”</qcm>".

Entre ces balises la syntaxe est la suivante :

T Titre du qcm

Q Intitulé de la question

P1 Texte de la proposition 1

P2 Texte de la proposition 2

...

Pn Texte de la proposition n

Rn R suivi du numéro de la proposition indique la bonne réponse. Donc si la bonne réponse est la proposition 1 on indiquera “R1”

On peut mettre plusieurs couples "<qcm>“ et ”</qcm>" dans le même article.

-  Exemple :

<qcm>
T Les noms des constituants cellulaires
Q Quel est le nom impossible à retenir
P1 lysosome
P2 appareil de Golgi
P3 thylakoïde
R3
</qcm>

Ici on peut mettre du texte SPIP avec les racourcis typographiques habituels, puis une deuxième question :

<qcm>
Q Etes vous bon en SVT ?
P1 Oui
P2 Non
R2
</qcm>

Ce filtre a désormais été étendu et intégré dans un plugin : Des jeux dans vos articles !

updated on 18 April 2007

Discussion

19 discussions

  • bonjour !
    Cette contrib a été changée en plugin compatible SPIP v1.9.2
    Il faudrait réécrire cet article obsolète !

    Reply to this message

  • Jolie contrib...
    Le QCM sur le site du bassin d’arcachon est extra. Une question cependant, celà fonctionne avec quelle version de Spip ??

    Merci
    Dany

    Reply to this message

  • 1

    Bonjour,

    J’ai un gros problème et je suis archi débutant en programmation. J’utilise Sitenkit, dérivé de spip. Il est parfait pour la prise en main par un débutant mais les noms des fichiers sont différents.

    J’ai fait un copier-coller du contenu de qcm.txt dans mes_fonctions.php3.

    J’ai copier spip_qcm.css à la racine.

    Mais je ne trouve pas le squelette article.html pour remplacer [(#TEXTE)] par [(#TEXTE*|qcm|propre)].
    L’* est-elle indispensable ?

    Si quelqu’un pouvait m’aider, ce serait super car ce filtre, d’après les exemples que j’ai vu est génial.

    • Patrice

      Pascal, vu que tu utilises sitenkit, le corps de l’article est géré par sous_article.html

      sitenkit propose un texte d’article comme suit : (#TEXTE|lettrine|couleur|geoplan)

      à toi de voir comment ajouter les filtres qcm à #TEXTE !

    Reply to this message

  • Pour enrichir cette magnifique contrib, remplacer ver la ligne 123

    ça :

    value=\"$j\">";
              $codeHTML.=$choix[$i][$j]."<br />";

    par ça :

    value=\"$j\" id=\"$nomVarSelect.$j\"><label for=\"$nomVarSelect.$j\">";
              $codeHTML.=$choix[$i][$j]."</label><br />";

    Reply to this message

  • 1
    vincent

    Dans le code original, il y a un petit bug, car le script n’est pas exécuté là où on le pense.

    Pour parer à ce bug, il suffit d’appeler la fonction de génération des URLS via la ligne suivante :

    <a href=\"".generer_url_article($GLOBALS['id_article'])."\">

    en lieu et place de

    <a href=\"$PHP_SELF\">
    • Michel Fraisse

      Chez moi le code initial est correct en local avec spip 172.
      Sur un serveur apache et spip 16 rien ne marche.
      Vu lles différence de version de php, la regiter_global_off est peut être dans le coup.

    Reply to this message

  • 1

    Bonsoir,

    Quelques suggestions :

    • Supprimer les
      qui sont présents un peu partout dans la page : la feuille de style peut très bien s’en charger.
    • Utiliser la variable de personnalisation $puce au lieu d’écrire puce.gif (qui est présente à la racine dans la distrib officielle mais pas forcément partoutà.
    • Ne pas afficher les points entre parenthèses quand la possibilité de pondérer les questions est désactivée (puisque toutes les questions valent alors 1pt, c’est pas la peine de le répeter à chaque question).

    Sinon, c’est très chouette comme contrib,

    Reply to this message

  • Très bien, félicitations pour ce filtre qui fonctionne à merveille.
    3 questions cependant :
    -  est il possible de faire afficher les QCM dans des brèves plutot que des articles ? (ou encore dans un page spécifique QCM distincte des articles) ceci permettrait par exemple de plus avoir l’affichage avec les réponses dans le sommaire avec les derniers articles ;)
    -  comment procéder pour mettre les questions dans une colonne style sondage phpBB2 ?
    -  enfin il existe de nombreuses formes de QCM et les plus utilisés sont ceux où il est possible de cocher plusieurs bonnes réponses de façon aléatoire, comment faut il modifier le fichier php3 pour arriver à cela ?
    Merci d’avance

    Reply to this message

  • 7

    Cette possibilité de faire des QCM avec SPIP est effectivement une merveille. D’autant plus que la feuille de style est très réussie. Mais comme cela a été signalé deux fois parmi les posts, la réinitialisation du QCM renvoie à la page d’accueil. Je ne vois pas très bien comment l’empêcher et j’apprécierais toute aide à ce sujet.

    Deuxième problème, un peu plus ennuyeux : quand on utilise BIO_SPIP, à la droite de l’article affiché il y a deux boutons : “imprimer sans.php3” (pour avoir une impression plus nette) et “envoyer à un ami”. Si l’on affiche une version imprimable du QCM on s’aperçoit alors que le corrigé apparaît avec l’affichage de P1, P2, Pn et Rn (!), lequel indique la bonne réponse ! D’autre part les commentaires éventuels, eux, n’apparaissent pas (cf. les excplications de Christian de La Teste du 28 septembre).

    La solution est très certainement un filtre à partir d’un mot clé comme “QCM” pour empêcher l’affichage de la possibilité d’impression ou une fonction en php dans mes_fonctions.php3. Mais dans l’état actuel des choses, c’est hors de mes possibilités. Qui pourrait m’aider ?

    Jacques

    • Je crois avoir trouvé moi-même : imprimersans.php3?id_article=(#ID_ARTICLE&nom_site=(#NOM_SITE_SPIP&url_site=(#URL_SITE_SPIP

      Ce filtre marche puisqu’il renvoie une page avec “Il n’y a pas d’article à cette adresse”. Il y a sans doute plus élégant mais je ne suis pas peu fier d’avoir écrit mon premier filtre.

      En espérant pouvoir être utile à d’autres

      Jacques

    • Désolé ! J’ai posté trop vite. Ce n’est pas la bonne solution.

    • Marc WAN-AJOUJHU

      La même chose se produit avec le squelette EVA1.0.
      Les différents choix ou commentaires ne s’affichent pas.
      Les réponces apparaissent sous le qcm.
      J’essaye votre solution.

    • Attention ! ma solution n’est pas bonne. Un message d’erreur concernant l’affichage pour impression s’affiche pour tous les articles.

    • La solution se trouve en fait dans le manuel de référence, section 8.1.5 (page 102) dans les .pdf.

      Jacques.

    • Marc WAN-AJOUHU

      J’ai trouvé une solution au problème ennuyeux de l’affichage des réponses du qcm.
      Dans le corps de l’article du qcm, dès sa conception, j’ai utilisé du code html comme si on écrivait une page web.
      Cela me permet:
      -  de rendre invisible les réponses en utilisant un style ccs
      -  d’utliser différentes couleurs
      -  d’utiliser des symboles mathématiques tels que Pi, racine carrée etc.
      J’ai mis en téléchargement sur mon site le code du qcm que vous pourrez également tester.

      Cordialement...

    • C’est bien gentil la doc PDF, page 102, mais lorsque je décharge la doc de reference en PDF, elle n’a que 55 pages...
      J’ai le problème de l’affichage des solutions, j’aimerais le résoudre, alors la solution se trouve ou????

    Reply to this message

  • 3

    Heu... Serait-ce possible d’expliquer ce qu’est un QCM ou encore faire un lien vers une page qui le fait? J’ai aucune idée de ce que c’est... :P

    • c’est un Questionnaire à Choix Multiple

      Je viens d’en mettre un sur mon site.

      Va voir

      Pierre

    • celui là marche bien

    • Serait-il possible d’expliquer la signification de “QCM” dans le titre ou la description de l’article? Parce que sinon, c’est pas très évident du premier coup d’oeil à quoi peut bien servir ce filtre et le message explicatif est maintenant bien loin dans le forum... :P

    Reply to this message

  • 1

    Je crois pourtant avoir bien fait la manip, mais lorque j’exécute ma page, j’ai le message suivant :

    Erreur : filtre «qcm» non défini

    Quelqu’un peut-il m’aider ? car je trouve ce filtre intéressant et compte bien l’installer sur mon site.

    • il faut copier le code dans un fichier mes_fonctions.php3 à mettre par ftp à la racine de votre site.

    Reply to this message

Comment on this article

Who are you?
  • [Log in]

To show your avatar with your message, register it first on gravatar.com (free et painless) and don’t forget to indicate your Email addresse here.

Enter your comment here

This form accepts SPIP shortcuts {{bold}} {italic} -*list [text->url] <quote> <code> and HTML code <q> <del> <ins>. To create paragraphs, just leave empty lines.

Add a document

Follow the comments: RSS 2.0 | Atom