View file wapus top english version/graphic_tel.php

File size: 3.69Kb
<?php
//=============================
#Version WapuS_ToP_final
#Script By: Black1992
#Email: skyangel15@inbox.lv
#Icq: 414454754
#Url: http://WaPuS.pp.Ru
//=============================
header("Cache-Control: no-cache, must-revalidate");
header("Pragma: no-cache");
include("config.php");
include("inc/config.inc.php");
include("inc/functions.inc.php");
connect_to_db();

//проверка  ввода id
if (empty($_GET['uid'])) exit;
$uid=$_GET['uid'];
// проверка существования учетной записи
$result = mysql_query("SELECT link FROM users WHERE uid=$uid");
$row=mysql_fetch_row($result);
if (empty($row)) exit;

$week_day = date("w");
$today = date("Ymd");
// параметры диаграммы
$r = 45;
$cx = 50;
$cy = 50;
$g1 = 0;
$g2 = 0;
// параметры сносок
$x_leg = 10;
$y_leg = 110;
$w_h = 5;
$step = 10;

// созданире изображения
$img = ImageCreate(100,235);
$colorWhite = imageColorAllocate($img, 255,255,255);
$colorBlack = imageColorAllocate($img, 0,0,0);
$colorGrey = imageColorAllocate($img, 180,180,180);
for ($i=0;$i<6;$i++){
	imageArc($img, $cx, $cy, 2*$r+$i, 2*$r+$i, 0, 360, imageColorAllocate($img, 180+($i*10),180+($i*10),180+($i*10)));
}
imageFill($img, $cx, $cy, $colorGrey);

$color = array(
	imageColorAllocate($img, 237,27,35),
	imageColorAllocate($img, 255,172,72),
	imageColorAllocate($img, 56,181,73),
	imageColorAllocate($img, 0,174,239),
	imageColorAllocate($img, 255,0,255),
	imageColorAllocate($img, 255,242,0),
	imageColorAllocate($img, 0,0,255),
	imageColorAllocate($img, 166,124,81),
	imageColorAllocate($img, 183,183,183),
	imageColorAllocate($img, 0,255,0),
	imageColorAllocate($img, 255,0,0),
	imageColorAllocate($img, 0,90,100)
);

$tel = array(
	"Siemens",
	"Nokia",
	"Samsung",
	"Motorola",
	"LG",
	"Sagem",
	"SonyEricsson",
	"Alcatel",
	"Sharp",
	"Pantech",
	"Panasonic",
	"Other"
);

// данные телов
$result = mysql_query("SELECT `Siemens`,`Nokia`,`Samsung`,`Motorola`,`LG`,`Sagem`,`SonyEricsson`,`Alcatel`,`Sharp`,`Pantech`,`Panasonic`,`Other` FROM `weeks` WHERE `date`=$today AND `day_week`=$week_day AND `uid`=$uid LIMIT 1");
$tel_data = mysql_fetch_row($result);
if (empty($tel_data)) exit;

$result = mysql_query("SELECT `Siemens`+`Nokia`+`Samsung`+`Motorola`+`LG`+`Sagem`+`SonyEricsson`+`Alcatel`+`Sharp`+`Pantech`+`Panasonic`+`Other` FROM `weeks` WHERE `date`=$today AND `day_week`=$week_day AND `uid`=$uid LIMIT 1");
$row = mysql_fetch_row($result);
$sum_count = $row[0];

$percent_data = array();
$grad = array();

foreach ($tel_data as $index => $value)
{
	if ($sum_count > 0)
		$percent_data[$index] = $value/$sum_count*100;
	else
		$percent_data[$index] = 0;
	$grad[$index] = $percent_data[$index]*360/100;
}

// ======================== создаём график ================
foreach ($grad as $index => $g)
{
	$g2 = $g1+$g;

	imageArc($img, $cx, $cy, 2*$r, 2*$r, $g1, $g2, $colorBlack);

	if ($g1 == 0){
		$x = $cx + $r;
		$y = $cy;
		imageLine($img,$cx,$cy,$x,$y,$colorBlack);
	}

	$x = $r*cos($g2*pi()/180)+$cx;
	$y = $r*sin($g2*pi()/180)+$cy;
	imageLine($img,$cx,$cy,$x,$y,$colorBlack);

	$x = ($r-5)*cos(($g2+$g1)/2*pi()/180)+$cx;
	$y = ($r-5)*sin(($g2+$g1)/2*pi()/180)+$cy;
	// закраска области
	if ($g > 2){
		imageFill($img, $x, $y, $color[$index]);
	}
	$g1 += $g;

	// вывод легенды
	imageFilledRectangle($img, $x_leg, $y_leg, $x_leg+$w_h, $y_leg+$w_h, $color[$index]);
	imageRectangle($img, $x_leg, $y_leg, $x_leg+$w_h, $y_leg+$w_h, $colorBlack);
	imageTTFtext($img, 6, 0, $x_leg+$w_h+5, $y_leg+$w_h, $colorBlack, "./font/font.ttf",$tel[$index]." (".(int)$percent_data[$index]."%)");
	$y_leg += $step;
}
imageRectangle($img, 0, 105, 99, $y_leg, $colorBlack);
imageFilledRectangle($img, 0, 105, 5, $y_leg, $colorGrey);
imageRectangle($img, 0, 105, 5, $y_leg, $colorBlack);

Header("Content-type: image/png");
ImagePNG($img);
ImageDestroy($img);
?>