Enregistre l'image d'un lien dans un dossier

[Résolu]
Signaler
Messages postés
102
Date d'inscription
mercredi 8 avril 2009
Statut
Membre
Dernière intervention
27 juin 2011
-
Messages postés
102
Date d'inscription
mercredi 8 avril 2009
Statut
Membre
Dernière intervention
27 juin 2011
-
Bonjour,

Voilà j'ai un lien d'une image toute bête et j'aimerai que automatiquement le lien de mes images enregistre l'image dans dossier que j'aurais indiquer.

Exemple:
http://www.fredzone.org/wp-content/uploads/2009/09/31052009windows1.jpg

Le php fasse un clic droit --> enregistrer ^^

et que l'image maintenant se retrouve dans mon dossier.

Je pense que c'est tout bête mais je n'y arrive pas.

9 réponses

Messages postés
102
Date d'inscription
mercredi 8 avril 2009
Statut
Membre
Dernière intervention
27 juin 2011
1
Bon sachant que file_put_contents replace fopen, fwrite et fclose j'ai décider de l'ai utilisé ^^

<?

$url   = "lien de l'url";
$chemin = "lien dossier";

$nomImage = 'test';

 
if(!$img = file_get_contents($url)) { 
  die('pas de fichier');
}

if(!$f = fopen($chemin.'/test.jpg', 'w')) { 
  die('Ouverture du fichier impossible'); 
} 

if (fwrite($f, $img) === FALSE) { 
  die('Ecriture impossible'); 
} 


fclose($f);  

?>


Et sa marche ! En revanche j'aurai aimé remplacer '/test.jpg' par une variable ($nomImage) mais dés que je remplace par une variable sa ne marche plus.. HELP ^^
Messages postés
2483
Date d'inscription
jeudi 30 novembre 2006
Statut
Membre
Dernière intervention
14 janvier 2011
18
Salut,

En fait, c'est la réponse qui est toute bête... C'est impossible : PHP est exécuté sur le serveur, pas sur le navigateur.
Par ailleurs, même avec Javascript, c'est impossible : l'action d'enregistrer un fichier sur son disque dur doit OBLIGATOIREMENT être manuelle. Ceci, pour des raisons EVIDENTES de sécurité (tiens, je te mets un lien et hop, tu te retrouves avec un virus ou un trojan sur ton pc, comme c'est amusant).

--
Neige

Souvent la réponse à votre question se trouve dans la doc. Commencez par là ;)
Messages postés
102
Date d'inscription
mercredi 8 avril 2009
Statut
Membre
Dernière intervention
27 juin 2011
1
Pourtant en fouillant sur la toile, j'ai trouvé des scripts qui permettait l'enregistrement d'image dans un dossier en rentrant une url...

Je n'ai pas encore tout maîtriser le code mais bon sa ma l'air faisable.

Exemple: l'upload d'image sur sont disque est possible, et ce que j'ai trouvé est assez similaire sauf que c'est en rentrant un url est non un fichier.

Qu'en pense tu ?
Messages postés
2483
Date d'inscription
jeudi 30 novembre 2006
Statut
Membre
Dernière intervention
14 janvier 2011
18
J'en pense que je maintiens ma position, pour les raisons que j'ai déjà énoncées.

--
Neige

Souvent la réponse à votre question se trouve dans la doc. Commencez par là ;)
Messages postés
3706
Date d'inscription
lundi 5 juillet 2004
Statut
Membre
Dernière intervention
27 avril 2012
30
Salut,

J'ai comme l'impression que tu n'exprimes pas bien ce que tu souhaites.

Si comme je le sens il s'agit, à partir de ton serveur web, d'enregistrer, sur ce même serveur web, une image distante dont tu connais l'url, alors oui, c'est possible, et je ne vois pas où tu bloques.
Un simple file_get_contents(url_de_l_image);, suivi d'un file_put_contents() devraient suffire.

Bien évidemment, si l'url est obtenue via une formulaire il faudra s'assurer de sa validité, son contenu, etc ...


Cordialement,

Kohntark -
Messages postés
102
Date d'inscription
mercredi 8 avril 2009
Statut
Membre
Dernière intervention
27 juin 2011
1
C'est exactement çà kohntark, alors j'ai essayé ce que tu m'as dit. Le problème c'est que j'ai du mal à utiliser file_put_contents.

J'ai essayé çà mais sa me dit des erreurs:

<?php
$chemin = 'chemin du dossier de destination';

$donnee = file_get_contents('url de l'image');
file_put_contents($chemin, $donnee);
?>


J'ai lu sur internet comment marche file_put_contents mais je n'ai toujours pas compris...
Messages postés
2483
Date d'inscription
jeudi 30 novembre 2006
Statut
Membre
Dernière intervention
14 janvier 2011
18
Ah ouais, c'était pas clair... :/

--
Neige

Souvent la réponse à votre question se trouve dans la doc. Commencez par là ;)
Messages postés
102
Date d'inscription
mercredi 8 avril 2009
Statut
Membre
Dernière intervention
27 juin 2011
1
Je ne comprend vraiment pas comment marche file_put_contents sa ne me copie pas du tout l'image dans mon dossier...
Messages postés
102
Date d'inscription
mercredi 8 avril 2009
Statut
Membre
Dernière intervention
27 juin 2011
1
C'est bon sa marche ! Ce n'était qu'une histoire de slash dans mon url ^^

Merci à vous deux :)