IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bibliothèques et frameworks PHP Discussion :

[GD] Script de redimension d'image


Sujet :

Bibliothèques et frameworks PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2
    Par défaut [GD] Script de redimension d'image
    bonjour,
    J'ai trés peu de pratique en php, c'est pouquoi je voudrai avoir votre avis sur ce sript:

    Code : PHP

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    <?
            $width_max = 500; //Largeur max de l'image en pixels. L'image est considérée comme miniature en dessous de cette taille
     
            $size = getimagesize($_SESSION['photoOK']);
     
            //on recupère les dimension de la photo
            $hauteur = $size[1];
            $largeur = $size[0];
     
            if($largeur > $width_max)
            {
                    // Calcul des nouvelles dimensions
                    $newHauteur = ($hauteur * $width_max) / $largeur ;
     
                    //nom de la miniature
                    $nomMiniature = "small".substr($_SESSION['photoOK'],10);
     
                    // Redimensionnement
                    $destination = imagecreatetruecolor($width_max, $newHauteur);
                    $imageSource = imagecreatefromjpeg($_SESSION['photoOK']);
                    imagecopyresampled($destination, $imageSource, 0, 0, 0, 0, $width_max, $newHauteur, $largeur, $hauteur);
                    imagejpeg($destination, $nomMiniature);
                    $_SESSION['photoOK'] = "photos/miniatures/".$nomMiniature;
                    imagedestroy($imageSource);
     
            }
    ?>

    sachant que $_SESSION['photoOK'] = "../photos/".$_FILES['photo']['name'];

    Comme vous vous en doutez il ne fonctionne pas, mais je n'ai pas d'erreur. La miniature ne ce trouve pas dans son dossier...

    merci pour votre aide

  2. #2
    Membre éclairé Avatar de Space Cowboy
    Homme Profil pro
    chomeur
    Inscrit en
    Avril 2005
    Messages
    496
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : chomeur

    Informations forums :
    Inscription : Avril 2005
    Messages : 496
    Par défaut
    Personnellement, j'ai recement terminer ce genre de fonction, j'ai mis plusieures heures ...

    Dans l'ordre
    <?php
    //&#160;Chemin
    $fichierSource&#160;=&#160;$dest.'/'.$nom_cp;
    //&#160;Lecture&#160;de&#160;l'image&#160;source
    $image_source&#160;=&#160;imagecreatefromjpeg($fichierSource);
    //&#160;Création&#160;de&#160;la&#160;miniature,&#160;utilisé&#160;pour&#160;contenir&#160;l'image&#160;redimensionné
    $image_Dest&#160;=&#160;imagecreatetruecolor&#160;($largeur_Dest,&#160;$hauteur_Dest);&#160;
    //&#160;Copie&#160;l'image&#160;original&#160;dans&#160;la&#160;miniature&#160;créer
    imagecopyresampled($image_Dest,&#160;$image_source,&#160;0,&#160;0,&#160;0,&#160;0,&#160;$largeur_Dest,&#160;$hauteur_Dest,&#160;$largeur_Source,&#160;$hauteur_Source);
    //&#160;Enregistrement&#160;de&#160;la&#160;miniature&#160;sur&#160;le&#160;serveur
    imagejpeg($image_Dest,$dest.'/'.$img_nom_m,100);
    ?>
    Il existe des tonnes d'exemple la création enregistrement de miniatures.


    Juste pour info, tu faire ca aussi :
    list($largeur_Source, $hauteur_Source, $type_Source, $attr) = getimagesize($_SESSION['photoOK']);
    Pratique si tu veut gerer le jpg/png/gif ...

  3. #3
    Rédacteur

    Avatar de Yoteco
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2004
    Messages
    1 099
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 099
    Par défaut
    Alors je vois quelques erreurs:

    • Pour que la fonction getimagesize fonctionne tu dois lui passer la variable $_FILES['photo']['tmp_name'] alors que toi tu lui passe $_FILES['photo']['name']
    • Même erreur pour imagecreatefromjpeg tu dois lui passer $_FILES['photo']['tmp_name']
    Sinon je ne vois pas d'autres erreurs... essaye de changer sa et dis moi si sa va tjs pas.
    Blog - Mon espace developpez -
    Oracle Certified Professional, Java SE 6 Programmer
    eZ Publish Certified developer

  4. #4
    Rédacteur

    Avatar de Yoteco
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2004
    Messages
    1 099
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 099
    Par défaut
    Oups c'est faux ce que je viens d'écrire... Ceci doit être fait lorsqu'on upload une image...

    Sorry
    Blog - Mon espace developpez -
    Oracle Certified Professional, Java SE 6 Programmer
    eZ Publish Certified developer

  5. #5
    Membre éclairé Avatar de Space Cowboy
    Homme Profil pro
    chomeur
    Inscrit en
    Avril 2005
    Messages
    496
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : chomeur

    Informations forums :
    Inscription : Avril 2005
    Messages : 496
    Par défaut
    <?php
    &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;$nom_du_fichiers&#160;
    =&#160;$_FILES&#91;'fichiers']&#91;'name']&#91;0];&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;//&#160;Nom&#160;du&#160;fichier&#160;cible&#160;à&#160;uploader
    &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;
    $nom_du_fichiers_temporaire&#160;=&#160;$_FILES&#91;'fichiers']&#91;'tmp_name']&#91;0];&#160;&#160;&#160;&#160;&#160;&#160;//&#160;Nom&#160;du&#160;fichier&#160;dans&#160;le&#160;cache&#160;d'apache
    &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;
    if&#160;(@copy($nom_du_fichiers_temporaire,&#160;$dest.'/'.$nom_du_fichiers))&#160;&#160;&#160;&#160;&#160;&#160;//&#160;$chemin

    ?>
    Effectivement.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Optimisation script de redimension d'images
    Par jazono dans le forum Langage
    Réponses: 5
    Dernier message: 19/03/2010, 09h42
  2. script de redimension d'image
    Par remy65600 dans le forum Langage
    Réponses: 2
    Dernier message: 03/06/2009, 11h37
  3. [GD] Redimension d'image - plusieurs erreurs dans mon script
    Par Henry9 dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 18/02/2007, 10h58
  4. Lancement script pour pivoter des images
    Par steph_raynaud dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 27/04/2006, 13h18
  5. 1 script, pour animer une image, qui en regroupe 3 scripts
    Par vampyer972 dans le forum Général JavaScript
    Réponses: 13
    Dernier message: 09/04/2006, 00h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo