Partage
  • Partager sur Facebook
  • Partager sur Twitter

Redimmensionnement d'image

    15 janvier 2006 à 2:05:57


    Bonsoir à tous,
    Je viens de lire le tutorial de m@teo21 sur le redimensionnement d'image. Dabord je souhaite le féliciter du travail réalisé et aussi pour sa pédagogie.
    J'ai un petit souci:
    Sur le site que je souhaite réaliser, le visiteur peut uploader des photos, images ou gif. Je souhaite bien sûr les redimensionner pour qu'ils s'affichent en plus petit ou en plus grand car l'image doit s'adapter automatiquement à la taille d'une cellule de tableau.
    Je ne suis pas très doué en language PHP et j'ai essayé d'intégrer le tutorial dans mon script. J'ai réalisé des modifications, aucune n'a fonctionnée et pour certaines de nombreux messages d'erreurs sont apparus.
    J'utilise 3 fichiers pour le upload:
    le 1er : le formulaire d'envoi
    le 2ème : le fichier de transit qui va écrire le chemin relatif sur la BDD et copier le fichier dans le répertoire de destination
    Le 3ème : la page qui affiche
    Je précise que le script du redimensionnement est écrit dans le fichier de transit. Est -il placé au bon endroit ?

    A
    $source = imagecreatefromjpeg("couchersoleil.jpg");
    Quel nom de "fichier" dois-je écrire sachant qu'il vient d'un formulaire et que je ne connait pas le nom du fichier?
    A
    imagejpeg($destination, 'mini_couchersoleiljpg');
    Quel nom dois je écrire ??

    Merci de m'aider car je bloque sur le redimensionnement depuis quelques jours.

    Ci dessous mon script
    <?php

    // je réceptionne le formulaire et indique le répertoire de destination//
    if(isset($_FILES['photo'])){  $dest_dossier = 'imag/'
    ?>
    <?
    //paramétre//
    unset($erreur)
    $extensions_ok = array('png', 'gif', 'jpg', 'jpeg');
     $taille_max = 500000;
    // vérifications
      if( !in_array( substr(strrchr($_FILES['photo']['name'], '.'), 1), $extensions_ok ) )
      {
       $erreur = 'Veuillez sélectionner un fichier de type png, gif ou jpg !'
      }
      elseif( file_exists($_FILES['photo']['tmp_name'])
              and filesize($_FILES['photo']['tmp_name']) > $taille_max)
      {
        $erreur = 'Votre fichier doit faire moins de 500Ko !';
      }
      if(!isset($erreur))
      ?>
     
      <?
      ////////////le script de redimensionnement//////////////////////////
    $source = imagecreatefromjpeg("couchersoleil.jpg"); // La photo est la source
    $destination = imagecreatetruecolor(200, 150); // On crée la miniature vide

    // Les fonctions imagesx et imagesy renvoient la largeur et la hauteur d'une image
    $largeur_source = imagesx($source);
    $hauteur_source = imagesy($source);
    $largeur_destination = imagesx($destination);
    $hauteur_destination = imagesy($destination);

    // On crée la miniature
    imagecopyresampled($destination, $source, 0, 0, 0, 0, $largeur_destination, $hauteur_destination, $largeur_source, $hauteur_source);

    // On enregistre la miniature sous le nom "mini_couchersoleil.jpg"
    imagejpeg($destination, 'mini_couchersoleiljpg');
    ////////////Fin du script de redimensionnement////////////////////////////////
      ?>
      <?
      {
    // il est copié du temporaire vers mon répertoire//
     $dest_fichier = basename($_FILES['photo']['name']);
     // formatage nom fichier
        // enlever les accents
        $dest_fichier = strtr($dest_fichier, 'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
        // remplacer les caracteres autres que lettres, chiffres et point par _
        $dest_fichier = preg_replace('/([^.a-z0-1]+)/i', '_', $dest_fichier);
      move_uploaded_file($_FILES['photo']['tmp_name'], $dest_dossier . $dest_fichier);
      }
      }
    ?>
    <?

     require("config.php");
            $mysql_linkMYSQL_CONNECT("$localhost","$login","$mot") OR DIE("Unable to connect to database !!");
            @mysql_select_db($dbName ,$mysql_link ) or die( "Unable to select database ??");
    //je réceptionne le nom du fichier et son chemin//
    if(isset($_FILES['photo']['name']))      $FILES=$_POST['url'];

    else      $_FILES="";


    // je l'écris dans le champ url//
           
            $sql = "INSERT INTO imag(url,chemin_fichier) VALUES('". $imag ."', '". $dest_dossier . $dest_fichier ."')";
           
            mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());

            mysql_query("SELECT * FROM $url");

    // Redirection vers une page //
    header('URL=exemple.php');
    ?>
    • Partager sur Facebook
    • Partager sur Twitter
      15 janvier 2006 à 10:53:44

      Citation : undefined


      // On enregistre la miniature sous le nom "mini_couchersoleil.jpg"

      imagejpeg($destination, 'mini_couchersoleiljpg');


      ////////////Fin du script de redimensionnement////////////////////////////////



      déjà une erreur ici...
      • Partager sur Facebook
      • Partager sur Twitter

      Python c'est bon, mangez-en. 

      Redimmensionnement d'image

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown