Redimenssionnement d'image [php]
Tinou
-
Templier Nocturne Messages postés 7734 Date d'inscription Statut Membre Dernière intervention -
Templier Nocturne Messages postés 7734 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
sur mon site via un formulaire ou l'utilisateur peut choisir une image, j'aimerais que cette image soit redimenssioner en tout petit et une fois en un peu plus grande. J'y arrive pas voici mon code qui redimenssione qu'une image et pas la seconde.
sur mon site via un formulaire ou l'utilisateur peut choisir une image, j'aimerais que cette image soit redimenssioner en tout petit et une fois en un peu plus grande. J'y arrive pas voici mon code qui redimenssione qu'une image et pas la seconde.
if( isset($_POST['upload']) ) // si formulaire soumis { $target ='images/'; // Repertoire cible $extension = 'jpg'; // Extension du fichier sans le . $max_size = 10000000; // Taille max en octets du fichier $width_max =3000; // Largeur max de l'image en pixels $height_max = 3000; // Hauteur max de l'image en pixels //--------------------------------------------- // DEFINITION DES VARIABLES LIEES AU FICHIER //--------------------------------------------- $nom_file = $_FILES['fichier']['name']; $nom_file2 = $_FILES['fichier']['name']; $nom_file2 = "z".$nom_file2; $taille = $_FILES['fichier']['size']; $tmp = $_FILES['fichier']['tmp_name']; //---------------------- // SCRIPT D'UPLOAD //---------------------- if(!empty($_POST['posted'])) { // On vérifie si le champ est rempli if(!empty($_FILES['fichier']['name'])) { // On vérifie l'extension du fichier if(substr($nom_file, -3) == $extension) { // On récupère les dimensions du fichier $infos_img = getimagesize($_FILES['fichier']['tmp_name']); // On vérifie les dimensions et taille de l'image if(($infos_img[0] <= $width_max) && ($infos_img[1] <= $height_max) && ($_FILES ['fichier']['size'] <= $max_size)) { $filename = $target.$nom_file; if (file_exists($filename)) { $nom_file2="yz".$nom_file2; $nom_file="yz".$nom_file; } for($i=1;$i<=2 ;$i++) { if ($i==1) { if(move_uploaded_file($_FILES['fichier']['tmp_name'],$target.$nom_file2)) { // Sauvegarde des tailles originales, // $pictureSize_w et $pictureSize_h vont servir au calcul de la bouvelle taille, // c est sur ces variable que l'on fera l'otération de réduction $pictureSize_w = $infos_img[0] ; $pictureSize_h = $infos_img[1] ; // On sauvegarde tout de même la taille d'origine, cela va nous être // utile lors de l'appel à la fonction imagecopyresampled $orig_pictureSize_w = $infos_img[0] ; $orig_pictureSize_h = $infos_img[1] ; $pictureSize_w = 150; $pictureSize_h = 200; // On créé l'image source en mémoire $sourceImg = imagecreatefromjpeg($target.$nom_file2); // et l'image de destination avec les tailles de la miniature $destImg = imagecreatetruecolor($pictureSize_w, $pictureSize_h); // On appel la fonction qui va permettrre de redimentionner notre image imagecopyresampled( $destImg, $sourceImg, 0,0,0,0, $pictureSize_w, $pictureSize_h, $orig_pictureSize_w, $orig_pictureSize_h ); // et on la sauve à un endroit donné en paramètre imagejpeg ($destImg,$target.$nom_file2); } } else { if(move_uploaded_file($_FILES['fichier']['tmp_name'],$target.$nom_file)) { // Sauvegarde des tailles originales, // $pictureSize_w et $pictureSize_h vont servir au calcul de la bouvelle taille, // c est sur ces variable que l'on fera l'otération de réduction $pictureSize_w = $infos_img[0] ; $pictureSize_h = $infos_img[1] ; // On sauvegarde tout de même la taille d'origine, cela va nous être // utile lors de l'appel à la fonction imagecopyresampled $orig_pictureSize_w = $infos_img[0] ; $orig_pictureSize_h = $infos_img[1] ; $pictureSize_w = 450; $pictureSize_h = 600; // On créé l'image source en mémoire $sourceImg = imagecreatefromjpeg($target.$nom_file); // et l'image de destination avec les tailles de la miniature $destImg = imagecreatetruecolor($pictureSize_w, $pictureSize_h); // On appel la fonction qui va permettrre de redimentionner notre image imagecopyresampled( $destImg, $sourceImg, 0,0,0,0, $pictureSize_w, $pictureSize_h, $orig_pictureSize_w, $orig_pictureSize_h ); // et on la sauve à un endroit donné en paramètre imagejpeg ($destImg,$target.$nom_file); } } }
A voir également:
- Redimenssionnement d'image [php]
- Image iso - Guide
- Acronis true image - Télécharger - Sauvegarde
- Reduire taille image - Guide
- Légender une image - Guide
- Image gratuite - Guide
3 réponses
pourquoi tu fais une boucle ? il n'est pas plus simple de faire les deux à la suite ? ton erreur vient de là je pense ;)
c'est con à dire, mais il est possible que php considère que 1 != 1 :P
c'est con à dire, mais il est possible que php considère que 1 != 1 :P
ça marche ça ?
<?php if( isset($_POST['upload']) ) // si formulaire soumis { $target ='images/'; // Repertoire cible $extension = 'jpg'; // Extension du fichier sans le . $max_size = 10000000; // Taille max en octets du fichier $width_max =3000; // Largeur max de l'image en pixels $height_max = 3000; // Hauteur max de l'image en pixels //--------------------------------------------- // DEFINITION DES VARIABLES LIEES AU FICHIER //--------------------------------------------- $nom_file = $_FILES['fichier']['name']; $nom_file2 = $_FILES['fichier']['name']; $nom_file2 = "z".$nom_file2; $taille = $_FILES['fichier']['size']; $tmp = $_FILES['fichier']['tmp_name']; //---------------------- // SCRIPT D'UPLOAD //---------------------- if(!empty($_POST['posted'])) { // On vérifie si le champ est rempli if(!empty($_FILES['fichier']['name'])) { // On vérifie l'extension du fichier if(substr($nom_file, -3) == $extension) { // On récupère les dimensions du fichier $infos_img = getimagesize($_FILES['fichier']['tmp_name']); // On vérifie les dimensions et taille de l'image if(($infos_img[0] <= $width_max) && ($infos_img[1] <= $height_max) && ($_FILES ['fichier']['size'] <= $max_size)) { $filename = $target.$nom_file; if (file_exists($filename)) { $nom_file2="yz".$nom_file2; $nom_file="yz".$nom_file; } for($i=1;$i<=2 ;$i++) { if ($i==1) { if(move_uploaded_file($_FILES['fichier']['tmp_name'],$target.$nom_file2)) { // Sauvegarde des tailles originales, // $pictureSize_w et $pictureSize_h vont servir au calcul de la bouvelle taille, // c est sur ces variable que l'on fera l'otération de réduction $pictureSize_w = $infos_img[0] ; $pictureSize_h = $infos_img[1] ; // On sauvegarde tout de même la taille d'origine, cela va nous être // utile lors de l'appel à la fonction imagecopyresampled $orig_pictureSize_w = $infos_img[0] ; $orig_pictureSize_h = $infos_img[1] ; $pictureSize_w = 150; $pictureSize_h = 200; // On créé l'image source en mémoire $sourceImg = imagecreatefromjpeg($target.$nom_file2); // et l'image de destination avec les tailles de la miniature $destImg = imagecreatetruecolor($pictureSize_w, $pictureSize_h); // On appel la fonction qui va permettrre de redimentionner notre image imagecopyresampled( $destImg, $sourceImg, 0,0,0,0, $pictureSize_w, $pictureSize_h, $orig_pictureSize_w, $orig_pictureSize_h ); // et on la sauve à un endroit donné en paramètre imagejpeg ($destImg,$target.$nom_file2); } } } } } } } }?>