#!/usr/local/bin/perl #In der ersten Zeile nach #! ist der Pfad eingetragen, an dem sich perl.exe befindet. %uservars = &read_query_string; #Lesen der eingegebenen Felder in %uservars $logischFig = 8; $logischVerb = 8; $raumlich = 4; @anwort = (0,'B','D','B','A','C','D','D','B', 'B','D','B', 'C', 'A','D','C','C', 'A','C','E','E') for (1..8) { $logischFig-- if $uservars{"IQ$_"} eq $antwort[$_] } for (9..16) { $logischVerb-- if $uservars{"IQ$_"} eq $antwort[$_] } for (17..20) { $raumlich-- if $uservars{"IQ$_"} eq $antwort[$_] } $falsch = $raumlich + $logischVerb + $logischFig; print "Content-type: text/html\n\n"; print <
Testauswertung

Diese Auswertung zeigt nur die falschen Angaben in den jeweiligen Abschnitten:

Abschnitt 1) (logisches Denken figural)
$logischFig Fehler in 8 Aufgaben

Abschnitt 2) (logisches Denken verbal)
$logischVerb Fehler in 8 Aufgaben

Abschnitt 3) (räumliches Vorstellungsvermögen)
$raumlich Fehler in 4 Aufgaben

------------------------------------------------------------------------------------- ----------------
Ergebnis:
$falsch Antwort(en) von 20 Aufgaben sind falsch .......

EOF sub read_query_string { local ($buffer, @pairs, $pair, $name, $value, %FORM); # Read in text $ENV{'REQUEST_METHOD'} =~ tr/a-z/A-Z/; if ($ENV{'REQUEST_METHOD'} eq "POST") { read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'}); } else { # this is a "GET method $buffer = $ENV{'QUERY_STRING'}; } # else @pairs = split(/&/, $buffer); foreach $pair (@pairs) { ($name, $value) = split(/=/, $pair); $value =~ tr/+/ /; $value =~ s/%(..)/pack("C", hex($1))/eg; $FORM{$name} = $value; } # foreach %FORM; }