le loup solitaire
Invité n'ayant pas de compte PHPfrance
06 avr. 2016, 17:00
merci pour les réponse, je m'explique un peu mieux, j'ai 8 images et sous chaque images un champs text pour marqué la réponse..
j ai oublier de mettre tous le code.j ai deux fonction une pour la sélection et une autre pour les réponses qui calcule les bonnes et mauvaise réponses...
function displaySelectReponse($choix)
{
$options = array ('douche', 'poubelle', 'souris', 'soupe', 'couteau', 'tournevis', 'journal', 'rouge');
$select = "";
foreach ($options as $key => $option) {
if(isset($select)){
$select .= "<td><input type='text' name='$choix' value='$option'/></td>";
}
}
return $select;
}
function displayReponse($choix)
{
global $errors, $reponses;
$mot = $reponses[$choix]['mot'];
$reponse_class = 'ok';
$resultat = '';
if (array_key_exists($choix, $errors))
{
$reponse_class = 'error';
$resultat = " => " . $reponses[$choix]['reponse'];
}
$reponse = '<li class="' . $reponse_class . '">';
$reponse.= '<span style="font-size:1.3em;" class="reponse">' . htmlspecialchars($_POST[$choix]) . '</span>
<span style="margin-left:1%;font-size:1.3em;"">' . $mot . '</span>';
$reponse.= ' <span style="color:red;font-size:1.3em;margin-left:5%;"" class="resultat">' . $resultat . '</span> ';
$reponse.= '</li>';
return $reponse;
}
$form_ok = false;
$reponses = array(
'chx_0' => array(
'mot' => 'une',
'reponse' => 'douche',
'image' => 'img/douche.gif'
) ,
'chx_1' => array(
'mot' => 'une',
'reponse' => 'poubelle',
'image' => 'img/poubelle.gif'
) ,
'chx_2' => array(
'mot' => 'une',
'reponse' => 'souris',
'image' => 'img/souris.gif'
) ,
'chx_3' => array(
'mot' => 'une',
'reponse' => 'soupe',
'image' => 'img/soupe.gif'
) ,
'chx_4' => array(
'mot' => 'un',
'reponse' => 'couteau',
'image' => 'img/couteau.gif'
) ,
'chx_5' => array(
'mot' => 'un',
'reponse' => 'tournevis',
'image' => 'img/tournevis.gif'
) ,
'chx_6' => array(
'mot' => 'un',
'reponse' => 'journal',
'image' => 'img/journal.gif'
) ,
'chx_7' => array(
'mot' => 'une',
'reponse' => 'rouge',
'image' => 'img/carré-rouge.gif'
)
);
if (isset($_POST['correction']) && $_POST['correction'] === 'correction')
{
$empty = false;
foreach($reponses as $key => $value)
{
if (empty($_POST[$key]))
{
$empty = true;
}
}
if ($empty)
{
$msg = '<p>Veuillez cochez toutes les cases !</p>';
echo $msg;
}
else
{
$form_ok = true;
$errors = array();
echo"</pre>";
foreach($reponses as $key => $value)
{
if ($_POST[$key] == $value['reponse'])
{
$errors[$key] = htmlspecialchars($_POST[$key]);
}
}
}
}
?>
<?php
if (!$form_ok)
{ ?>
<form action="" method="POST" />
<?php
$images = array(
'0' => array(
'pronom' => 'une',
'image' => 'img/douche.gif'
) ,
'1' => array(
'pronom' => 'une',
'image' => 'img/poubelle.gif'
) ,
'3' => array(
'pronom' => 'une',
'image' => 'img/souris.gif'
) ,
'4' => array(
'pronom' => 'une',
'image' => 'img/soupe.gif'
) ,
'5' => array(
'pronom' => 'un',
'image' => 'img/couteau.gif'
) ,
'6' => array(
'pronom' => 'un',
'image' => 'img/tournevis.gif'
) ,
'7' => array(
'pronom' => 'un',
'image' => 'img/journal.gif'
) ,
'8' => array(
'pronom' => 'un',
'image' => 'img/rouge.gif'
)
);
foreach($images as $key => $image)
{
foreach($reponses as $choix => $reponse)
{
if ($choix !== $reponse OR $image !== $reponse)
{
echo '<article class="content_img"><figure>';
echo '<img src="' . $image['image'] . '" width="75" height="75" alt="" />';
echo '</figure><p>' . $image['pronom'] . '</p>';
echo displaySelectReponse($choix, $reponse['mot']);
echo '</article>';
break;
}
}
}
?>
<input class="correction_center" type="submit" name="correction" value="correction"/>
</form>
<?php
}
else
{ ?>
<p style="text-align:center;padding:4% 0 0 0;font-size:1.6em;font-weight:bold;display:block;" >Corrigé de l'exercice :</p>
<div class="blc_reponses">
<ol style="text-align:left;" class="reponses">
<?php
foreach($reponses as $choix => $value)
{
echo displayReponse($choix);
} ?>
</ol>
<h2 style="display:inline-block;">Bonnes réponses :</h2>
<p><?php
echo count($reponses) - count($errors); ?> / <?php
echo count($reponses); ?></p>
</div>
<div class="main_sec" style="text-align:center;margin-left:-10px;"> <span><a href="exo_ou_1.php">REFAIRE L'EXERCICE</a></span> <span><a href="exo_ou_2.php">EXERCICE SUIVANT</a></span> </div>
<?php
} ?>