Copier une image a partir de son lien url ?
Résolu/Fermé
roswelllge
Messages postés
31
Date d'inscription
samedi 19 août 2006
Statut
Membre
Dernière intervention
1 octobre 2008
-
27 juil. 2008 à 14:52
Gérome - 25 juil. 2017 à 09:46
Gérome - 25 juil. 2017 à 09:46
A voir également:
- Télécharger image lien
- Lien url - Guide
- Créer un lien pour partager des photos - Guide
- Comment télécharger une vidéo youtube - Guide
- Verifier un lien - Guide
- Telecharger whatsapp pour pc - Télécharger - Messagerie
3 réponses
Kcazer
Messages postés
26
Date d'inscription
lundi 5 mai 2008
Statut
Membre
Dernière intervention
13 août 2008
21
27 juil. 2008 à 15:17
27 juil. 2008 à 15:17
Bonjour,
Voila deux solutions, chacune avec leurs avantages et inconvénients:
- Le méthode simple, code très court, mais aucune vérification des erreurs:
- Le méthode que je conseille fortement, le code est plus long, mais affiche un message en cas d'erreur, et permet de récuperer les images même sur les sites qui utilisent une protection anti-leech.
Il est possible de transformer legerement ces deux scripts pour en faire des fonctions, par exemple pour prendre l'url en parametre, et qui retourne true ou false selon le resultat ;]
Idem pour le nom du fichier, ici il est récupéré directement depuis l'url, et aucune verfication n'est faite (si jamais un fichier du meme nom existe deja).
PS: La seconde méthode necessite php 5 au minimum, pour l'utilisation de file_put_contents et des xcontext avec file_get_contents
Voila deux solutions, chacune avec leurs avantages et inconvénients:
- Le méthode simple, code très court, mais aucune vérification des erreurs:
<?php // L'url du fichier $url = 'http://url.de/l_image'; // Le chemin de sauvegarde $path = ''; // On recup le nom du fichier $name = array_pop(explode('/',$url)); // On copie le fichier copy($url,$path.'/'.$name); ?>
- Le méthode que je conseille fortement, le code est plus long, mais affiche un message en cas d'erreur, et permet de récuperer les images même sur les sites qui utilisent une protection anti-leech.
<?php // L'url du fichier $url = 'http://url.de/l_image'; // Le chemin de sauvegarde $path = ''; // On coupe le chemin $exp = explode('/',$url); // On recup l'adresse du serveur $serv = $exp[0].'//'.$exp[2]; // On recup le nom du fichier $name = array_pop($exp); // On genere le contexte (pour contourner les protections anti-leech) $xcontext = stream_context_create(array("http"=>array("header"=>"Referer: ".$serv."\r\n"))); // On tente de recuperer l'image $content = file_get_contents($url,false,$xcontext); if ($content === false) { echo "\nImpossible de récuperer le fichier."; exit(1); } // Sinon, si c'est bon, on sauvegarde le fichier $test = file_put_contents($path.'/'.$name,$content); if ($test === false) { echo "\nImpossible de sauvegarder le fichier."; exit(1); } // Tout est OK echo "\nSauvegarde effectuée avec succés."; ?>
Il est possible de transformer legerement ces deux scripts pour en faire des fonctions, par exemple pour prendre l'url en parametre, et qui retourne true ou false selon le resultat ;]
Idem pour le nom du fichier, ici il est récupéré directement depuis l'url, et aucune verfication n'est faite (si jamais un fichier du meme nom existe deja).
PS: La seconde méthode necessite php 5 au minimum, pour l'utilisation de file_put_contents et des xcontext avec file_get_contents
Bonjour
Moi je chercha la même chose, mais 'copier une image a partir de son url vers un serveur local'
Qualqu'un à une idée ?
Merci !
Moi je chercha la même chose, mais 'copier une image a partir de son url vers un serveur local'
Qualqu'un à une idée ?
Merci !
roswelllge
Messages postés
31
Date d'inscription
samedi 19 août 2006
Statut
Membre
Dernière intervention
1 octobre 2008
12
27 juil. 2008 à 16:17
27 juil. 2008 à 16:17
Merci beaucoups Kcaser pour ces deux méthodes, j'utilise la premiere, car plus simple pour ce que je fais.
Elle marche nikel Merci
Elle marche nikel Merci
torettodu41
Messages postés
3
Date d'inscription
vendredi 26 mars 2010
Statut
Membre
Dernière intervention
26 mars 2010
26 mars 2010 à 10:26
26 mars 2010 à 10:26
enregistrer limage puis tu va dan le dossier envoyer vers : ton disk dur
5 mars 2013 à 19:24
Merci :)
18 janv. 2014 à 12:40
25 juil. 2017 à 09:46