Problème avec un test en PHP

  • Auteur de la discussion Auteur de la discussion Prire
  • Date de début Date de début
WRInaute discret
bonjour

je crée un test en php et j'ai un probléme en fait il y a 4 questions (ou 5) et dans chaque question 5 réponses possible avec comme valeur dd / d / s / ss / i je voudrai dire a mon petit ordi si il y a 2 dd et des d alors le chiot est dominant si il y a 3 d ou plus le chiot est extraverti si il y a 2 s le chiot est soumi etc etc ....

pouvez vous m'aider

A+
 
WRInaute discret
à part un :
Code:
if($reponse=='dd') 
{
$caractere='dominant';
echo $caractere;
}

c'est simplissime, je sais, mais je ne vois pas trop qu'est ce que tu poses comme question.. précise stp
 
WRInaute occasionnel
Essaie un truc du genre :

$nb['dd'] = 0;
$nb['d'] = 0;
$nb['s'] = 0;
$nb['ss'] = 0;
$nb['i'] = 0;

Ensuite, tu passes sur chacun de tes question et tu incrémentes la bonne valeur...

ex :
for ($i=0; $i<$nb_reponses; $i++)
{
$r = $reponse[$i];
$nb[$r]++;
}

Une fois que tu as fais ça, tu peux faire ton traitement, tu sais combien tu as de réponses de chaque type.
 
WRInaute discret
rahh je comprens pas tou

bon voila mon script

Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
                      "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>mon titre</title>
<meta name="description" content="ta description">
<meta name="keywords" content="tes mot clé">
<link rel=stylesheet type="text/css"
      href="CSS.html">
</head>
<body  background="menu2.gif">
<table BORDER=0 CELLSPACING=0 CELLPADDING=3 WIDTH="100%">
<tr><td WIDTH="140px" valign="top">
<?php
include ("menu.php");
?>
</td>
<td valign="top">
<center><h1>Le test de campbell</h1></center>
<form method="post" action="cambell-test-reponse.php">
<br>
<h2>L'attraction sociale</h2>
<ul><p>Placez le chiot au centre d'une pi&egrave;ce ou d'un coin de jardin. puis éloignez-vous de lui de quelque m&egrave;tres, dans le sens oppos&eacute; &agrave; celui par lequel vous &eacute;tes arriv&eacute;. Agenouillez-vous et et essayez d'attirer le chiot en claquant l&eacute;g&egrave;rement des mains.
<br><br>
<input type="radio" name="rep1" value="dd">le chien vient directement, queue haute, saute, mord
<br>
<input type="radio" name="rep1" value="d">Vient directement, queue haute, donne la patte
<br>
<input type="radio" name="rep1" value="s">Vient directement, queue basse
<br>
<input type="radio" name="rep1" value="ss">Vient en h&eacute;sitant, queue basse
<br>
<input type="radio" name="rep1" value="i">Ne vient pas
<br>
</ul></p>
<h2>Son aptitude &agrave; suivre l'homme</h2>
<p>
<ul>
Debout pr&egrave;s du chiot, éloignez-vous en marchant normalement, et en vérifiant qu'il vous a bien vu d&eacute;marrer.
<br><br>
<input type="radio" name="rep2" value="dd">Suit direstement, queue haute, dans vos pied, mord
<br>
<input type="radio" name="rep2" value="d">Suit directement, queue haute, dans vos pieds
<br>
<input type="radio" name="rep2" value="s">Suit directement, queue basse
<br>
<input type="radio" name="rep2" value="ss">Suit en h&eacute;sitant, queue basse
<br>
<input type="radio" name="rep2" value="i">Ne suist pas, va de son c&ocirc;té
</ul>
</p>
<h2>Ses r&eacute;action a la domination par contrainte</h2>
<p><ul>
Accroupissez-vous et couchez le chien au sol en le roulant gentiment sur le dos. Tiennez-le ainsi, main posée sur sa poitrine, pendant 30 secondes.
<br><br>
<input type="radio" name="rep3" value="dd">Se bat f&eacute;rocement, queue battante mord
<br>
<input type="radio" name="rep2" value="d">Se bat f&eacute;rocement, queue battante
<br>
<input type="radio" name="rep2" value="s">Se bat f&eacute;rocement, puis se calme
<br>
<input type="radio" name="rep2" value="ss">Ne se d&eacute;bat pas l&egrave;che les mains
</ul></p>
<center><input type = "submit" name = "submit" value = "envoyer"></center>
</form>
</td>
</tr>
</table>
</body>
</html>

voila maintenant je veu crée la page cambell-test-reponse.php en disant que si il y a 2 dd ou plus ... avec quelque d écrire le chien est dominant ...
 
WRInaute discret
guitvn7 a dit:
à part un :
Code:
if($reponse=='dd') 
{
$caractere='dominant';
echo $caractere;
}
oui c'est un truc comme sa seulement la c'est avec 1 réponse et moi je veux dire si les dd avec quelque d son majoritaire le chien est dominant si les d son majoritaire le chien est extraverti si il y a une majorité de s avec quelque i le chien est soumi ...etc etc
 
WRInaute occasionnel
OK, voilà mon script adapté à ton cas :

Code:
$nb['dd'] = 0; 
$nb['d'] = 0; 
$nb['s'] = 0; 
$nb['ss'] = 0; 
$nb['i'] = 0;

// Ensuite, tu passes sur chacun de tes question et tu incrémentes la bonne valeur... 

$nb[$rep1]++; 
$nb[$rep2]++; 
$nb[$rep3]++;

A mon avis, ça doit marcher...
Si tu veux savoir combien de 'dd' tu as eu, tu fais :

Code:
echo $nb['dd'];

à tester par contre...

Fais attention, tu as une faute de frappe due à un copier/coller.
Tes rep3 sont mal reportés (tu as rep3, puis rep2, rep2, rep2, etc...)
 
WRInaute occasionnel
Non, pas du tout... Pourquoi?

(Au fait, tu l'as vu la faute de frappe dont je t'ai parlé? Il vaudrait mieux sinon tu risques d'avoir des résultats assez innatendus à ton test)
 
WRInaute discret
ehhh jande en faite c'est un site et le web master il parler un peu comme toi et il avait des avatar du méme genre ...

oui merci pour la faute de frappe du copier/coller

youp juste une petite question

$nb[$rep1]++; ici $rep1 est la valeur de rep1 et est la valeur de rep 1 est dd ou d s ss ou i c'est bien sa ??
$nb[$rep2]++;
$nb[$rep3]++;
 
WRInaute occasionnel
Prire a dit:
ehhh jande en faite c'est un site et le web master il parler un peu comme toi et il avait des avatar du méme genre ...

Ca doit être quelqu'un de bien alors :D

Prire a dit:
oui merci pour la faute de frappe du copier/coller

De rien...

Prire a dit:
youp juste une petite question

$nb[$rep1]++; ici $rep1 est la valeur de rep1 et est la valeur de rep 1 est dd ou d s ss ou i c'est bien sa ??
$nb[$rep2]++;
$nb[$rep3]++;

oui c'est ça.
C'est comme si tu avais :

$rep1 qui vaut 'dd' par exemple.
Du coup, la ligne $nb[$rep1]++; equivaut à faire $nb['dd']++;
 
Discussions similaires
Haut