Télécharger une image en PHP

PHPdev -  
naruto-94 Messages postés 904 Statut Membre -
Bonjour,

Je développe une application en php/html.

J'ai une image située à l'url : "http://mon_image.jpg"

Je souhaite insérer un script php permettant d'enregistrer l'image sur le bureau de l'utilisateur de mon application.

Si vous pouviez me présenter de façon limpide le code php à utiliser pour y parvenir, cela m'aiderait énormément car je n'ai trouvé pour l'instant que des explications approximatives.

cordialement

7 réponses

  1. naruto-94 Messages postés 904 Statut Membre 188
     
    Bonjour ,

    PHP ne s'exécute que du coté serveur donc il est impossible d'interagir avec le coté client ,pour cela le langage qu'il faudra utiliser est le javascript, et encore je ne sais pas si c'est faisable car niveau sécurité c'est dangereux ..
    0
  2. Nabla's Messages postés 18201 Date d'inscription   Statut Contributeur Dernière intervention   3 228
     
    le php s'execute coté serveur=> impossible d'agir sur l'ordinateur du client !

    je pense pas que le javascript te permete d'enregistrer un fichier sans demander d'autorisation... je pense qu'il faut se tourner vers un applet JAVA. (ou un activeX, mais la c'est vraiment caca)

    Sinon, un bon vieux lien, et "enregistrer sous" ...
    0
  3. PHPdev
     
    Merci de vos réponse,

    j'ai donc compris qu'on ne peut exécuter directement l'enregistrement,
    cependant je ne sais pas comment rendre l'enregistrement possible en passant par un lien de téléchargement.

    J'ai lu des exemple avec des $file, des headers etc... mais tous les exemple que j'ai essayer ne marchaient pas, sans doute car non adapté à mon problème.

    Si vous pouviez la aussi m'expliquer comment je dois procéder toujours avec mon exemple "http://mon_image.jpg" .

    Merci
    0
  4. naruto-94 Messages postés 904 Statut Membre 188
     
    Nabla's proposait juste un simple lien qui pointe vers l'image et l'utilisateur devra juste faire un clique droit "enregistrez la cible du lien sous" sur le lien pour l'obtenir :

    <a href="http://mon_image.jpg" >L'image à telecharger</a>
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. PHPdev
     
    Ok, mais comment faire un lien qui propose l'enregistrement de l'image directement sur mon application?
    0
  7. xMiLeY Messages postés 73 Statut Membre 7
     
    Avec les header, y'a pas une propriété qui force-download un truc comme ca?
    0
  8. naruto-94 Messages postés 904 Statut Membre 188
     
    <?php

    $fichier = 'dossier/mon_image.jpg' ; //chemin vers le fichier
    header('Content-disposition: attachment; filename="' . basename($fichier) . '"');
    header('Content-type: application/octetstream');
    header('Pragma: no-cache');
    header('Expires: 0');
    readfile($fichier);

    ?>
    0