Auteur Sujet: Script De Création D'image.  (Lu 685 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne labawsam

  • Habitué
  • **
  • Messages: 150
    • http://www.37fr.com
Script De Création D'image.
« le: 26 Août 2004 à 10:53:11 »
:)

bonjour à tous,

Voici un script php que j'ai fait pour l'upload d'image avec une compression.
Comme je débute en php (et que je débuterai toujours...), je voulais savoir si il y avait un moyen d'optimiser ou de simplifier encore ce code.

Ce script a juste le mérite de marcher...

note : il a pas mal de controle echo (c plus simple pour moi même si ça plombe un peu le code) ; la variable $fichier est l'image renvoyé par le formulaire d'une page précédente.

merci pour vos réponses.

<?php
$dossierimages ="images/";
$date=date("ymdhis");

echo "<br>$date<br><br>";
echo "<u>FICHIER TEMPORAIRE</u> :<br>$fichier<br><br>";


$largeurimage = "300"; //largeur image copiée
$compression = "70"; //taux de compression

// vérification du fichier
list($largeur, $hauteur, $imgType, $imgHtml) = getimagesize($fichier);

 if($imgType != 2) {
  die('Verifiez le format de l\'image, seul le veritable jpg est supporte !');
 }

// Compression + redimenssionage du fichier selon le rapport de la variable $largeur
if($largeur >= $largeurimage) {
  $nouveaunom = imagecreatefromjpeg($fichier);
  $hauteur2 = ($hauteur * $largeurimage) / $largeur;
  $largeur2 = $largeurimage;
  $img3 = imagecreatetruecolor($largeur2, $hauteur2);
  imagecopyresized($img3, $nouveaunom, 0, 0, 0, 0, $largeur2, $hauteur2, $largeur, $hauteur);
$nouveaunom=$date.".jpg";
echo "<u>nouveaunom</u> :<br> $nouveaunom<br><br>";

// Création d'un répertoire "images" si celui ci n'existe pas
if (!is_dir("$dossierimages")) {
echo "<br>- Création d'un dossier images : $dossierimages<br>";
mkdir ("$dossierimages", 0777);
}

//Création du fichier final
  imagejpeg($img3,"$dossierimages/$nouveaunom", $compression);
echo "<br>L'image $nouveaunom vient d'être crée sur le serveur <br>";
 } else {
  copy($nomimage, $destinationimage.basename($nomimage));
 }
 return $nouveaunom;

?>
« Modifié: 26 Août 2004 à 10:54:16 par labawsam »