use strict; use vars qw/..../; use Archive::Zip qw/:ERROR_CODES/; use CGI; use Data::Alias; use Date::Calc qw/Day_of_Week Decode_Date_US Decode_Month/; use Date::Extract; use Digest::SHA qw/sha1_base64/; use File::Copy; use GDBM_File; use HTML::Defang; use HTML::Entities; use Image::Size; use LWP::MediaTypes qw(guess_media_type read_media_types); use MIME::Entity; use MIME::Base64; use Text::Metaphone; use Time::HiRes qw/time/; BEGIN { $|=1; .... %dispatch=( 'edit' => \&do_edit, 'save' => \&do_save, 'undo' => \&do_undo, 'prior' => \&do_prior, 'next' => \&do_next, 'read' => \&do_read, .... }; } $query=new CGI; %cookie=$query->cookie('app'); %P=(); for $key ($query->param) { $value=encode_entities($query->param($key),'\x80-\xFF'); $P{$key}=$value; } ....