création de miniatures et header()
Bonjour,
J'essaie de faire un script PHP qui quand l'utilisateur upload une image en fait une miniature et enregistre les deux images (la miniature et l'originale uploadée par l'utilisateur).
le problème c'est que dès que le script tombe sur une fonction imagecreate il s'arrête...
J'ai posé la question à mon prof d'informatique qui m'a dit qu'il fallait modifier le header.
j'ai donc essayé mais je n'avais qu'une image où il était marqué le chemin vers ma page php....
j'ai ensuite essayé d'appeler une fonction qui fabriquerait et enregistrerait ma miniature et qui serait dans une page où le header est modifié et j'ai le droit à ce message :
Code:
Warning: Cannot modify header information - headers already sent by (output started at /home.29/b/e/a/beautifu/www/admin/a14.php:11) in /home.29/b/e/a/beautifu/www/admin/a16.php on line 3
Quelqu'un peut m'aider svp??
merci d'avance
Ps : voici le code de la fonction :
Code:
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
| <?php
function creation_miniature($type, $path) {
header("content-type:".$type);
switch ($type) {
case "image/gif":
$ImageChoisie = imagecreatefromgif($path);
break;
case "image/png":
$ImageChoisie = imagecreatefrompng($path);
break;
case "image/jpeg":
$ImageChoisie = imagecreatefromjpeg($path);
break;
} // on créé une copie de l'image
$TailleImageChoisie = getimagesize($path); //on récupère la taille de l'image
$NouvelleLargeur = 175;
$Reduction = ( ($NouvelleLargeur * 100)/$TailleImageChoisie[0] );
$NouvelleHauteur = ( ($TailleImageChoisie[1] * $Reduction)/100 ); //on calcule le ratio de proportion
$NouvelleImage = imagecreatetruecolor($NouvelleLargeur , $NouvelleHauteur); //on créé l'image
imagecopyresampled($NouvelleImage , $ImageChoisie, 0, 0, 0, 0, $NouvelleLargeur, $NouvelleHauteur, $TailleImageChoisie[0],$TailleImageChoisie[1]);
$fichier = '../miniatures/Galerie/'.$categorie;
switch ($type) {
case 'image/gif':
imagegif($NouvelleImage , $fichier.'/'.$nom.'.gif');
break;
case 'image/png':
imagepng($NouvelleImage , $fichier.'/'.$nom.'.png', 100);
break;
case 'image/jpeg':
imagejpeg($NouvelleImage , $fichier.'/'.$nom.'.jpg', 100);
break;
}
}
?> |