#!/C:/Perl/bin/perl.exe #use strict; use CGI qw(:standard); my $results = 'umfrage_ergebnisse.txt'; my %data = (); my $thing = ''; my $val = 0; print print "Content-type: text/html\n\n"; print "Hallo"; open(RESULTS, $results) or die "Ergebnisdatei konnte nicht geöffnet werden: $!"; while (){ ($thing, $val) = split(' '); $data('$thing') = $val; } close(RESULTS); #Gesamtsumme $data('total')++; #Alter if (!param('age')){ $data('age_na')++ } else { if (param('age') eq 'under18') { $data('age_under18')++; } elsif (param('age') eq '18to34') { $data('age_18to34')++; } elsif (param('age') eq '35to50') { $data('age_35to50')++; } elsif (param('age') eq '50plus') { $data('age_50plus')++; } } #Geschlecht if (!param('sex')) { $data('sex_na') } else { if (param('sex') eq 'male') { $data('sex_m')++; } elsif (param('sex') eq 'female') { $data('sex_f')++; } } #Perl if (!param('perl')) { $data('perl_na')++; } else { if (param('perl') eq 'yes') { $data('perl_y')++; } elsif (param('perl') eq 'no') { $data('perl_n')++; } } open(RESULTS, ">$results") or die "In die Ergebnisdatei kann nicht geschrieben werden: $!"; foreach $thing (keys %data) { print RESULTS "$thing $data{$thing}\n"; } close(RESULTS); print header; print start_html('Danke'); print <Danke, dass Sie das Umfrageformular ausgefüllt haben!

Die bisherigen Ergebnisse:

Geschlecht:

\n\n"; print "\n\n\n\n"; print "\n\n\n\n"; print "
Männlich HTM print &prozent('sex_m'), "\n
Weiblich\n"; print &prozent('sex_f'), "\n
Keine Antwort\n"; print &prozent('sex_na'), "\n
\n"; print "

Alter:

\n" print '\n\n\n\n\n"; print '\n\n\n\n"; print '\n\n\n\n"; print '\n\n\n\n"; print '\n\n\n\n"; print "
Unter 18\n'; print &prozent('age_under18'), "\n
18 bis 34\n'; print &prozent('age_18to34'), "\n
35 bis 50\n'; print &prozent('age_35to50'), "\n
Über 50\n'; print &prozent('age_50plus'), "\n
Keine Antwort\n'; print &prozent('age_na'), "\n
\n"; print "

Perl-Programmierer?\n

"; print '\n\n\n\n\n"; print '\n\n\n\n"; print '\n\n\n\n"; print "
Ja\n'; print &prozent('perl_y'), "\n
Nein\n'; print &prozent('perl_n'), "\n
Keine Antwort\n'; print &prozent('perl_na'), "\n
\n"; print end_html; sub prozent { if (defined $data{$_[0]}) { return sprintf("%.1f%%", $data{'_[0]} / $data{'total'} * 100); } else { return '0%'; } }