#学习CGI,刚好有点内容要处理,拿来练手。
########################################################################
#cgi程序名:gd_post
#下面是POST方式
my (%FORM,$buffer,$pair,@pairs,@values,$name,$value); read (STDIN,$buffer,$ENV{'CONTENT_LENGTH'}); @pairs=split(/&/,$buffer); foreach $pair(@pairs){ ($name,$value)=split(/=/,$pair); $value=~tr/+/ /; $value=~s/%([a-fA-F0-9][a-fA-F0-9])/pack("C",hex($1))/eg; push @values,$value; }
#下面是GET方式
#$QuerystringFromEnv=$ENV{QUERY_STRING};
#@NameAndValuelists=split /&/,$QuerystringFromEnv;
#foreach $NameAndValue(@NameAndValuelists)
#{
# ($Name,$Value)=split /=/,$NameAndValue;
# $Name=~tr/+//;
# $Value=~s/%([\dA-Fa-f][\dA-Fa-f])/pack("c",hex($1))/eg;
#push @values,$Value;
#}
my($whT,$whP,$lszT,$lszP,$lllT,$lllP,$dhT,$dhP,$yshT,$yshP,$zkT,$zkP,$fyT,$fyP,$lpT,$lpP) = ($values[0],$values[1],$values[2],$values[3],$values[4],$values[5],$values[6],$values[7], $values[8],$values[9],$values[10],$values[11],$values[12],$values[13],$values[14],$values[15]);
use GD::Graph3D; use GD::Graph::bars3d; print "Content-type: image/png;\n\n";
@data = ( ["汪华","李苏中","李绿林","丁浩","严胜洪","郑凯","方阳", "鲁鹏"], [ $whT, $lszT, $lllT, $dhT, $yshT, $zkT, $fyT, $lpT], [ $whP, $lszP, $lllP, $dhP, $yshP, $zkP, $fyP, $lpP] ); my $graph = GD::Graph::bars3d->new(800, 600); $graph->set_x_label_font("C:/WINDOWS/Fonts/SURSONG.TTF",10); $graph->set_y_label_font("C:/WINDOWS/Fonts/SURSONG.TTF",10); $graph->set_x_axis_font("C:/WINDOWS/Fonts/SURSONG.TTF",10); $graph->set_title_font("C:/WINDOWS/Fonts/SURSONG.TTF",16); $graph->set_legend_font("C:/WINDOWS/Fonts/SURSONG.TTF",8); $graph->set_legend("加域总量","今日加域数量"); $graph->set( x_label => '-----加域成员-----', y_label => '-----加域数量-----', title => '**公司之办公PC加域状况图', y_max_value => 120, y_tick_number => 20, y_label_skip => 2 ) or die $graph->error;
my $gd = $graph->plot(\@data) or die $graph->error; binmode STDOUT; print $gd->png;
###############################################################################
#html程序名:gd_post-html
<html> <head><title>网络组加域状况图</title></head> <body> <form METHOD=POST ACTION="绘图/gd_post.cgi">
<tr> <td nowrap><b>*汪 华*</b><br> 完成总量:</td> <td nowrap><input SIZE=1 MAXLENGTH=3 NAME="value"></td> 今日完成数量:</td> <td nowrap><input SIZE=1 MAXLENGTH=3 NAME="value"></td> </tr><hr> <tr> <td nowrap><b>*李苏中*</b><br> 完成总量:</td> <td nowrap><input SIZE=1 MAXLENGTH=3 NAME="value"></td> 今日完成数量:</td> <td nowrap><input SIZE=1 MAXLENGTH=3 NAME="value"></td> </tr><hr> <tr> <td nowrap><b>*李绿林*</b><br> 完成总量:</td> <td nowrap><input SIZE=1 MAXLENGTH=3 NAME="value"></td> 今日完成数量:</td> <td nowrap><input SIZE=1 MAXLENGTH=3 NAME="value"></td> </tr><hr> <tr> <td nowrap><b>*丁 浩*</b><br> 完成总量:</td> <td nowrap><input SIZE=1 MAXLENGTH=3 NAME="value"></td> 今日完成数量:</td> <td nowrap><input SIZE=1 MAXLENGTH=3 NAME="value"></td> </tr><hr> <tr> <td nowrap><b>*严胜洪*</b><br> 完成总量:</td> <td nowrap><input SIZE=1 MAXLENGTH=3 NAME="value"></td> 今日完成数量:</td> <td nowrap><input SIZE=1 MAXLENGTH=3 NAME="value"></td> </tr><hr> <tr> <td nowrap><b>*郑 凯*</b><br> 完成总量:</td> <td nowrap><input SIZE=1 MAXLENGTH=3 NAME="value"></td> 今日完成数量:</td> <td nowrap><input SIZE=1 MAXLENGTH=3 NAME="value"></td> </tr><hr> <tr> <td nowrap><b>*方 阳*</b><br> 完成总量:</td> <td nowrap><input SIZE=1 MAXLENGTH=3 NAME="value"></td> 今日完成数量:</td> <td nowrap><input SIZE=1 MAXLENGTH=3 NAME="value"></td> </tr><hr> <tr> <td nowrap><b>*鲁 鹏*</b><br> 完成总量:</td> <td nowrap><input SIZE=1 MAXLENGTH=3 NAME="value"></td> 今日完成数量:</td> <td nowrap><input SIZE=1 MAXLENGTH=3 NAME="value"></td> </tr><hr>
<input type="submit" value="提交"> <input type="reset" value="重置"> </form> </html>
|