salut à tous et à toutes :)
et bonnes fetes de fin d'année tout d'abord, pour autant que de passer du 31 au 01 puisse changer quoi que ce soit dans nos vies, cte blague ...
bon voici mon probleme :::
__________________________
sur ma page upload d'un certain type de fichiers,
j'ai une partie qui gere l'upload de quelques images, image 1 et image 2
tout ce passe bien, MAIS je souhaite EN MEME TEMPS que j'upload l'image 1,
générer une thumbnail de celle ci, donc l'image 1 ...
et bien sur la copier sur mon ftp tout comme pour sa grande soeur
donc j'envoi mon image 1 dans le dossier uploads/images
ET
donc j'envoi ma mniniature de l'image 1 dans le dossier uploads/thumbnails
MAIS ... evidemment ça bug, puisque je me plante quelque part dans mon code, lol
donc me voici par devers vous,
implorant que une ame charitable mette le doight sur mon ti bug :)
PS : j'ai imperativement besoin de generer la miniature et de la copier sur mon ftp,
tout comme l'image 1
car par apres j'utilise cette miniature pour une bannierre dynamique de mon cru,
qui ne peut en aucun cas utiliser les scripts dispos par ci par là de generation à la volée, par des liens, ....
a++ les cadors du php
Code PHP :
////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////// upload images ///////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////////////////
$maxfilesize = 512000; // 500kb
$allowed_types = array(
"image/gif" => "gif",
"image/pjpeg" => "jpg",
"image/jpeg" => "jpg",
"image/jpg" => "jpg",
"image/png" => "png"
);
for ($x=0; $x < 2; $x++) {
if (!($_FILES[image.$x]['name'] == "")) {
$y = $x + 1;
if (!array_key_exists($_FILES[image.$x]['type'], $allowed_types))
show_error_msg("Erreur","Ce type d image n est pas accepté !!! Image $y",1);
if (!preg_match('/^(.+)\.(jpg|gif|png)$/si', $_FILES[image.$x]['name']))
show_error_msg("Image Invalide", "Ce fichier n est pas une image !!!",1);
if ($_FILES[image.$x]['size'] > $maxfilesize)
show_error_msg("Erreur","La taille de l image n est pas acceptée !!! la taille de l image $y - ne doit pas dépasser 500kb",1);
$uploaddir = "".$site_config["torrent_dir"]."/images/";
$ifile = $_FILES[image.$x]['tmp_name'];
$ret = mysql_query("SHOW TABLE STATUS LIKE 'torrents'");
$row = mysql_fetch_array($ret);
$next_id = $row['Auto_increment'];
$ifilename = $next_id . $x . substr($_FILES[image.$x]['name'], strlen($_FILES[image.$x]['name'])-4, 4);
$copy = copy($ifile, $uploaddir.$ifilename);
####################################################################################
####################################################################################
$_GET["im"] = $_FILES[image.$x];
if(isset($_GET["im"])) {
//mettre ici les valeurs par défaut de limitation de taille
$defaut_largeur_max=320;
$defaut_hauteur_max=200;
$size_im=getimagesize($_GET["im"]);
if(isset($_GET["w"]) && ($_GET["w"]+0)) $largeur_max = $_GET["w"]; else $largeur_max = $defaut_largeur_max;
if(isset($_GET["h"]) && ($_GET["h"]+0)) $hauteur_max = $_GET["h"]; else $hauteur_max = $defaut_hauteur_max;
if($size_im[0]>=$size_im[1] && $size_im[0]>$largeur_max) {
$largeur=$largeur_max;
$hauteur=ceil(($largeur/$size_im[0])*$size_im[1]);
} elseif($size_im[1]>=$size_im[0] && $size_im[1]>$hauteur_max) {
$hauteur=$hauteur_max;
$largeur=ceil(($hauteur/$size_im[1])*$size_im[0]);
} else {
$largeur=$size_im[0];
$hauteur=$size_im[1];
}
////////////////////header("Content-Type: image/jpeg");
list($width, $height, $type, $attr) = getimagesize("$pic");
if($type == "1")
{
$img_in = imagecreatefromgif($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));
$t = imagegif($img_out);
}
if($type == "2")
{
$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));
$t = imagejpeg($img_out);
}
if($type == "3")
{
$img_in = imagecreatefrompng($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));
$t = imagepng($img_out);
}
$uploaddir_thumbs = "".$site_config["torrent_dir"]."/thumbnails/";
$copy = copy($t, $uploaddir_thumbs.$ifilename);
}
####################################################################################
####################################################################################
if (!$copy)
show_error_msg("Erreur","Une erreur s est produite durant l upload de l image !!! - Image $y",1);
$inames[] = $ifilename;
}
}
//end upload images