begin process at 2012 05 30 23:00:10
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive PHP

 > 

Archives

 > 

AU SECOURS !!!

 > 

Où est l'érreur ? (Image Miniature)


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Où est l'érreur ? (Image Miniature)

lundi 6 juin 2005 à 08:46:59 | Où est l'érreur ? (Image Miniature)

ImmortalPC

Salut,
après avoir cherché une solution pour faire une image miniature en automatique j'ai finalement trouvé un script super
Voici le script :
<?php
/*
 *
 *
 * Avertissement : Cette librairie de fonctions PHP est distribuee avec l'espoir
 * qu'elle sera utile, mais elle l'est SANS AUCUNE GARANTIE; sans meme la garantie de
 * COMMERCIALISATION ou d'UTILITE POUR UN BUT QUELCONQUE.
 * Elle est librement redistribuable tant que la presente licence, ainsi que les credits des
 * auteurs respectifs de chaque fonctions sont laisses ensembles.
 * En aucun cas, Nexen.net ne pourra etre tenu responsable de quelques consequences que ce soit
 * de l'utilisation ou la mesutilisation de ces fonctions PHP.

*/

/****
 * Titre : CreateEtiquette
 * Auteur : Mike Mithouard
 * Email : root@mickael-mithouard.com
 * Url : www.mickael-mithouard.com
 * Description : Cette fonction reprend la création de miniatures. Le rajout est la fonction imagecreatetruecolor qui évite un échantillonement sur 255 couleurs
****/
function CreateEtiquette2($Image){
/*
$Image: Nom de l'image originale
$Source: Chemin absolu du répertoire de l'image originale
$Destination: Chemin absolu du répertoire de l'image réduite
$ratio: Largeur de l'image réduite.
*/
$Source = './';
$Destination = './Miniature_';
$ratio = 150;
   if(substr(strtolower($Source.$Image), (strlen($Source.$Image)-4),4)=='.gif'){
      $src=imagecreatefromgif($Source.$Image);

   }else if(substr(strtolower($Source.$Image), (strlen($Source.$Image)-4),4)=='.jpeg' || substr(strtolower($Source.$Image), (strlen($Source.$Image)-5),5)=='.jpeg'){
      $src=imagecreatefromjpeg($Source.$Image);

   }else{
      echo 'Format d\'image non supporté. Utilisez des *.gif ou *.jpg';
      exit();
   }
   $size = getimagesize($Source.$Image);
   if($size[0] > $size[1]){
      
     $im=imagecreatetruecolor(round(($ratio/$size[1])*$size[0]), $ratio);
     imagecopyresized($im, $src, 0, 0, 0, 0, round(($ratio/$size[1])*$size[0]), $ratio, $size[0], $size[1]);
   }
   else{
     $im=imagecreatetruecolor($ratio, round(($ratio/$size[0])*$size[1]));
     imagecopyresized($im, $src, 0, 0, 0, 0, $ratio, round($size[1]*($ratio/$size[0])), $size[0], $size[1]);
   }
   if(!imagejpeg($im, $Destination.$Image)){
      echo 'la création de l\'étiquette a echoué pout l\'image ',$Image;
   }
}

$img = 'image.jpeg';
if(is_file('Miniature_'.$img)){
    include('Miniature_'.$img);
}else{
    CreateEtiquette2($img);
    include('Miniature_'.$img);
}
?>

Sauf que voilà petit problème :
Voyez par vous meme il ne m'affiche pas des caractères bizarres ou une image mais
Parse error: parse error, unexpected '}' in c:\program files\internet\serveurs\easyphp1-7\www\immortal-pc\miniatures\Miniature_image.jpeg on line 41
Ce qui est illogique, l'image est bien créée.
Petite précision mettez // devant les include et là plus d'érreur!!!!
Donc j'en déduit que c'est écrit dans l'image.
J'ai fait un test : j'ai ouvert l'image miniature avec paint et j'ai enregistré directement sans rien changer.
Je relance le script (l'image existe déjà donc pas de recréation de miniature) et la l'image apparait!!!

C'est où le bug ?
Immortal-PC,
téléchargements,astuces ,entre-aide informatique , conseils pour vos problèmes d'ordi.
lundi 6 juin 2005 à 09:32:36 | Re : Où est l'érreur ? (Image Miniature)

Anthomicro

Salut,

}else if

à remplacer par }elseif

?


    lundi 6 juin 2005 à 10:30:42 | Re : Où est l'érreur ? (Image Miniature)

    ImmortalPC

    Heu non.
    désolé mais c'est la meme chose, j'avais déjà testé.
    Essaye.
    @+

    Immortal-PC,
    téléchargements,astuces ,entre-aide informatique , conseils pour vos problèmes d'ordi.
    lundi 6 juin 2005 à 10:42:57 | Re : Où est l'érreur ? (Image Miniature)

    Anthomicro

    ouais en effet c'est louche... le genre de bugs où il faut une heure pour le corriger alors qu'il manque un point virgule ou une connerie dans ce genre...

    Bref indente ton code et après je regarde si tu veux, mais là je peux pas


      lundi 6 juin 2005 à 11:30:26 | Re : Où est l'érreur ? (Image Miniature)

      ImmortalPC

      <?php
      /*
       *
       *
       * Avertissement : Cette librairie de fonctions PHP est distribuee avec l'espoir
       * qu'elle sera utile, mais elle l'est SANS AUCUNE GARANTIE; sans meme la garantie de
       * COMMERCIALISATION ou d'UTILITE POUR UN BUT QUELCONQUE.
       * Elle est librement redistribuable tant que la presente licence, ainsi que les credits des
       * auteurs respectifs de chaque fonctions sont laisses ensembles.
       * En aucun cas, Nexen.net ne pourra etre tenu responsable de quelques consequences que ce soit
       * de l'utilisation ou la mesutilisation de ces fonctions PHP.

      */

      /****
       * Titre : CreateEtiquette
       * Auteur : Mike Mithouard
       * Email : root@mickael-mithouard.com
       * Url : www.mickael-mithouard.com
       * Description : Cette fonction reprend la création de miniatures. Le rajout est la fonction imagecreatetruecolor qui évite un échantillonement sur 255 couleurs
      ****/

      function CreateEtiquette2($Image){
      /*
      $Image: Nom de l'image originale
      $Source: Chemin absolu du répertoire de l'image originale
      $Destination: Chemin absolu du répertoire de l'image réduite
      $ratio: Largeur de l'image réduite.
      */

      $Source = './';
      $Destination = './Miniature_';
      $ratio = 150;
         if(substr(strtolower($Source.$Image), (strlen($Source.$Image)-4),4)=='.gif'){
            $src=imagecreatefromgif($Source.$Image);

         }elseif(substr(strtolower($Source.$Image), (strlen($Source.$Image)-4),4)=='.jpeg' || substr(strtolower($Source.$Image), (strlen($Source.$Image)-5),5)=='.jpeg'){
            $src=imagecreatefromjpeg($Source.$Image);

         }else{
            echo 'Format d\'image non supporté. Utilisez des *.gif ou *.jpg';
            exit;
         }
         $size = getimagesize($Source.$Image);
         if($size[0] > $size[1]){
            
           $im=imagecreatetruecolor(round(($ratio/$size[1])*$size[0]), $ratio);
           imagecopyresized($im, $src, 0, 0, 0, 0, round(($ratio/$size[1])*$size[0]), $ratio, $size[0], $size[1]);

         }else{
           $im=imagecreatetruecolor($ratio, round(($ratio/$size[0])*$size[1]));
           imagecopyresized($im, $src, 0, 0, 0, 0, $ratio, round($size[1]*($ratio/$size[0])), $size[0], $size[1]);
         }
         if(!imagejpeg($im, $Destination.$Image)){
            echo 'la création de l\'étiquette a echoué pout l\'image ',$Image;
         }
      }

      $img = 'image.jpeg';
      $size = getimagesize($img);
      //header('Content-type: '.$size['mime']);

      if(!is_file('Miniature_'.$img)){
          CreateEtiquette2($img);  
      }
      include('Miniature_'.$img);
      ?>

      J'ai supposé que indente  ton code voulais dire colorise ton code.
      J'ai désactivé le header pour voir si l'érreur apparait toujours.
      Si non je pensais on pourrais lire l'image puis réécrire l'image ( comme paint ) mais sans apporter de modif.
      @+
      Immortal-PC,
      téléchargements,astuces ,entre-aide informatique , conseils pour vos problèmes d'ordi.
      lundi 6 juin 2005 à 11:35:01 | Re : Où est l'érreur ? (Image Miniature)

      Anthomicro


      non non indenter veut dire "mets des tabulations" (en gros) pour qu'on distingue les conditions, etc...

        lundi 6 juin 2005 à 12:46:04 | Re : Où est l'érreur ? (Image Miniature)

        ImmortalPC

        ok

        <?php
        /*
         *
         *
         * Avertissement : Cette librairie de fonctions PHP est distribuee avec l'espoir
         * qu'elle sera utile, mais elle l'est SANS AUCUNE GARANTIE; sans meme la garantie de
         * COMMERCIALISATION ou d'UTILITE POUR UN BUT QUELCONQUE.
         * Elle est librement redistribuable tant que la presente licence, ainsi que les credits des
         * auteurs respectifs de chaque fonctions sont laisses ensembles.
         * En aucun cas, Nexen.net ne pourra etre tenu responsable de quelques consequences que ce soit
         * de l'utilisation ou la mesutilisation de ces fonctions PHP.

        */

        /****
         * Titre : CreateEtiquette
         * Auteur : Mike Mithouard
         * Email : root@mickael-mithouard.com
         * Url : www.mickael-mithouard.com
         * Description : Cette fonction reprend la création de miniatures. Le rajout est la fonction imagecreatetruecolor qui évite un échantillonement sur 255 couleurs
        ****/

        function CreateEtiquette2($Image){
            /*
            $Image: Nom de l'image originale
            $Source: Chemin absolu du répertoire de l'image originale
            $Destination: Chemin absolu du répertoire de l'image réduite
            $ratio: Largeur de l'image réduite.
            */
            $Source = './';
            $Destination = './Miniature_';
            $ratio = 150;
           if(substr(strtolower($Source.$Image), (strlen($Source.$Image)-4),4)=='.gif'){
                $src=imagecreatefromgif($Source.$Image);

            }elseif(substr(strtolower($Source.$Image), (strlen($Source.$Image)-4),4)=='.jpeg' || substr(strtolower($Source.$Image), (strlen($Source.$Image)-5),5)=='.jpeg'){
                 $src=imagecreatefromjpeg($Source.$Image);

            }else{
                echo 'Format d\'image non supporté. Utilisez des *.gif ou *.jpg';
                exit;
            }
            $size = getimagesize($Source.$Image);
            if($size[0] > $size[1]){     
                $im=imagecreatetruecolor(round(($ratio/$size[1])*$size[0]), $ratio);
                imagecopyresized($im, $src, 0, 0, 0, 0, round(($ratio/$size[1])*$size[0]), $ratio, $size[0], $size[1]);

            }else{
                $im=imagecreatetruecolor($ratio, round(($ratio/$size[0])*$size[1]));
            imagecopyresized($im, $src, 0, 0, 0, 0, $ratio, round($size[1]*($ratio/$size[0])), $size[0], $size[1]);
            }
            if(!imagejpeg($im, $Destination.$Image)){
                echo 'la création de l\'étiquette a echoué pout l\'image ',$Image;
            }
        }

        $img = 'image.jpeg';
        $size = getimagesize($img);
        //header('Content-type: '.$size['mime']);

        if(!is_file('Miniature_'.$img)){
            CreateEtiquette2($img);  
        }
        include('Miniature_'.$img);
        ?>

        Comme ça ?

        Immortal-PC,
        téléchargements,astuces ,entre-aide informatique , conseils pour vos problèmes d'ordi.
        mardi 7 juin 2005 à 08:35:18 | Re : Où est l'érreur ? (Image Miniature)

        ImmortalPC

        Je n'ai toujours pas trouvé le problème!!!

        Immortal-PC,
        téléchargements,astuces ,entre-aide informatique , conseils pour vos problèmes d'ordi.
        mardi 7 juin 2005 à 15:52:55 | Re : Où est l'érreur ? (Image Miniature)

        ImmortalPC

        Réponse acceptée !
        Salut,
        j'ai trouvé l'érreur !!!!!
        Cela ne viens pas du script mais de l'image elle même !!!
        Fait le test avec cette image puis avec cette image
        Flagrant !!!
        Essaye ce code avec les 2 images :
        <?php
        include('monimage');
        ?>
        Et là on vois bien que certaines images (surtout les truquées) sont totalement pouravent.
        Pour remédier à ça bah pas le choix replacer le include par un header.
        @+

        Immortal-PC,
        téléchargements,astuces ,entre-aide informatique , conseils pour vos problèmes d'ordi.
        mardi 7 juin 2005 à 16:47:27 | Re : Où est l'érreur ? (Image Miniature)

        ImmortalPC

        Re,
        dit Anthomicro tu saurais pas comment faire pour que l'image ne soit pas lut par php mais juste incluse !?
        +

        Immortal-PC,
        téléchargements,astuces ,entre-aide informatique , conseils pour vos problèmes d'ordi.
        Grâce à Immortal-PC votre ordinateur passera les âges.

        1 2

        Cette discussion est classée dans : image, source, size, miniature, ratio


        Répondre à ce message

        Sujets en rapport avec ce message

        [GD] Transparence miniature PNG [ par Finality ] Bonjour, je voudrais créer une miniature d'une image en PNG. J'y arrives très bien mais ma miniature n'est plus transparente : un gorrible fond noir f erreur au chargement d'image [ par speedylol ] bonjour voici le probléme que j 'ai quand je télécharge une photo c'est sans probléme cela fonction bien. l'erreur que j ai ces quand je n'est pas de affichage d'image en miniature en php [ par ffrany ] Bonjour,j'ai crée un site web en php. Et j'ai pas mal d'images à afficher. Mais j'aimerais afficher ces images en php en bande roulantes (ces images d Warning: imagecopyresampled(): supplied argument is not a valid Image resource [ par slashf ] salut a tous comme le titre l'indique j'ai un problème au niveau de la création de l'image, mon scripte est le suivant :$photo1=$_FILES['photo1'];if(! function minature dans l'upload jpg, gif, png [ par speedylol ] bonjour ;-)Voici mon soucis quand je charge une photo ou image gif , j'ai l'erreur suivante que cela ne fait pas partie de extension permisse(jpg;gif; gd et la superposition d'images transparentes [ par bizu29 ] Tout d'abord bonjour/soirAlors j'ai un petit soucis qui commence a me rendre dingue Mon but est de fusionner ces 2 images avec gd <img src="http://biz modif script d'upload [ par foxprox ] bonjour j'utilise un script d'upload d'image qui intègre un système de recadragescript trouvé à cette adresse  voir <a href="http://www.webmotionuk.co Problème redimension image [ par psyckan ] Bonjour,Voila j'essaie de redimensionner une image au moment de l'upload mais ça marche pas et ça m'affiche plein des caractère spéciaux à l'endroit o miniature d'image [ par developinform ] Bonjour; Ben, je veux créer des miniatures d'image, le code que j'utilise ça marche très bien dans local, mais lorsque j’héberge le fichier dans un s IE8 change les couleurs des photos [ par cseagle ] Bonjour, Une surprise ce matin après mise à jour vers IE8. Sur mon j'ai une interface pour mettre des annonces avec photos en ligne, jusque la pas de


        Nos sponsors


        Sondage...

        Comparez les prix

        CalendriCode

        Mai 2012
        LMMJVSD
         123456
        78910111213
        14151617181920
        21222324252627
        28293031   

        Consulter la suite du CalendriCode

        Photothèque

        A découvrir



         
        Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
        CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
        CodeS-SourceS.com© est une marque déposée tous droits réservés

        Google Coop CodeS-SourceS Google Coop CodeS-SourceS
        Temps d'éxécution de la page : 1,076 sec (3)

        Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales