Je reprends le travail de quelqu'un qui n'est pas vraiment disponible...comment je peux faire, sachant que je peux afficher les bonnes et mauvaises réponses mais seulement sur la deuxième page juste avant le formulaire, le but étant de ne pas donner les réponses à la personne qui fait le test. Voilà les écritures où il y a les réponses :
if(isset($_POST['suivant'])){
// Si on arrive de la page precedente, alors les données POST du test sont presente, donc on peut faire la boucle.
// Une fois la boucle faite, les donnees sont enregistrées en sessions.
foreach($_POST['ans'] as $cle => $valeur) {
if (trim(strtolower($_POST['ans'][$cle])) == $good[$cle]){
$question_courante = substr($cle, 1, 2);
//Affichage des bonnes reponses
//echo '<li>'.$cle.' : <span style ="'.$ansUser.'">'.$_POST["ans"][$cle].'</span> => <span style="'.$ansGood.'">BON</span></li>';
if ($question_courante <= 30){
$pts = $pts + 1; // Les questions de 1 a 30 donnent 1 point
} else {
$pts = $pts + 2; // Les questions de 31 a 60 comptent double
}
// Comptage des bonnes réponses plus précis (rajouté le 13/10/09)
if ((0 <= $question_courante) && ($question_courante <= 20)){
$rep_grammar = $rep_grammar + 1; // Réponses de 1 à 20 = GRAMMAR
} elseif ((21 <= $question_courante) && ($question_courante <= 30)) {
$rep_prep = $rep_prep + 1; // Réponses de 21 à 30 = PREPOSITIONS
} elseif ((31 <= $question_courante) && ($question_courante <= 45)) {
$rep_verbs = $rep_verbs + 1; // Réponses de 31 à 45 = VERBS
} else {
$rep_vocab = $rep_vocab + 1; // Réponses de 46 à 60 = VOCAB
}
$bonne_reponse = $bonne_reponse + 1;
} else {
//Affichage des mauvaises reponses
//echo '<li>'.$cle.' : <span style ="'.$ansUser.'">'.$_POST["ans"][$cle].'</span> => <span style="'.$ansWrong.'">FAUX</span> La reponse correcte etait : '.$good[$cle].'</li>';
}
}
$_SESSION['bonne_rep'] = $bonne_reponse;
$_SESSION['total_score'] = $pts;
$_SESSION['pts_grammar'] = $rep_grammar;
$_SESSION['pts_prepositions'] = $rep_prep;
$_SESSION['pts_verbs'] = $rep_verbs*2;
$_SESSION['pts_vocabulaire'] = $rep_vocab*2;
}
Et voilà une partie du mail envoyé au formateur :
// Contenu du mail
$acb_msg = "--$mime_boundary\n";
$acb_msg .= "Content-Type: text/html; charset=utf-8\n";
$acb_msg .= "Content-Transfer-Encoding: 8bit\n\n";
$acb_msg .= '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">'."\r";
$acb_msg .= '<html xmlns="http://www.w3.org/1999/xhtml">'."\r";
$acb_msg .= '<head>'."\r";
$acb_msg .= '<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />'."\r";
$acb_msg .= '<title>Detail du test</title>'."\r";
$acb_msg .= '<style type="text/css">'."\r";
$acb_msg .= 'table {font-family: Verdana, Arial, Helvetica, sans-serif; font-size:11px; text-align:left;}'."\r";
$acb_msg .= 'hr {color: #ddd; background-color: #ddd; height: 1px; border: 0;}'."\r";
$acb_msg .= '</style>'."\r";
$acb_msg .= '</head>'."\r";
$acb_msg .= '<body>'."\r";
$acb_msg .= '<div style="font-family: Verdana, Arial, Helvetica, sans-serif; font-size:12px;">'."\r";
$acb_msg .= 'Bonjour,<br /><br />'.$fUserCiv.' '.$fUserName.' '.$fUserFirstname.' vient de soumettre le test : '.constant(strtoupper($_SESSION['lang_test'])).'<br /><br />'."\r";
$acb_msg .= '<h3 style="color:#069;">Détail du test :</h3>'."\r";
$acb_msg .= '<table width="350" border="0" cellspacing="2" cellpadding="0">'."\r";
$acb_msg .= '<tr>'."\r";
$acb_msg .= '<th scope="row" style="color:#069;">Langue du test</th>'."\r";
$acb_msg .= '<td>'.constant(strtoupper($_SESSION['lang_test'])).'</td>'."\r";
$acb_msg .= '</tr>'."\r";
$acb_msg .= '<tr>'."\r";
$acb_msg .= '<th scope="row" style="color:#069;">Heure</th>'."\r";
$acb_msg .= '<td>'.date("H:i").'</td>'."\r";
$acb_msg .= '</tr>'."\r";
$acb_msg .= '<tr>'."\r";
$acb_msg .= '<th scope="row" style="color:#069;">Grammar</th>'."\r";
$acb_msg .= '<td>'.$_SESSION['pts_grammar'].' / 20</td>'."\r";
Comment je peux faire ???? Et comment je l'écris surtout ?? Si vous avez une idée.... merci d'avance