#!/usr/bin/perl5/perl &get_form_data; print "Content-type: text/html\n\n"; opendir(DIR, "./Data"); while($name = readdir(DIR)) { next if $name !~ /^\d*.html/; push(@files, $name); } close(DIR); if($#files == 0) { $nextfile = "1.html"; } else { $lastfile = $files[$#files]; $lastfile =~ s/.html//g; $nextfile = $lastfile + 1; $nextfile .= ".html"; } open(OUT, ">Data/$nextfile"); print OUT "\n\n "; print OUT "\n"; print OUT "$FORM{'title'}\n"; print OUT "\n"; print OUT "\n"; print OUT "\n"; print OUT "

\n"; print OUT "$FORM{'heading'}\n"; print OUT "


\n"; print OUT "

\n"; print OUT "$FORM{'body'}\n"; close(OUT); push(@files, $nextfile); print "\n\n"; foreach $file (@files) { print "$file\n"; print "
\n"; } print "\n\n"; exit; sub get_form_data { # 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; $value =~ s/\0//g; $value =~ s///g; $value =~s/\cM//g; $value =~s/\n\n/

/g; $value =~s/\n/
/g; $FORM{ $name } = $value; } }