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 :
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
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
Exécuter un Javascript dans une page SPIP
Astuce pour les images fréquemment utilisées
Utilisation de la classe easyRSS
Proposer plusieurs styles pour votre siteMême indexation :
Technique Web
Quand JavaScript est désactivé... 1/2
Comment intégrer Snap Shots à Rapidweaver ?
Quiz en PHP 3/3
Qualité, centres d’intérêt et motivations des participants aux forums médicaux.
Publication Spip : forme et typographie
La Netiquette des forums
Menu dépliant pour les rubriques
Contrôler l’accès d’une partie du site avec .htaccess
Analyser les réponses à une liste de questions
Webmasters : Comment mieux se référencer ?
Page contact en PHP 1/3
Belles icônes pas chères !
Quand JavaScript est désactivé... 2/2
Exécuter un Javascript dans une page SPIP
Positionnement fixe... même avec Internet Explorer !
Etablir un questionnaire statistique en ligne
Réaliser un formulaire de contact (3/4)
Un Editeur RSS pour votre site 2/2
Proposer plusieurs styles pour votre site
Un lecteur RSS pour votre site 2/2
Initiation au xhtml - 2
Ecrire ce qu’on veut dans SPIP
Editer plusieurs fichiers de syndication 3/3
Astuce pour les images fréquemment utilisées
Tri et Histogramme
Réaliser un formulaire de contact (1/4)
xhtml - 4 : Les entités
Un serveur dédié pour les nuls
Le web structuré et sa présentation
Quiz en PHP 1/3
Soigner en ligne, un art impossible ?
Réaliser un formulaire de contact (5/4)
Utilisation de la classe easyRSS
Page Erreur 404 en PHP
Page contact en PHP 3/3
Comment faire migrer son site ?
Un Editeur RSS pour votre site 1/2
Page contact en PHP 2/3
Créer une liste de QCM
Un lecteur RSS pour votre site 1/2
Editer plusieurs fichiers de syndication 1/3
Initiation au xhtml - 1
Editer plusieurs fichiers de syndication 2/3
Mise en place d’un forum : une décision qui doit être mûrement réfléchie
Conseils pour débuter un site web
Gestion d’une rubrique... en attendant SPIP
Créer un forum à l’aide de phpBB
Initiation au xhtml - 3 : Rappel sur les pointeurs internet (URI/URL)
Réaliser un formulaire de contact (4/4)
Menu de navigation sans JavaScript
Réaliser un formulaire de contact (2/4)
Syndication, comment s’y retrouver
Javascript : n’oubliez pas Mac OS !
MARST - Le Moteur Automatisé de Recherche en Santé au Travail
Installer un script PHP pour les nuls
La syndication de contenu RSS
Lire nos fichiers de syndication
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
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 !
Des fils RSS 1.0, RSS 2.0 et Atom 1.0 pour votre site SPIPSyndiquer tout le texte
Menu de navigation sans JavaScript
Menu dépliant pour les rubriques
Quand JavaScript est désactivé... 1/2
Page Erreur 404 en PHP
Gestion d’une rubrique... en attendant SPIP
Installer un script PHP pour les nuls
Javascript : n’oubliez pas Mac OS !
Proposer plusieurs styles pour votre site
Syndication, comment s’y retrouver
Quiz en PHP 1/3
Page contact en PHP 2/3
Editer plusieurs fichiers de syndication 1/3
Exécuter un Javascript dans une page SPIP
Page contact en PHP 3/3
Ecrire ce qu’on veut dans SPIP
Astuce pour les images fréquemment utilisées
Editer plusieurs fichiers de syndication 3/3
Quand JavaScript est désactivé... 2/2
Page contact en PHP 1/3
Quiz en PHP 3/3
Positionnement fixe... même avec Internet Explorer !
Editer plusieurs fichiers de syndication 2/3
Afficher plusieurs flux RSS/Atom sur une page
Conseils aux rédacteurs
La syndication de contenu RSS
Lire nos fichiers de syndication
Présentation de l’espace rédacteurs
Afficher un fil RSS/Atom sur votre site 1/3
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 !
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.