1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73
|
function get_image($id_site)
{
$nb_zones = 0 ;
require('../scripts/connexion.php');
$connexion = mysql_connect($hostname, $username, $password) or die("Connexion impossible au serveur $hostname par $username");
mysql_select_db($database, $connexion);
// On recupere le synoptique associé au site
$sql = "SELECT * FROM site WHERE id_site = '".$_SESSION['id_site']."'";
$req = mysql_query($sql) or die(mysql_error());
$data = mysql_fetch_array($req);
$synoptique = $data['image_path'];
if(strcmp($data['image_type'],'png')==0)
{
$image = imagecreatefrompng($synoptique); // Conversion de la chaîne binaire en ressource image GD.
}
elseif(strcmp($data['image_type'],'jpg')==0)
{
$image = imagecreatefromjpeg($synoptique); // Conversion de la chaîne binaire en ressource image GD.
}
elseif(strcmp($data['image_type'],'gif')==0)
{
$image = imagecreatefromgif($synoptique); // Conversion de la chaîne binaire en ressource image GD.
}
// On définit la couleur du trait
$color = "BEDFFE";
$rouge = hexdec(substr($color,0,2)); //conversion du canal rouge
$vert = hexdec(substr($color,2,4)); //conversion du canal vert
$bleu = hexdec(substr($color,4,6)); //conversion du canal bleu
$turquoise = imagecolorallocate($image, $rouge, $vert, $bleu);
$sql = "SELECT * FROM zone WHERE id_site = '".$_SESSION['id_site']."' AND zone_is_active='1'";
$req = mysql_query($sql) or die(mysql_error());
while($zone = mysql_fetch_array($req))
{
if($zone['zone_is_active']==1)
{
$points = $zone['coord'];
$points_tab = explode(";", $points);
$size_tab = count($points_tab);
for($inc=0 ; $inc < $size_tab ; $inc = ($inc + 4) )
{
$x1 = $points_tab[$inc];
$y1 = $points_tab[$inc+1];
$x2 = $points_tab[$inc+2];
$y2 = $points_tab[$inc+3];
imagelinethick($image, $x1, $y1, $x2, $y2, $turquoise, 2);
}
$file = "../media/synoptique/synoptique.png" ;
imagepng($image, $file);
$nb_zones++ ;
}
}
if($nb_zones==0)
{
return $data['image_path'] ;
}
else
{
return $file ;
}
} |
Partager