Voir aussi
Dans la même rubrique :
Quiz en PHP 1/3
Quiz en PHP 3/3
Page contact en PHP 3/3
Installer un script PHP pour les nuls
Page contact en PHP 1/3
Page contact en PHP 2/3
Menu de navigation sans JavaScript
Gestion d’une rubrique... en attendant SPIP
Créer un forum à l’aide de phpBB
Page Erreur 404 en PHPDu même auteur :
Suivi de vos articles
Exécuter un Javascript dans une page SPIP
Reprendre un document Word
Les Centres de santé
Quiz en PHP 2/3
Comité Départemental d’Education pour la Santé des Yvelines
Les sites des Médecins Maîtres-Toile
Joindre un document à un article
Placer une image dans un article
Les raccourcis typographiques
Ecrire ou modifier un article
Présentation de l’espace rédacteurs
Conseils aux rédacteurs
Lire nos fichiers de syndication
Syndication, comment s’y retrouver
Afficher plusieurs flux RSS/Atom sur une page
Lecture des caractères spéciaux et d’éléments d’un fil RSS/Atom
Accueil du nouveau rédacteur
Javascript : n’oubliez pas Mac OS !
Positionnement fixe... même avec Internet Explorer !
Des fils RSS 1.0, RSS 2.0 et Atom 1.0 pour votre site SPIP
Editez vos flux avec Fil_LE 1/2
Editez vos flux avec Fil_LE 2/2
Editer plusieurs fichiers de syndication 1/3
Editer plusieurs fichiers de syndication 2/3
Editer plusieurs fichiers de syndication 3/3
Documentation sur SPIP
Abandonnons RSS 0.91 !
La syndication de contenu RSS
Ecrire ce qu’on veut dans SPIP
Utiliser les smileys
Joindre un logo à un article
Référencer un site
Création à distance d’un fichier de syndication
Lecteur RSS/Atom pour votre site 1/2
Lecteur RSS/Atom pour votre site 2/2
Quand JavaScript est désactivé... 2/2
Afficher un fil RSS/Atom sur votre site 1/3
Afficher un fil RSS/Atom sur votre site 2/3
Afficher un fil RSS/Atom sur votre site 3/3
Un Editeur RSS pour votre site 1/2
Un Editeur RSS pour votre site 2/2
Un lecteur RSS pour votre site 1/2
Un lecteur RSS pour votre site 2/2
Menu dépliant pour les rubriques
Quand JavaScript est désactivé... 1/2
Astuce pour les images fréquemment utilisées
Utilisation de la classe easyRSS
Proposer plusieurs styles pour votre siteMême indexation :
Technique Web
Editer plusieurs fichiers de syndication 3/3
Page Erreur 404 en PHP
Menu de navigation sans JavaScript
MARST - Le Moteur Automatisé de Recherche en Santé au Travail
Utilisation de la classe easyRSS
Belles icônes pas chères !
Un lecteur RSS pour votre site 2/2
Syndication, comment s’y retrouver
Analyser les réponses à une liste de questions
La Netiquette des forums
Editer plusieurs fichiers de syndication 1/3
Initiation au xhtml - 3 : Rappel sur les pointeurs internet (URI/URL)
Proposer plusieurs styles pour votre site
Publication Spip : forme et typographie
Quiz en PHP 1/3
Installer un script PHP pour les nuls
Contrôler l’accès d’une partie du site avec .htaccess
Le web structuré et sa présentation
Quand JavaScript est désactivé... 1/2
Réaliser un formulaire de contact (3/4)
Un Editeur RSS pour votre site 1/2
Qualité, centres d’intérêt et motivations des participants aux forums médicaux.
Réaliser un formulaire de contact (2/4)
Etablir un questionnaire statistique en ligne
Javascript : n’oubliez pas Mac OS !
Un Editeur RSS pour votre site 2/2
Quand JavaScript est désactivé... 2/2
Editer plusieurs fichiers de syndication 2/3
Soigner en ligne, un art impossible ?
Page contact en PHP 1/3
Menu dépliant pour les rubriques
Réaliser un formulaire de contact (4/4)
Comment intégrer Snap Shots à Rapidweaver ?
Initiation au xhtml - 2
Mise en place d’un forum : une décision qui doit être mûrement réfléchie
xhtml - 4 : Les entités
Tri et Histogramme
Initiation au xhtml - 1
Créer un forum à l’aide de phpBB
Un lecteur RSS pour votre site 1/2
Réaliser un formulaire de contact (5/4)
Quiz en PHP 3/3
Page contact en PHP 3/3
Page contact en PHP 2/3
Positionnement fixe... même avec Internet Explorer !
Réaliser un formulaire de contact (1/4)
Comment faire migrer son site ?
Un serveur dédié pour les nuls
Conseils pour débuter un site web
Créer une liste de QCM
Gestion d’une rubrique... en attendant SPIP
La syndication de contenu RSS
Lire nos fichiers de syndication
Ecrire ce qu’on veut dans SPIP
Afficher un fil RSS/Atom sur votre site 1/3
Astuce pour les images fréquemment utilisées
Afficher un fil RSS/Atom sur votre site 2/3
Afficher un fil RSS/Atom sur votre site 3/3
Lecteur RSS/Atom pour votre site 1/2
Lecteur RSS/Atom pour votre site 2/2
Lecture des caractères spéciaux et d’éléments d’un fil RSS/Atom
Syndication pour phpBB
Editez vos flux avec Fil_LE 1/2
Editez vos flux avec Fil_LE 2/2
Création à distance d’un fichier de syndication
Abandonnons RSS 0.91 !
Exécuter un Javascript dans une page SPIP
Des fils RSS 1.0, RSS 2.0 et Atom 1.0 pour votre site SPIPSyndiquer tout le texte
Page contact en PHP 2/3
Page Erreur 404 en PHP
Proposer plusieurs styles pour votre site
Page contact en PHP 3/3
Installer un script PHP pour les nuls
Quiz en PHP 3/3
Gestion d’une rubrique... en attendant SPIP
Editer plusieurs fichiers de syndication 1/3
Editer plusieurs fichiers de syndication 3/3
Quiz en PHP 1/3
Quand JavaScript est désactivé... 1/2
Syndication, comment s’y retrouver
Javascript : n’oubliez pas Mac OS !
Menu dépliant pour les rubriques
Menu de navigation sans JavaScript
Quand JavaScript est désactivé... 2/2
Positionnement fixe... même avec Internet Explorer !
Editer plusieurs fichiers de syndication 2/3
Page contact en PHP 1/3
Afficher plusieurs flux RSS/Atom sur une page
La syndication de contenu RSS
Conseils aux rédacteurs
Lire nos fichiers de syndication
Présentation de l’espace rédacteurs
Ecrire ce qu’on veut dans SPIP
Afficher un fil RSS/Atom sur votre site 1/3
Astuce pour les images fréquemment utilisées
Ecrire ou modifier un article
Afficher un fil RSS/Atom sur votre site 2/3
Les raccourcis typographiques
Reprendre un document Word
Afficher un fil RSS/Atom sur votre site 3/3
Lecteur RSS/Atom pour votre site 1/2
Lecteur RSS/Atom pour votre site 2/2
Lecture des caractères spéciaux et d’éléments d’un fil RSS/Atom
Placer une image dans un article
Editez vos flux avec Fil_LE 1/2
Joindre un document à un article
Editez vos flux avec Fil_LE 2/2
Joindre un logo à un article
Création à distance d’un fichier de syndication
Abandonnons RSS 0.91 !
Exécuter un Javascript dans une page SPIP
Des fils RSS 1.0, RSS 2.0 et Atom 1.0 pour votre site SPIP
Accueil
Boite à Outils
Scripts PHP
Quiz en PHP 2/3

Vous pouvez voir un exemple de ce script ici : Quiz sur l’alcool.
Comme pour la version de base du script, vous utilisez deux fichiers :
celui contenant la mise en forme de la page et le tableau avec les questions, les réponses et la correction,
celui contenant le code de gestion du script.
Le premier fichier n’a besoin que de peu de modifications :
1) Il faut évidemment supprimer les numéros indiquant l’ordre des questions, puisque cet ordre va être aléatoire, ainsi :
$quizz= array( |
doit être remplacé par :
$quizz= array( |
2) Il faut charger le fichier de gestion du script, que j’ai nommé quizz_rand.inc.php Ce nouveau fichier permet de conserver l’ancien pour des quizz où on préfère garder un ordre déterminé des questions. La ligne :
include("quizz.inc.php"); |
devient donc :
include("quizz_rand.inc.php"); |
Le fichier quizz_rand.inc.php :
Voici son code pour pouvoir l’installer :
Voici quelques commentaires pour comprendre ce qui change dans quizz_rand.inc.php par rapport à quizz.inc.php pour permettre un ordre aléatoire des questions.
Les questions, les réponses et la correction sont dans $quizz
En notant $melange = array_rand($quizz,count($quizz)); on obtient un tableau d’index indiquant dans quel ordre seront présentées les questions de $quizz Cet ordre sera évidemment modifié à chaque chargement de la page.
Ainsi, la ligne :
print "\t".($i+1)." - ".$quizz[$melange[$i]][0]."\n"; |
indique que l’on affiche une tabulation, puis le numéro de la question [2] suivie d’un tiret et $quizz[$melange[$i]][0] pour afficher la question dans l’ordre tiré au sort.
Tout ceci concerne l’affichage des questions, mais pour gérer les réponses c’est moins simple, car si on applique le même principe $melange = array_rand($quizz,count($quizz)); pour les réponse, on obtient bien un ordre aléatoire de celle-ci, mais qui est différent de celui des questions, on ne peut donc pas dire quelles sont les bonnes réponses...
Alors j’ai dû procéder autrement en notant l’ordre de présentation des questions dans une variable $liste gràce à $liste .= $melange[$i].","; et envoyée en même temps que le formulaire :
print "<input type=\"hidden\" name=\"result\" value=\"$liste\" /><br />\n<center>"; |
A la réception du formulaire, le numéro de chaque question séparé par une "," se trouve dans $result on récupère ensuite chaque numéro avec la fonction split() :
$numero = split("[,]",$result); |
$numero étant un tableau, on aura chaque numéro dans l’ordre avec $numero[$i]
[1] Ce script a été modifié le 15/12/07 en remplaçant $result par $_POST[result] et $$nom par $_POST[$i].
[2] $i commençant à 0, il faut noter ($i+1) pour indiquer le numéro des questions en commençant à 1.