#!/usr/princeton/bin/perl -w my %params; read(STDIN, $q, $ENV{CONTENT_LENGTH}); # $q = $ENV{QUERY_STRING}; parse($q); foreach $i (sort keys %params) { $s .= "$i = $params{$i}
\n"; } foreach $i (sort keys %ENV) { $env .= "
$i $ENV{$i}"; } $q = $q . " " . $env; $d = localtime(); $oldcookie = $ENV{HTTP_COOKIE}; print <

query = $q

params = $s END sub parse { my $temp = "@_"; my @pairs = split('&', $temp); my($par, $val); foreach (@pairs) { ($par, $val) = split('='); $par = unescape($par); $val = unescape($val); if ($params{$par}) { $params{$par} .= "$;$val"; } else { $params{$par} = $val; } } } sub unescape { my $temp = "@_"; $temp =~ tr/+/ /; # translate + to space $temp =~ s/%([0-9a-fA-F]{2})/pack("c",hex($1))/ge; return $temp; }