Reconstituer une image en PHP

Bonjour,

Alors j'ai un script qui me renvoie des image de la façon suivante: https://presse-benedictine.com/test/

Donc simplement, l'extention de l'image est modifié, au lieu de s'appeler index.jpg elle s'appelle index.php .

J'essaye créer une image a partir de cette url. J'essaye d' utilisé imagecreatefromstring(); mais ça n'a pas l'air de fonctionner.. du coup je test des trucs depuis 2 jours mais sans succès. Quelqu'un a une idée ?

Merci d'avance.

2 réponses

  1. Contributeur
    et ainsi?
    <?php
    $url = "https://denver.cbslocal.com/wp-content/uploads/sites/15909806/2011/11/fire113250967.jpg";
    $img = file_get_contents($url);
    $src = 'data:image/jpg;base64,'. base64_encode($img);
    $re = '<img src="'. $src .'" alt="jpg" />';
    echo $re;  
    ?>
    
    1
    1. YES !

      mais alors c'est quoi l'idée ?
      0
    2. Contributeur
      @hypocela fonctionne avec l'API?
      0
    3. Oui parfaitement :D
      0
  2. Contributeur
    bonjour, peux-tu partager ton script, en utilisant les balises de code?
    0
    1. Ben en réalité il n'y a pas vraiment de script vu que j'ai pas trouvé la méthode.
      J'ai esseyé par exemple avec imagecreat() et insertsrting() qui sert a inséré du text et j'ai croisé les doigts pour que la chaine soit interpréter:

      $image = file_get_contents('https://presse-beneditine.com/test/');
      
      
      header("Content-Type: image/jpeg");
      $im = @imagecreate(110, 20)
          or die("Cannot Initialize new GD image stream");
      $background_color = imagecolorallocate($im, 0, 0, 0);
      $text_color = imagecolorallocate($im, 233, 14, 91);
      imagestring($im, 1, 5, 5, $image , $text_color);
      imagejpeg($im);
      imagedestroy($im);
      


      J'ai esseyer avec imagecreatfromstring():

      $image = file_get_contents('https://presse-beneditine.com/test/');
      
      $im = imagecreatefromstring($image);
      if ($im !== false) {
          header('Content-Type: image/jpeg');
          imagejpeg($im);
          imagedestroy($im);
      }
      
      echo $im;
      


      et la version avec base64_decode():

      $image = file_get_contents('https://presse-beneditine.com/test/');
      
      $data = base64_decode($image);
      
      $im = imagecreatefromstring($data);
      if ($im !== false) {
          header('Content-Type: image/jpeg');
          imagejpeg($im);
          imagedestroy($im);
      }
      
      echo $im;
      


      et quelques autres trucs mais bon voilà je tâtonne, j'ai pas vraiment d'idée sur la question.
      0
    2. Contributeur
      @hypoc'est de moins en moins clair.
      tu décris ce que tu as essayé, sans décrire le résultat obtenu.
      tu utilises file_get_contents, sans tester la valeur de retour.
      Au départ, tu écris "j'ai un script qui me renvoie des image", et puis tu n'as plus de script et tu n'expliques pas d'où viennent ces images.
      Peux-tu donner des informations factuelles sur ton contexte?
      Ceci est assez nébuleux: "l'extention de l'image est modifié, au lieu de s'appeler index.jpg elle s'appelle index.php". Qui modifie quoi?
      Qu'est-ce qui se cache derrière le lien https://presse-beneditine.com/test/ ou benedictine avec C?
      0
    3. "Qu'est-ce qui se cache derrière le lien https://presse-beneditine.com/test/ ou benedictine avec C? " Ah zut dsl j'avais pas fait gaffe x). Oui comme je l'ai dit le fichier qui apparait c'est une image quelconque "index.jpg" que j'ai renomé en "index.php". Je l'ai fait pour l'exemple car je ne peut pas envoyer l'url de l'api sachant que dans la requête apparait mon id et mon mdp ^^.

      Par exemple :
      $image = iconv( 'ISO-8859-1' , 'UTF-8' , file_get_contents('http://lapiquirecuperelesimage.fr/icon.php?user=XXXXX&password=XXXXX&imagename=MON_IMAGE'));
      
      
      var_dump($image);
      


      revoie:

      https://presse-benedictine.com/test/developpement.php

      sans le iconv:

      https://presse-benedictine.com/test/dev2.php

      Si j'entre:

      http://lapiquirecuperelesimage.fr/icon.php?user=XXXXX&password=XXXXX&imagename=MON_IMAGE

      j'ai bien une image pourtant.
      0
    4. Contributeur
      @hypotu décris ce que tu as essayé, sans décrire le résultat obtenu.
      0
    5. Contributeur
      @hypopeux tu publier https://presse-benedictine.com/test/ comme une image?
      0