Réduction du poids d'une photo en PHP

Résolu
Bonjour,

Je voudrais savoir, tout d'abord, s'il est possible de réduire (au niveau poids) une image lors de son upload ?
Si oui, auriez vous une idée de la fonction... (en PHP)

Mon code c'est juste un formulaire qui demande nom, prénom, adresse...etc mais aussi la photo... et quand celle ci est trop grande, l'upload plante...donc c pour cela, qu'avant de balancer la photo sur le FTP, je voudrais réduire sa taille !

Merci

::: Bonne année 2008 ::: Ma résolution pour 2008 : 1024 x 768 !!!
Configuration: Windows XP
Firefox 2.0.0.11

9 réponses

  1. RE ...

    Merci darkneurone, le code marche bien mais aprés quelques modifs ...

    Le voila ...
    ######################################################################
    <HTML>
    <BODY>
    <center><h3>Réduire le poids d'une image</h3></center>
    <form method="post" enctype="multipart/form-data" action="ajout.php?ordre=ajouter">
    <input name='fichier' type='file' size='20' style="font-size:9pt; color:#FFFFFF ; background-color: #000000">
    <input type="text" value="Miniutariser par magie du PHP">
    </form>
    </BODY>
    </HTML>

    <?php
    if($_GET['ordre']=='ajouter')
    {
    $my_img = $_FILES['fichier']['tmp_name'];
    $folder = 'photo/'.$_FILES['fichier']['name'];

    $src_im = imagecreatefromjpeg($my_img);
    $size = GetImageSize($my_img);
    $src_w = $size[0];
    $src_h = $size[1];
    $dst_w = 629;
    $dst_h = round(($dst_w / $src_w) * $src_h);
    $dst_im = imagecreatetruecolor($dst_w,$dst_h);

    imagecopyresampled($dst_im,$src_im,0,0,0,0,$dst_w,$dst_h,$src_w,$src_h);
    if (imagejpeg($dst_im,$folder))
    {
    imagedestroy($dst_im);
    imagedestroy($src_im);
    }
    else {
    imagedestroy($dst_im);
    imagedestroy($src_im);
    }

    echo "<img src=".$folder.">";
    }
    ######################################################################

    Merci a tous le monde de m'avoir aidé !!!

    NickoX9
    8
    1. merci mingi
      0
  2. Peut-être que ça pourra t'aider :

    https://www.developpez.net/forums/d139032/php/bibliotheques-frameworks/imagemagick-redimensionner-image-l-enregistrer/

    Je n'ai pas regardé en détail, mais apparemment, il a réussi à résoudre un problème similaire au tien.

    @le père

    Si j'ai bien compris, je crois qu'il cherche un script qui permet de redimensionner son image automatiquement lorsqu'il valide son formulaire d'envoi. Dans ce cas, le php peut être une solution. Il ne suffit plus malheureusement d'un coup de "TheGimp".
    3
    1. Si tu veux redimensionner une image, tu peux regarder du côté de la libraire GD en php. Tu as la fonction imagecopyresized().
      1
      1. Bonjour

        Si tu veux réduire le poids de la photo avant le transfert, c'est à dire chez le client, ce n'est pas en PHP qu'il faut le faire. Le PHP s'exécute côté serveur.
        ça ne résout pas ton problème, mais au moins ça t'évite de continuer sur une mauvaise piste...
        1
        1. Comment faire ?
          1
          1. Modérateur
            Au dessus du message 1 : 'modifier le statut de la discussion'...
            0
        2. Je vais regarder ca... MERCI !

          Pour répondre a blux, le transfert se fait du PC vers le serveur...

          Merci
          0
          1. Modérateur
            Donc, je rejoins la réponse 3...
            0
        3. de rien ;)

          n'oublie pas de mettre sujet résolu ^^

          Bonne journée !
          0
          1. il n'y a rien...

            Peut être que cela est du au fait que je ne me soit pas authentifié au départ...

            X9
            0
            1. Modérateur
              Je le marque comme résolu... :-)
              0
          2. Modérateur
            Salut,

            dans quel sens est fait le transfert ? serveur vers PC ou PC vers serveur ?
            -4