Probleme lors de creation de vignettes jpeg PHP
Posté : 24 sept. 2007, 00:50
bonjour,
je me trouve devant un probleme qui dure depuis 2 semaines :
je dois generer des vignettes (ou miniatures) pour une gallerie en flash sur le site suivant : http://solo.steuh.com/
mais les vignettes sont noires, pkoi ???
AIDEZ MOI !!! je suis desespere...
voici le code :
STEUH
je me trouve devant un probleme qui dure depuis 2 semaines :
je dois generer des vignettes (ou miniatures) pour une gallerie en flash sur le site suivant : http://solo.steuh.com/
mais les vignettes sont noires, pkoi ???
AIDEZ MOI !!! je suis desespere...
voici le code :
<ITEMS>
<?
function directoryToArray($directory, $recursive) {
$array_items = array();
if ($handle = opendir($directory)) {
while (false !== ($file = readdir($handle))) {
if ($file != "." && $file != "..") {
if (is_dir($directory. "/" . $file)) {
if($recursive) {
$array_items = array_merge($array_items, directoryToArray($directory. "/" . $file, $recursive));
}
$file = $directory . "/" . $file;
$array_items[] = preg_replace("/\/\//si", "/", $file);
} else {
$file = $directory . "/" . $file;
$array_items[] = preg_replace("/\/\//si", "/", $file);
}
}
}
closedir($handle);
}
return $array_items;
}
function generateMiniature($url,$pic){
// ?©ditez les 2 variables ci-dessous en fonction du r?©sultat souhait?© :
$largeur = "50"; // correspond ?† la largeur de l'image souhait?©e
$hauteur ="50"; // correspond ?† la hauteur de l'image souhait?©e
//On ouvre le fichier
//$fic = fopen($url,w);
// et voici la cr?©ation de la miniature...
// header("Content-Type: image/jpeg");
$img_in = imagecreatefromjpeg($pic);
$img_out = imagecreatetruecolor($largeur, $hauteur);
imagecopyresampled($img_out, $img_in, 0, 0, 0, 0, imagesx($img_out), imagesy($img_out), imagesx($img_in), imagesy($img_in));
imagejpeg($img_out,$url);
}
if ($folder=="") $folder="images";
$files = directoryToArray($folder, false);
//On refait le tableau pour ranger les miniatures
foreach ($files as $file) {
if (!preg_match("#(.*)\.minia#",$file)) {
//On verifie Si le fichier existe
if (file_exists($file.".minia"))
$Temp["Url"] = $file;
$Temp["Minia"] = $file.".minia";
if (!file_exists($Temp["Minia"])) {
generateMiniature($Temp["Minia"],$Temp["Url"]);
generateMiniature($Temp["Minia"],$Temp["Url"]);
}
$TabFile[] = $Temp;
}
}
$files = $TabFile;
foreach ($files as $file) {
echo '
<ITEM>
<TITRE>/'.$file["Minia"].'</TITRE>
<LIEN>/'.$file["Url"].'</LIEN>
</ITEM>';
}
?>
</ITEMS>
je vous remercie par avance,STEUH