joyeuxlutin | Salut les gens, j'ai besoin d'aide
Je programme en php un systeme qui va acceder à la base de données puis creer un tableau d'images de la forme
XXX
XXX
XXX
et que lit dans la base de donnée pour chaque case le type de terrain (plaine montagne foret toundra ou vide .jpeg) ensuite il superpose des images png sur les images
Code :
- <?php
- session_start();
- $id = $_SESSION['id'];
- $db = mysql_connect('sql.free.fr', 'xxxxxxxxx', 'xxxxxxxx') or die('Erreur de connexion '.mysql_error());
- mysql_select_db('generia',$db) or die('Erreur de selection '.mysql_error());
- $sql = "SELECT MAX(positionY) FROM carte ";
- $positionmax = mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
- echo '<TABLE border="0" cellspacing="0">';
- for ($i=1; $i<=$positionmax;$i++) // création du tableau(colonnes)
- { echo '<TR>';
- for($j=1;$j<=$positionmax;$j++) //création du tableau (lignes)
- {
- $sql = "SELECT type,appartenance,camp FROM carte WHERE positionY=$i AND positionX=$j";
- $req = mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
- $data = mysql_fetch_assoc($req);
- //on va chercher les info dans la bdd
- $terrain="$data[type].jpeg";
- $superpose=0;
- if ($data[appartenance] != NULL && $terrain==vide.jpg)
- {$png='chateau.png';
- $superpose=1;
- }
- if($data[camp] == 1)
- {$png='camp.png';
- $superpose=1;}
- if(superpose == 1)
- {
- //superposer images/texte
- $watermark = imagecreatefrompng("images/$png" );
- $watermark_width = imagesx($watermark);
- $watermark_height = imagesy($watermark);
- $image = imagecreatetruecolor($watermark_width, $watermark_height);
- $image = imagecreatefromjpeg("images/$terrain" );
- $size = getimagesize("images/$terrain" );
- $dest_x = $size[0] - $watermark_width - 5;
- $dest_y = $size[1] - $watermark_height - 5;
- imagecopymerge($image, $watermark, $dest_x, $dest_y, 0, 0, $watermark_width, $watermark_height, 100);
- }
- else
- {
- $image = imagecreatefromjpeg("images/$terrain" ); }
- $police="1";
- $coordonnee_x=5;
- $coordonnee_y=5;
- $texte=$data[appartenance];
- $couleur =ImageColorAllocate($image,0,0,0);
- imagestring($image,$police,$coordonnee_x,$coordonnee_y,$texte,$couleur);
- echo '<TD>';
- imagejpeg($image);
- echo '</TD>';
- imagedestroy($image);
- }
- echo '</TR>';
- }
- echo "</TABLE>\n";
- ?>
|
lorsque j'accede à la page j'ai :
Citation :
CREATOR: gd-jpeg v1.0 (using IJG JPEG v62), default quality ÿÛ et tout un tas de truc incompréhensibles comme 22222222222222222222222222222222222222!...
|
donc je n'ai pas d'erreur de script (j'en avais 42 au début, mdr)
je pense que mon erreur vien du imagejpeg($image); je sais pas si on fait comme ça pour lui faire afficher une image Message édité par joyeuxlutin le 01-10-2005 à 14:07:24
|