Posté : 21-01-2009 15:02
-: Les Modules de Tribal-Dolphin :- | | Sujet | TD Gallerie - Permettre l'upload des jpeg et png | Module | TD-Galerie | Système d'Exploitation | Windows | Votre version de PHP | | Version NPDS (voir statistiques du site) | | Type de problème | | Description du problème | Ceci n'est pas un problème, mais plutotla méthode que j'ai utiliser pour permettre d'uploader des images en png et jpeg avec TD-Gallerie
1)PRemière étape coté administration
Ouvrir admin/adm_func.php Trouver la fonction AddImgs ligne 303 et remplacer la fonction par celle-ci
function AddImgs($imgscat,$newcard1,$newdesc1,$newcard2,$newdesc2,$newcard3,$newdesc3,$n ewcard4,$newdesc4,$newcard5,$newdesc5) { global $language, $MaxSizeImg, $MaxSizeThumb, $ModPath, $ModStart, $NPDS_Prefix; !include!_once("modules/upload/lang/upload.lang-$language.php"); !include!_once("modules/upload/clsUpload.php");
$year = date("Y"); $month = date("m"); $day = date("d"); $hour = date("H"); $min = date("i"); $sec = date("s"); $i=1; while($i <= 5) { $img = "newcard$i"; $tit = "newdesc$i"; if (!empty($$img)) { $newimg = stripslashes(removeHack($$img)); if (!empty($$tit)) { $newtit = addslashes(removeHack($$tit)); } else { $newtit = ""; } $upload = new Upload(); $upload->maxupload_size=200000*100; $origin_filename = trim($upload->getFileName("newcard".$i)); $filename_ext = strtolower(substr(strrchr($origin_filename, "."),1));
if ( ($filename_ext=="jpg") or ($filename_ext=="gif") or ($filename_ext=="jpeg") or ($filename_ext=="png") ) { $newfilename = $year.$month.$day.$hour.$min.$sec."-".$i.".".$filename_ext; if ($upload->saveAs($newfilename,"modules/$ModPath/imgs/", "newcard".$i,true)) { if ((function_exists('gd_info')) or extension_loaded('gd')) { @CreateThumb($newfilename, "modules/$ModPath/imgs/", "modules/$ModPath/imgs/", $MaxSizeImg, $filename_ext); @CreateThumb($newfilename, "modules/$ModPath/imgs/", "modules/$ModPath/mini/", $MaxSizeThumb, $filename_ext); }
if (sql_query("INSERT INTO ".$NPDS_Prefix."tdgal_img VALUES ('','$imgscat','$newfilename','$newtit','','0','0')")) { echo "".adm_gal_trans("Image ajoutée avec succès")." "; } else { echo "".adm_gal_trans("Impossible d'ajouter l'image en BDD")." "; @unlink ("modules/$ModPath/imgs/$newfilename"); @unlink ("modules/$ModPath/mini/$newfilename"); } } else { echo "".$upload->errors." "; } } else { if ($filename_ext!="") echo "".adm_gal_trans("Ce fichier n'est pas un fichier jpg,jpeg,png ou gif")." "; } } $i++; } }
Ensuite trouvez la fonction CreateThumb ligne 1224 et rempalcer là par celle-ci
function CreateThumb($Image, $Source, $Destination, $Max, $ext) { if ($ext=="gif") { if (function_exists("imagecreatefromgif")) $src=@imagecreatefromgif($Source.$Image); } if ($ext=="png") { if (function_exists("imagecreatefrompng")) $src=@imagecreatefrompng($Source.$Image); } if ($ext=="jpg" || $ext="jpeg") { $src=@imagecreatefromjpeg($Source.$Image); } if ($src) { $size = getimagesize($Source.$Image); $h_i = $size[1]; //hauteur $w_i = $size[0]; //largeur
if (($h_i > $Max) || ($w_i > $Max)) { if ($h_i > $w_i) { $convert = $Max/$h_i; $h_i = $Max; $w_i = ceil($w_i*$convert); } else { $convert = $Max/$w_i; $w_i = $Max; $h_i = ceil($h_i*$convert); } }
if (function_exists("imagecreatetruecolor")) { $im = @imagecreatetruecolor($w_i, $h_i); } else { $im = @imagecreate($w_i, $h_i); } @imagecopyresized($im, $src, 0, 0, 0, 0, $w_i, $h_i, $size[0], $size[1]); @imageinterlace ($im,1); if ($ext=="gif") { @imagegif($im, $Destination.$Image); } if ($ext=="png") { @imagepng($im, $Destination.$Image); } if ($ext=="jpg" || $ext="jpeg") { @imagejpeg($im, $Destination.$Image, 100); } @chmod($Dest.$Image,0766); } }
Ensuite il faut en faire de même dans le fichier gal_func
Remplacer AddImgs ligne 1040 par
function AddImgs($imgscat,$newcard1,$newdesc1,$newcard2,$newdesc2,$newcard3,$newdesc3,$n ewcard4,$newdesc4,$newcard5,$newdesc5,$user_connecte) { global $language, $MaxSizeImg, $MaxSizeThumb, $ModPath, $ModStart, $NPDS_Prefix, $ThisFile, $adminmail, $nuke_url, $notif_admin; !include!_once("modules/upload/lang/upload.lang-$language.php"); !include!_once("modules/upload/clsUpload.php");
$newdesc1=$newdesc1.gal_trans(" proposé par ").$user_connecte; $newdesc2=$newdesc2.gal_trans(" proposé par ").$user_connecte; $newdesc3=$newdesc3.gal_trans(" proposé par ").$user_connecte; $newdesc4=$newdesc4.gal_trans(" proposé par ").$user_connecte; $newdesc5=$newdesc5.gal_trans(" proposé par ").$user_connecte; $year = date("Y"); $month = date("m"); $day = date("d"); $hour = date("H"); $min = date("i"); $sec = date("s"); echo "
"; $soumission=false; $i=1; while($i <= 5) { $img = "newcard$i"; $tit = "newdesc$i"; if (!empty($$img)) { $newimg = stripslashes(removeHack($$img)); if (!empty($$tit)) { $newtit = addslashes(removeHack($$tit)); } else { $newtit = ""; } $upload = new Upload(); $upload->maxupload_size=200000*100; $origin_filename = trim($upload->getFileName("newcard".$i)); $filename_ext = strtolower(substr(strrchr($origin_filename, "."),1)); if ( ($filename_ext=="jpg") or ($filename_ext=="gif") or ($filename_ext=="jpeg") or ($filename_ext=="png") ) { $newfilename = $year.$month.$day.$hour.$min.$sec."-".$i.".".$filename_ext; if ($upload->saveAs($newfilename,"modules/$ModPath/imgs/", "newcard".$i,true)) { if ((function_exists('gd_info')) or extension_loaded('gd')) { @CreateThumb($newfilename, "modules/$ModPath/imgs/", "modules/$ModPath/imgs/", $MaxSizeImg, $filename_ext); @CreateThumb($newfilename, "modules/$ModPath/imgs/", "modules/$ModPath/mini/", $MaxSizeThumb, $filename_ext); } if (sql_query("INSERT INTO ".$NPDS_Prefix."tdgal_img VALUES ('','$imgscat','$newfilename','$newtit','','0','1')")) { echo "- ".gal_trans("Photo envoyée avec succés, elle sera traitée par le webmaster")." : $origin_filename
"; $soumission=true; } else { echo "- ".gal_trans("Impossible d'ajouter l'image en BDD")." : $origin_filename
"; @unlink ("modules/$ModPath/imgs/$newfilename"); @unlink ("modules/$ModPath/mini/$newfilename"); } } else { echo "- ".$upload->errors."
"; } } else { if ($filename_ext!="") echo "- ".gal_trans("Ce fichier n'est pas un fichier jpg,jpeg,png ou gif")." : $origin_filename
"; } } $i++; } echo " "; if ($notif_admin and $soumission) { $subject=gal_trans("Nouvelle soumission de Photos"); $message=gal_trans("Des photos viennent d'être proposées dans la galerie photo du site ").$nuke_url.gal_trans(" par ").$user_connecte; send_email($adminmail, $subject, $message, "", true, "text"); } }
Et CreateThumb ligne 1108 par
function CreateThumb($Image, $Source, $Destination, $Max, $ext) { if ($ext=="gif") { if (function_exists("imagecreatefromgif")) $src=@imagecreatefromgif($Source.$Image); } if ($ext=="png") { if (function_exists("imagecreatefrompng")) $src=@imagecreatefrompng($Source.$Image); } if ($ext=="jpg" || $ext="jpeg") { $src=@imagecreatefromjpeg($Source.$Image); } if ($src) { $size = getimagesize($Source.$Image); $h_i = $size[1]; //hauteur $w_i = $size[0]; //largeur
if (($h_i > $Max) || ($w_i > $Max)) { if ($h_i > $w_i) { $convert = $Max/$h_i; $h_i = $Max; $w_i = ceil($w_i*$convert); } else { $convert = $Max/$w_i; $w_i = $Max; $h_i = ceil($h_i*$convert); } }
if (function_exists("imagecreatetruecolor")) { $im = @imagecreatetruecolor($w_i, $h_i); } else { $im = @imagecreate($w_i, $h_i); } @imagecopyresized($im, $src, 0, 0, 0, 0, $w_i, $h_i, $size[0], $size[1]); @imageinterlace ($im,1); if ($ext=="gif") { @imagegif($im, $Destination.$Image); } if ($ext=="png") { @imagepng($im, $Destination.$Image); } if ($ext=="jpg" || $ext="jpeg") { @imagejpeg($im, $Destination.$Image, 100); } @chmod($Dest.$Image,0766); } }
Et voila ;) | notification par Email | | ..::.. |
|
|