#!/usr/local/bin/perl
print "Content-type: text/html\n\n";
# Definition de constantes
$base = '/usr/local/etc/w3perl/htdocs/quizz';
$page1 = "$base/test1.html";
$page2 = "$base/test2.html";
$page3 = "$base/test3.html";
$page4 = "$base/test4.html";
$fich_reponse = $base."/data/reponses.txt";
$fich_question = $base."/data/questions.txt";
$debug = 0;
$good = 0;
$nb_repondu = 0;
# Get the input
read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'});
# Split the name-value pairs
@pairs = split(/&/, $buffer);
foreach $pair (@pairs)
{
($name, $value) = split(/=/, $pair);
# Un-Webify plus signs and %-encoding
$value =~ tr/+/ /;
$value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
# Uncomment for debugging purposes
# print "Setting $name to $value
" if ($debug == 1);
$FORM{$name} = $value;
$nb_repondu++ if (substr($name,0,1) eq "q");
}
$count = $FORM{'nb_questions'};
# comparaison pour savoir si l'utilisateur a repondu a toutes les questions.
if ($nb_repondu != $count) {
print "
\n"; print "
| Question | Votre réponse | Bonne réponse | \n"; for ($i=0;$i<=$#reponse;$i++) { ($a,$b) = split(/ = /,$reponse[$i]); (@valeurs) = split(/\t/,$question[$i]); $num = $a; $num =~ s/q//; $val_reponse = $valeurs[$FORM{$a}-1]; $val_solution = $valeurs[$b-1]; $good++ if ($b == $FORM{$a}); # bonne reponse if ($debug == 1) { print "
|---|---|---|
Taux de réussite : \n";
$stringemail .= "Taux de reussite : $taux %";
$mailprog = '/usr/lib/sendmail -t';
$recipient = 'domisse@w3perl.com';
open (MAIL, "|$mailprog $recipient") || die "Can't open $mailprog!\n";
print MAIL "Subject: Quizz \n\n";
print MAIL "Resultat du quizz :\n\n";
print MAIL "------------------------------------------------------------\n";
print MAIL "$stringemail";
print MAIL "\n------------------------------------------------------------\n";
print MAIL "Server protocol: $ENV{'SERVER_PROTOCOL'}\n";
print MAIL "Remote host: $ENV{'REMOTE_HOST'}\n";
print MAIL "Remote IP address: $ENV{'REMOTE_ADDR'}\n";
close (MAIL);
print "\n";
print "\n"; print "$string"; print "Nous vous remercions d'avoir joué avec nous.\n"; print " \n |