Bonjour,


je souhaite utiliser GD afin d'établir des graphiques mais mon script (simpliste) m'affiche le symbole d'image inconnue (une croix rouge dans un carré blanc) en local et rien du tout quand je dépose le fichier sur le site distant (hébergé chez Free)...

J'avais pourtant un affichage de mon graphique lorsque j'avais tenté avec les serveurs de mon boulot...

Je vous met les codes sources :

test.php
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<HTML>
  <HEAD>
    <TITLE>Accueil</TITLE>
    <LINK href="./style/style.css" rel="stylesheet" type="text/css">
    <META http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
  </HEAD>
 
  <BODY STYLE="font-size:12px">
    <img src="./image.php"> 
  </BODY>
</HEAD>
image.php
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
<?php
header ("Content-type: image/png");
 
$taille = 500;
$image = imagecreatetruecolor($taille,$taille);
imageantialias($image, true);
 
$blanc = imagecolorallocate($image, 255,255,255);
$noir = imagecolorallocate($image, 0,0,0);
$rouge = imagecolorallocate($image, 255,0,0);
 
imagefill($image,0,0,$blanc);
 
$valeurs = array(1,5,7,2,4,3,6);
$n = count($valeurs);
$lgAxe = 250;
$lgMax = 240;
 
for($b=0;$b<$n;$b++) {
	ImageLine($image,
	          $taille/2,
	          $taille/2,
	          $taille/2-($lgAxe*cos(deg2rad((360/$n*$b)+90))),
	          $taille/2-($lgAxe*sin(deg2rad((360/$n*$b)+90))),
	          $noir);
 
	for ($i=1; $i<=4;$i++) {
	  ImageLine($image,
	            $taille/2-(($i*$lgMax/4)*cos(deg2rad((360/$n*$b)+90))))-3*cos(deg2rad((360/$n*$b)),
	            $taille/2-(($i*$lgMax/4)*sin(deg2rad((360/$n*$b)+90))))-3*sin(deg2rad((360/$n*$b)),
	            $taille/2-(($i*$lgMax/4)*cos(deg2rad((360/$n*$b)+90))))+3*cos(deg2rad((360/$n*$b)),
	            $taille/2-(($i*$lgMax/4)*sin(deg2rad((360/$n*$b)+90))))+3*sin(deg2rad((360/$n*$b)),
	            $noir);
	}
}
 
imagesetthickness($image, 1);
 
for($b=0;$b<$n;$b++) {
	$valeurs[$b] = ($lgMax*$valeurs[$b])/$n;
	$X = ($taille/2-($valeurs[$b]*cos(deg2rad((360/$n*$b)+90))));
	$Y = ($taille/2-($valeurs[$b]*sin(deg2rad((360/$n*$b)+90))));
	if($b != 0) {
		ImageLine ($image, $X, $Y, $X_ancien, $Y_ancien, $rouge);
	}
	$X_ancien = $X;
	$Y_ancien = $Y;
}
ImageLine($image,
          $taille/2-($valeurs[0]*cos(deg2rad((360/$n*$b)+90))),
          $taille/2-($valeurs[0]*sin(deg2rad((360/$n*$b)+90))),
          $X_ancien,
          $Y_ancien,
          $rouge);
 
imagepng($image);
imagedestroy($image);
?>