8791 sujets

Développement web côté serveur, CMS

Bonjour,

Je sais, le sujet semble avoir déjà été posté, mais mon souci est différent;

Je sais générer une image en php puis l'afficher par
a écrit :
<img src="image.php" />


Mais là, j'ai créé une classe pour générer l'image d'un planning à partir de données diverses, et je ne sais pas comment afficher l'image produite par ma classe (je n'inclus pas un fichier).

Code appelant :

// Dessin de l'agenda pour la semaine
$planning = new dessinePlanning($semCourante);
... remplissage du planning
$planning->affichePlanning();


et dans ma classe

function affichePlanning ()
{
	header('Content-type: image/jpeg');
	imagejpeg($this->planning);
	
	// Libération de la mémoire
	imagedestroy($this->planning);
}


et si j'essaie

<img src="<? $planning->affichePlanning();?>" />


J'ai en retour le chemin de ma page, avec pour titre
a écrit :
index.php (Image JPEG)
.

Si quelqu'un peut m'aider...

Merci d'avance,

Tonio
Modifié par Tonio (11 Aug 2009 - 18:11)
Modérateur
Hello,

En fait j'ai l'impression que tu t'emmêles les pinceaux. Tu dois avoir 3 fichiers :
* la Class
* le code de l'image
* l'affichage

fichier 1

class dessinePlanning{
	//etc.
}


fichier 2

function __autoload($class){
	require_once($class.".php");
}

$class = "dessinePlanning";

$planning = new dessinePlanning($semCourante); 
//etc. 
$planning->affichePlanning();


fichier 3

<!-- code en amont -->
<img src="fichier2.php" alt="texte alt" width="800" height="600" />
<!-- etc. -->


++
Modifié par Nolem (11 Aug 2009 - 18:47)
Salut,

Nolem a écrit :
Tu dois avoir 3 fichiers
Pourquoi 3 ?

texte_en_image.php
<?php
class TexteEnImage {
	public function TexteEnImage($string) {
		header ('Content-type: image/png');
		$im = @imagecreatetruecolor(120, 20)
			  or die('Impossible de crée un flux d\'image GD');
		$text_color = imagecolorallocate($im, 233, 14, 91);
		imagestring($im, 1, 5, 5,  $string, $text_color);
		imagepng($im);
		imagedestroy($im);
	}
}

$string = isset($_GET['texte']) ? $_GET['texte'] : 'Default';
new TexteEnImage($string);
?>
unepage.php :
<img src="texte_en_image.php?texte=unephrase" alt="" />