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