#!/usr/bin/perl # Michael Tartaglia - Feedback page # User enters comments in a form, and sees what was entered. # ...comments are not actually submitted. use strict; use CGI ":standard"; require template; # REDIRECT TO FEEDBACK.HTML IF QUERY STRING IS NULL print redirect ("../feedback.html") if ($ENV{'QUERY_STRING'} eq ""); template::startHTML("Program # 3","Feedback"); # START PRINTING OUTPUT TABLE print ""; # SPLIT UP INPUT QUERY STRING INTO HASH my $buffer = $ENV{'QUERY_STRING'}; my @pairs = split(/&/, $buffer); my %FORM; my $pair; foreach $pair (@pairs) { (my $name, my $value) = split (/=/, $pair); $value =~ tr/+/ /; $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg; if (!exists($FORM{$name})) { $FORM{$name} = $value; } else { $FORM{$name} = $FORM{$name} . ", " . $value; } } $FORM{'name'} = "anonymous" if ($FORM{'name'} eq ""); # CONTINUE PRINTING OUTPUT TABLE print "
Hello, $FORM{'name'}!"; print "You like this page's $FORM{'liked'}." if ($FORM{'liked'} ne ""); print " You dislike this page's $FORM{'disliked'}, but no hard feelings." if ($FORM{'disliked'} ne ""); print " Upon asking for your elaboration of your perception of this ", "site, you say, \"$FORM{'reasons'}\" - and I take that to ", "heart!" if ($FORM{'reasons'} ne ""); print "
"; template::endHTML();