vizionzero
Messages postés8Date d'inscriptionmardi 5 avril 2005StatutMembreDernière intervention17 avril 2005
-
5 avril 2005 à 15:57
aze555666
Messages postés208Date d'inscriptionmardi 13 avril 2004StatutMembreDernière intervention26 janvier 2009
-
7 avril 2005 à 17:08
Bonjour,
J'ai beau bidouillé et me casser la tete, je ne trouve aucune solution.
J'ai besoin de réaliser un test (non un QCM) style ceux qu'on trouve dans les magazines (avec une kestion et plusieurs reponses possibles , pas de oui ni non) et a la fin on calcule le nombre de reponses quon a coché en c ou en a ou b ect....et là ca vous dit ke vous etes une fille tres cool ou tres garce...vous voyez d equoi je parle?????
Et bien je ne trouve aucun script et comme j'en ai besoin pour un cours, jespere que je trouverez de l'aide sur ce sympathique forum!!!
aze555666
Messages postés208Date d'inscriptionmardi 13 avril 2004StatutMembreDernière intervention26 janvier 2009 5 avril 2005 à 17:09
slt
à mon avis, c'est plutot le genre de truc à faire en php!
il faut une page html avec les questions, sous forme de formuaire, et une page php qui compte les réponses. le php permet quel 'utilisateur ne puisse pas voir dans le code ce qu'il faut mettre! le meiux, c'est de na pas mettre les réponses de la même catégorie toujours sur la même lettre, pour que l'utilisateur ne puisse pas voir ce qu'il doit cocher si il veut telle ou telle interprétation.
dans ce cas (ici, pour simplifier, je met 3 questions), ça donne:
pour la page "test.htm"
<html>
<form method="post" action="test.php">
question 1???
a)reponse1!
b)reponse2!
c)reponse3!
question 2???
a)reponse1!
b)reponse2!
c)reponse3!
question 3???
a)reponse1!
b)reponse2!
c)reponse3!
... et là, tu continue pour toutes tes questions...
</form>
</html>
pour la page "test.php", on aura
<html>
là, tu mets le débur de la page, du genre <center>résultats</center>
<?php
$a=0;
$b=0;
$c=0;
$1=$_POST['qu1'];
$2=$_POST['qu2'];
$3=$_POST['qu3'];
//là, tu met autant de lignes tu type $repX=$_POST['quX']; qu'il y a de questions
for($no=1 ; $no!=X+1 ; $no++) //le nombre X représente le nombre total de questions
{
$rep="$$no";
$$rep++;
}
if($a =>$b AND $a=>$c)
{
print("ce qui s'affichera si on a plus de a");
}
if($b =>$a AND $b=>$c)
{
print("ce qui s'affichera si on a plus de b");
}
if($c =>$b AND $c=>$a)
{
print("ce qui s'affichera si on a plus de c");
}
?>
là, tu peut mettre la suite de la page, qui apparaitra apres la réponse
</html>
bon j'espere que ça fonctionne, sinon, reposte ce code sur phpcs.com, ils te diront si j'ai fait une erreur, mais à priori, ça devrait fonctionner parfaitement!
aze555666
Messages postés208Date d'inscriptionmardi 13 avril 2004StatutMembreDernière intervention26 janvier 2009 5 avril 2005 à 17:13
voila! j'oubliais: dans la page test.htm, les attributs value dans les input, c'est ce à quoi correspond là réponse dans les stast faits par le php: su tu met value="a">c)réponse3, l'utilisateur verra s'afficher c, mais s'il le coche, la réponse sera interprétée comme une réponse a. ça permet que l'utilisateur ne coche pas tjs le même chose pour être sur du résultat!
vizionzero
Messages postés8Date d'inscriptionmardi 5 avril 2005StatutMembreDernière intervention17 avril 2005 6 avril 2005 à 10:09
Merci beaucoup d'avoir pris le temps de me repondre pour mon GROS souci...c'est sympa vraiment!
Mais je crois que je comprend rien, je ne parle pas ce langage, c'est tout nouveau, j'ai essayé de bidouiller mais rien a faire ,ca plante.
voila le test (pour le faire en html formaulaire ca va....) mais apres le php jcomprend rien de rien...oupsssssssssss!
En plus j eme demande comment ca calcule les reponses....sous kelle forme ca apparait??
Serait il possible de me faire un exemple avec ce test pour que je puisse comprendre de manière concrete comment on bosse du html avec du PHP???
En fait jen ai 15 a faire des tests et j'ai peur de vraiment pas y arriver!
Si j'en avait un exemple, je pourrais surement me debrouiller avec les autres...mais là je nage , je coule meme.
Merci d'avance....
[mailto:attentionceline@free.fr attentionceline@free.fr]
----------------------------------------------------------
1- Vous punissez plus souvent :
A- Théo, il fait tellement de bêtises que vous ne pouvez pas faire autrement.
B- Cela dépend des jours, parfois Théo et parfois Jules.
C- En général, c’est Jules, car si vous punissez Théo, vous avez a coup sûr droit à une crise mémorable.
2- Théo arrive avec de mauvaises notes :
A- Vous n’êtes pas très étonné, il n’est pas très bien dans sa peau en ce moment.
B- Vous comparez ses résultats à ceux de son frère pour l’inciter à s’améliorer.
C- Vous lui demandez s’il s’est appliqué et s’il considère qu’il a fait de son mieux.
3- C’est l’anniversaire de Jules :
A- Vous lui avez acheté la Playstation qu’il vous a demandé à corps et à cris.
B- Vous lui offrez le même cadeau que son frère a eu au même âge.
C- Vous organisez toujours des fêtes mémorables pour les anniversaires des enfants!
4- L’enfant qui vous ressemble le plus :
A- C’est Jules, il a votre façon de voir les choses et de réagir, vous vous comprenez, c’est indéniable.
B- C’est Théo par certains côtés et Jules pour d’autres
C- Physiquement Jules est votre portrait tout craché.
5- Le plus difficile des deux :
A- C’est Jules, très soupe au lait, vous n’osez pas le contrarier.
B- Ca dépend vraiment des périodes.
C- C’est Théo, il accumule les bêtises, c’est à croire qu’il le fait exprès par moment !
6- Vos enfants se disputent encore une fois :
A- Vous évitez de prendre partie, vous savez que ça n’arrange jamais rien.
B- Vous êtes sûre que c’est Théo qui cherche la bagarre comme d’habitude.
C- Vous envoyez Jules dans sa chambre, afin qu’il continue à lire son livre tranquillement.
7- Théo et Jules veulent vous aider à la cuisine :
A- Vous préférez que ce soit Jules, il fait moins de bêtises.
B- Vous demandez à Théo de vous aider, cela l’aidera peut être à être plus responsable.
C- Hier c’était Théo, aujourd’hui ce sera Jules.
8- Vous regardez ensemble une émission un peu compliquée.
A- Vous expliquez spontanément à Théo, c’est l’aîné.
B- Vous expliquez plutôt à Jules vous savez qu’il a plus de mal à comprendre que son frère.
C- Vous expliquez aux deux en adaptant votre discours à la compréhension du plus jeune.
9- Quand Jules fait une bêtise
A- Sincèrement, vous ne résistez pas bien longtemps à sa bouille et à son sourire.
B- Vous le punissez même si c’est plutôt rare. Certaines règles ne doivent pas être transgressée.
C- Il se fait vite pardonner, car il reconnaît ses erreurs rapidement et demande pardon.
10- Vous avez une après midi de libre.
A- Vous prenez une heure avec Théo et une heure avec Jules, comme ça vous profitez de moments en duo avec les deux.
B- Vous la passeriez bien avez Jules, il est tellement facile que c’est un plaisir.
C- Vous décidez de sortir avec Théo, vous savez qu’il en a besoin.
Résultats
1 2 3 4 5 6 7 8 9 10
A 3 2 3 3 2 1 3 2 3 1
B 1 3 2 1 1 3 2 3 1 3
C 2 1 1 2 3 2 1 1 2 2
Vous avez moins de 15 points
Un chouchou, vous ?
....................................
Vous avez entre 15 et 25 points
Un favori, quel favori ?
..........................;
Vous avez plus de 25 points
Un petit préféré !
.....................................
Vous n’avez pas trouvé la réponse que vous recherchez ?
vizionzero
Messages postés8Date d'inscriptionmardi 5 avril 2005StatutMembreDernière intervention17 avril 2005 6 avril 2005 à 10:09
Merci beaucoup d'avoir pris le temps de me repondre pour mon GROS souci...c'est sympa vraiment!
Mais je crois que je comprend rien, je ne parle pas ce langage, c'est tout nouveau, j'ai essayé de bidouiller mais rien a faire ,ca plante.
voila le test (pour le faire en html formaulaire ca va....) mais apres le php jcomprend rien de rien...oupsssssssssss!
En plus j eme demande comment ca calcule les reponses....sous kelle forme ca apparait??
Serait il possible de me faire un exemple avec ce test pour que je puisse comprendre de manière concrete comment on bosse du html avec du PHP???
En fait jen ai 15 a faire des tests et j'ai peur de vraiment pas y arriver!
Si j'en avait un exemple, je pourrais surement me debrouiller avec les autres...mais là je nage , je coule meme.
Merci d'avance....
[mailto:attentionceline@free.fr attentionceline@free.fr]
----------------------------------------------------------
1- Vous punissez plus souvent :
A- Théo, il fait tellement de bêtises que vous ne pouvez pas faire autrement.
B- Cela dépend des jours, parfois Théo et parfois Jules.
C- En général, c’est Jules, car si vous punissez Théo, vous avez a coup sûr droit à une crise mémorable.
2- Théo arrive avec de mauvaises notes :
A- Vous n’êtes pas très étonné, il n’est pas très bien dans sa peau en ce moment.
B- Vous comparez ses résultats à ceux de son frère pour l’inciter à s’améliorer.
C- Vous lui demandez s’il s’est appliqué et s’il considère qu’il a fait de son mieux.
3- C’est l’anniversaire de Jules :
A- Vous lui avez acheté la Playstation qu’il vous a demandé à corps et à cris.
B- Vous lui offrez le même cadeau que son frère a eu au même âge.
C- Vous organisez toujours des fêtes mémorables pour les anniversaires des enfants!
4- L’enfant qui vous ressemble le plus :
A- C’est Jules, il a votre façon de voir les choses et de réagir, vous vous comprenez, c’est indéniable.
B- C’est Théo par certains côtés et Jules pour d’autres
C- Physiquement Jules est votre portrait tout craché.
5- Le plus difficile des deux :
A- C’est Jules, très soupe au lait, vous n’osez pas le contrarier.
B- Ca dépend vraiment des périodes.
C- C’est Théo, il accumule les bêtises, c’est à croire qu’il le fait exprès par moment !
6- Vos enfants se disputent encore une fois :
A- Vous évitez de prendre partie, vous savez que ça n’arrange jamais rien.
B- Vous êtes sûre que c’est Théo qui cherche la bagarre comme d’habitude.
C- Vous envoyez Jules dans sa chambre, afin qu’il continue à lire son livre tranquillement.
7- Théo et Jules veulent vous aider à la cuisine :
A- Vous préférez que ce soit Jules, il fait moins de bêtises.
B- Vous demandez à Théo de vous aider, cela l’aidera peut être à être plus responsable.
C- Hier c’était Théo, aujourd’hui ce sera Jules.
8- Vous regardez ensemble une émission un peu compliquée.
A- Vous expliquez spontanément à Théo, c’est l’aîné.
B- Vous expliquez plutôt à Jules vous savez qu’il a plus de mal à comprendre que son frère.
C- Vous expliquez aux deux en adaptant votre discours à la compréhension du plus jeune.
9- Quand Jules fait une bêtise
A- Sincèrement, vous ne résistez pas bien longtemps à sa bouille et à son sourire.
B- Vous le punissez même si c’est plutôt rare. Certaines règles ne doivent pas être transgressée.
C- Il se fait vite pardonner, car il reconnaît ses erreurs rapidement et demande pardon.
10- Vous avez une après midi de libre.
A- Vous prenez une heure avec Théo et une heure avec Jules, comme ça vous profitez de moments en duo avec les deux.
B- Vous la passeriez bien avez Jules, il est tellement facile que c’est un plaisir.
C- Vous décidez de sortir avec Théo, vous savez qu’il en a besoin.
aze555666
Messages postés208Date d'inscriptionmardi 13 avril 2004StatutMembreDernière intervention26 janvier 2009 6 avril 2005 à 17:24
slt
bon, si pour le html, tu a compris, c gagné!
pour le php, tu prends le code tel quel, sauf là ou g mis un commentaire pour dire d'ajhouter des trucs:
<?php
$a=0;
$b=0;
$c=0;
$1=$_POST['qu1'];
$2=$_POST['qu2'];
$3=$_POST['qu3'];
//la, le $1 correspond à la réponse qui a été faite à la question1. on récupere cette réponse par $_POST['qu1']; ou $_POST signifie qu'on veut une donnée envoyée par le formulaire avec la méthode post, et qu1 est le nom qu'on a donné à ce champ dans le formulaire. la variable $1 contiendra donc soit a,soitb, soit c. tu met autant de lignes que necessaire.(jusque10)
for($no=1 ; $no!=X+1 ; $no++) //là, tu n'a rien a faire, mis à part remplcer le "X" par le nombre de questions, ici 10
{
$rep="$$no"; //là, tu n'est pas obligé de comprendre, c le code. j'utulise ce qu'on appelle des variables dynamiques.
$$rep++; //là, ça veut dire en gros que la varible dont le nom correspond à la réponse ($a,$b, ou $c) est incrémentée de 1. comme on est dans une boucle for, elle aura à la fin la valeur du nombre de réponses faites pour sa catégorie.
}
// les if servent ici a tester quelle est la variable qui est la plus grande entre $a, $b, et $c, donc quelle catégorie (a,b,ou c) a obtenu le plus de réponses
if($a =>$b AND $a=>$c) //ici, on regarde si a est la réponse qui a été cochée le plus souvent.
{
print("ce qui s'affichera si on a plus de a"); // là, entre les guillements, tu met ce qui s'affichera si l'utilisateur a coché a beaucoup de fois.
if($b =>$a AND $b=>$c) //même chose qu'au dessus, mais avec le b
{
print("ce qui s'affichera si on a plus de b");
}
if($c =>$b AND $c=>$a) // et ici, avec le c!
{
print("ce qui s'affichera si on a plus de c");
}
?>
là, le code php s'arrête, et tu peut mettre ce que tu veux en html, qui appraitra apres la réponse faite à l'utulisateur.
ps: ici, on compte le nombre de réponses pour chaque lettre, et on affiche le message prévu pour la lettre ou on a coché le plus de réponses.j'ai vu que tu a mis un tableau de résultats, est un truc avec des poins, mais je n'ai pas tout compris. je pense que le truc avec les lettres suffit.
je te consille d'aller sur le forum de www.phpcs.com, et de leur copier le code que je t'ai donné, pour qu'ils le vérifient, car je ne suis pas tout à fait sur de mes variables dynamiques.
pps: phpcs.com est un site du meme reseau que javascripfr, donc tu peut t'y loguer avec le mm pseudo.
vizionzero
Messages postés8Date d'inscriptionmardi 5 avril 2005StatutMembreDernière intervention17 avril 2005 7 avril 2005 à 10:04
ok, merci, je v ais essayer tout ceci aujourd'hui.
Juste une question, le fichier html est independant de celui ci alors comme le .css, le php il sattache ou dans le html?
ENCORE MERCI
C'est super!
celine
aze555666
Messages postés208Date d'inscriptionmardi 13 avril 2004StatutMembreDernière intervention26 janvier 2009 7 avril 2005 à 17:08
ben oui, t'a deux fichiers: le fichier html avec le formulaire, et le fichier test.php, qui est comme ceci:
<html>
<head>
la tu mets tes trucs habituels, ton css...
</head>
là, tu mets ce que tu veux, tout ce qui sera avant la réponse. tu peut meme mettre une balise font pour spécifier le style dans lequel sera affichée la réponse!
<?php
//là, tu mets le script que je t'ai donné. n'oublie pas qu'un fichier php doit être exécuté en ligne, ou alors il faut installer easyphp chez toi pour qu'il puisse interpréter le code. si tu ouvres le fichier directement avec ie en local, le code s'affichera sans être executé. il retournera normalement le texte de la réponse que tu fait à l'utilisateur selon qu'il a coche plus dea, de b, ou de c.
?>
là, tu mets le reste du code html de la page. n'oublie pas le si tu a mis un avant le php.
</html>
ps: maintenant, si le code php ne fonctionne pas normalement, et te retourne une erreur du style "undefinied variable", poste la sur phpcs.com.
pps:tu n'a plus qu'a mettre une réponse accepté! en fait, ça me donne rien, mais bon...