='{$startTime}' and csta_datetime <='{$endTime}'"; $res=mysql_query($sql,$link); if(!($res)) { $num=0; } else { $num=mysqli_num_rows($res); } $data[$j][count]=$num; for($i=0;$i<$num;$i++) { $row=mysqli_fetch_array($res); $data[$j][time]=$row[1]; $start=strtotime($startTime); $rowt=strtotime($row[1]); $dif=$rowt-$start; $instance=floor($dif/(60*60)); $data[$j][$instance] += $row[0]+0; } } } return $data; } $data1=Getdata($filelist,$startTime,$endTime); //table $table_title="Server Erlang Statistic  Date:"; if($slot>1) { $table_title.=date("Y-m-d",mktime(0,0,0,date("m"),date("d")-$sel_date_from,date("Y")))." to ".date("Y-m-d",mktime(0,0,0,date("m"),date("d")-$sel_date_to,date("Y"))); } else { $table_title.=date("Y-m-d",mktime(0,0,0,date("m"),date("d")-$sel_date_from,date("Y"))); } echo "
$table_title
"; echo "
"; echo ""; for($j=1;$j<13;$j++) { if(strcmp($filelist[$j][name]," ")) { //echo "
"; echo ""; for($i=0,$k=($slot-1);$i <=($slot-1);$i++,$k--) { $now=date("Y-m-d",mktime(0,0,0,date("m"),date("d")-$i,date("Y"))); echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; } //echo "
{$filelist[$j][name]} Erlang(hour)
{$now}000102030405060708091011
{$data1[$j][0+(24*$k)]}{$data1[$j][1+(24*$k)]}{$data1[$j][2+(24*$k)]}{$data1[$j][3+(24*$k)]}{$data1[$j][4+(24*$k)]}{$data1[$j][5+(24*$k)]}{$data1[$j][6+(24*$k)]}{$data1[$j][7+(24*$k)]}{$data1[$j][8+(24*$k)]}{$data1[$j][9+(24*$k)]}{$data1[$j][10+(24*$k)]}{$data1[$j][11+(24*$k)]}
121314151617181920212223
{$data1[$j][12+(24*$k)]}{$data1[$j][13+(24*$k)]}{$data1[$j][14+(24*$k)]}{$data1[$j][15+(24*$k)]}{$data1[$j][16+(24*$k)]}{$data1[$j][17+(24*$k)]}{$data1[$j][18+(24*$k)]}{$data1[$j][19+(24*$k)]}{$data1[$j][20+(24*$k)]}{$data1[$j][21+(24*$k)]}{$data1[$j][22+(24*$k)]}{$data1[$j][23+(24*$k)]}
"; } } echo ""; //时间间隔 $day=$sel_date_from-$sel_date_to+1; $day_num=30; //画图 // //=======================================================================================| //=========== Draw the Graphics =============| //=======================================================================================| $sizex=800; if($csta_type==0) $sizey=430; else $sizey=380; $bgcolor=F8F8F8; $fgcolor=000000; $im = ImageCreate ($sizex, $sizey); $background_color = ImageColorAllocate ($im, hexdec(substr($bgcolor, 0, 2)), hexdec(substr($bgcolor, 2, 2)), hexdec(substr($bgcolor, 4, 2))); $text_color = ImageColorAllocate ($im, hexdec(substr($fgcolor, 0, 2)), hexdec(substr($fgcolor, 2, 2)), hexdec(substr($fgcolor, 4, 2))); $black_color=ImageColorAllocate($im,0,0,0); $white_color=ImageColorAllocate($im,255,255,255); //===background==== ImageFilledRectangle($im,0,0,$sizex,$sizey,ImageColorAllocate ($im, 198, 198, 198)); ImageFilledRectangle($im,2,2,$sizex,$sizey,ImageColorAllocate ($im, 130, 130, 130)); $pointArr=array(0,$sizey-1,3,$sizey-4,4,$sizey-1); Imagefilledpolygon($im, $pointArr, 3, ImageColorAllocate ($im, 130, 130, 130)); $pointArr=array($sizex-1,0,$sizex-4,3,$sizex,4); Imagefilledpolygon($im, $pointArr, 3, ImageColorAllocate ($im, 130, 130, 130)); ImageFilledRectangle($im,2,2,$sizex-3,$sizey-3,$background_color); //===border===== $xBgn=60; $yBgn=25; $xEnd=780; $yEnd=275; $unitXPix=30; ImageLine($im, $xBgn, $yBgn, $xBgn, $yEnd, $text_color); ImageLine($im, $xBgn, $yBgn, $xEnd, $yBgn, $text_color); ImageLine($im, $xBgn, $yEnd, $xEnd, $yEnd, $text_color); ImageLine($im, $xEnd, $yBgn, $xEnd, $yEnd, $text_color); //===draw the label block==== $color[1]=ImageColorAllocate($im,0x99,0x22,0x33); $color[2]=ImageColorAllocate($im,0x99,0x00,0xcc); $color[3]=ImageColorAllocate($im,0x99,0x99,0x00); $color[4]=ImageColorAllocate($im,0x99,0x99,0x99); $color[5]=ImageColorAllocate($im,0x99,0xff,0x33); $color[6]=ImageColorAllocate($im,0xff,0x99,0x66); $color[7]=ImageColorAllocate($im,0xff,0x00,0x00); $color[8]=ImageColorAllocate($im,0xff,0xff,0x00); $color[9]=ImageColorAllocate($im,0x33,0x3,0x33); $color[10]=ImageColorAllocate($im,0x00,0xcc,0xff); $color[11]=ImageColorAllocate($im,0x00,0x22,0xcc); $color[11]=ImageColorAllocate($im,0xEE,0x00,0xff); ///////////////////////表示 X,Y轴坐标 for($k=1;$k < 13;$k++) { if(strcmp($filelist[$k][name]," ")) { for($i=0;$i<($slot)*24;$i++) { $out_put[$k][$i][x]=(60+$i*(30/$slot)); $out_put[$k][$i][y]=(275-$data1[$k][$i]*25); } } } for($i=$sel_date_to,$k=0;$i<($sel_date_from+1);$i++,$k++) { $datestr[$k]=date("m-d",mktime(0,0,0,date("m"),date("d")-$i,date("Y"))); } //////纵轴 for($i=0;$i<23;$i++) { $style = array($black_color, $black_color, $black_color, $black_color, $red, $w, $w, $w, $w, $w); imagesetstyle($im, $style); imageline($im, ($xEnd - $i*($day_num)-$day_num), $yBgn, ($xEnd - $i*($day_num)-$day_num), $yEnd, IMG_COLOR_STYLED); //$xstr=$datestr[$i]; //Imagestringup($im, 2, ($xEnd - $i*($day_num)-$day_num) - 4, $yEnd+60, $xstr, $style); //if($i==29) //Imagestringup($im, 2, $xBgn + $i*24 - 4, $yEnd+60, $datestr[29], $style); } ////纵轴标记 for($i=0;$i<$slot*24;$i++) { if(($i%$slot) == 0) { $hour_day=$i/24; $hour_time=$i/$slot; $datestr[$i]=date("m-d",mktime(0,0,0,date("m"),date("d")-($slot-$hour_day-1),date("Y"))); $hour_hour=$i%24; if($hour_hour<10) { $timearray[$i]="0".$hour_hour."h"; } else { $timearray[$i]=$hour_hour."h"; } $xstr=$datestr[$i]." ".$timearray[$i]; Imagestringup($im, 2, $xBgn + $hour_time*30 - 4, $yEnd+60, $xstr, $text_color); } } //横轴 for($i=0,$k=10;$i<10;$i++,$k--) { $displayMaxData=$k; imagesetstyle($im, $style); //imageline($im,$xBgn + $i*30, $yBgn, $xBgn + $i*30, $yEnd, IMG_COLOR_STYLED); if($i!=0) imageline($im,$xBgn , $yBgn+$i*25, $xEnd, $yBgn+$i*25, IMG_COLOR_STYLED); Imagestring($im, 2, $xBgn - 50, $yBgn + $i*25 - 5, "$displayMaxData", $black_color); } Imagestring($im, 2, $xBgn - 50, $yBgn + $i*25 - 5, "0", $black_color); /////////////////////////////////////////////////////////////////////// //画线 for($k=1;$k < 13;$k++) { if(strcmp($filelist[$k][name]," ")) { for($i=0;$i<$slot*24;$i++) { if($i > 0) { imageline($im,$out_put[$k][$i-1][x],$out_put[$k][$i-1][y],$out_put[$k][$i][x],$out_put[$k][$i][y],$color[$k]); } } } } //====graphics title===== //$graphics_title="Service erlang statistic graphic"; //Imagestring($im, 2, 300,5, $graphics_title, $text_color); //===draw the label block==== $color[1]=ImageColorAllocate($im,0x99,0x22,0x33); $color[2]=ImageColorAllocate($im,0x99,0x00,0xcc); $color[3]=ImageColorAllocate($im,0x99,0x99,0x00); $color[4]=ImageColorAllocate($im,0x99,0x99,0x99); $color[5]=ImageColorAllocate($im,0x99,0xff,0x33); $color[6]=ImageColorAllocate($im,0xff,0x99,0x66); $color[7]=ImageColorAllocate($im,0xff,0x00,0x00); $color[8]=ImageColorAllocate($im,0xff,0xff,0x00); $color[9]=ImageColorAllocate($im,0x33,0x3,0x33); $color[10]=ImageColorAllocate($im,0x00,0xcc,0xff); $color[11]=ImageColorAllocate($im,0x00,0x22,0xcc); $color[12]=ImageColorAllocate($im,0xEE,0x00,0xff); imagefilledrectangle($im,90,350,100,360,$color[1]); imagestring($im,2,105,350,"SUB SUB",$text_color); imagefilledrectangle($im,260,350,270,360,$color[2]); imagestring($im,2,275,350,"SUB TRK",$text_color); imagefilledrectangle($im,430,350,440,360,$color[3]); imagestring($im,2,445,350,"TRK SUB",$text_color); imagefilledrectangle($im,600,350,610,360,$color[5]); imagestring($im,2,615,350,"TRK TRK",$text_color); imagefilledrectangle($im,90,370,100,380,$color[6]); imagestring($im,2,105,370,"INTRA",$text_color); imagefilledrectangle($im,260,370,270,380,$color[7]); imagestring($im,2,275,370,"SUB IP",$text_color); imagefilledrectangle($im,430,370,440,380,$color[4]); imagestring($im,2,445,370,"TRK IP",$text_color); imagefilledrectangle($im,600,370,610,380,$color[9]); imagestring($im,2,615,370,"MO",$text_color); imagefilledrectangle($im,90,390,100,400,$color[10]); imagestring($im,2,105,390,"MT",$text_color); imagefilledrectangle($im,260,390,270,400,$color[11]); imagestring($im,2,275,390,"IN TRK",$text_color); imagefilledrectangle($im,430,390,440,400,$color[12]); imagestring($im,2,445,390,"OUT TRK",$text_color); imagefilledrectangle($im,600,390,610,400,$color[8]); imagestring($im,2,615,390,"IP",$text_color); ////////////////////////////////////////////////////// //////////////////////////////////////////////////////// //-----输出图形文件,请勿修改 //delete *.png $handle=opendir('.'); while($file=readdir($handle)) { $retval=""; $pt=strrpos($file,"."); if($pt) $retval=substr($file,$pt+1,strlen($file)-$pt); if($retval=='png') unlink($file); } $tt=time()-4000; $filename=$tt.".png"; if(1) { ImagePng ($im,"$filename"); ImageDestroy($im); } //-----显示图片 flush(); echo ""; echo ""; adjust_content_tail(); ?>