Précédent   Forum des professionnels en informatique > PHP > Langage > Fichiers
Fichiers Forum d'entraide sur les fichiers avec PHP. Avant de poster -> FAQ fichiers et Sources fichiers
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 21/09/2011, 05h52   #1
Nouveau Membre du Club
 
Inscription : décembre 2006
Messages : 190
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 190
Points : 32
Points : 32
Par défaut Copier un fichier distant sur un disque local

Bonjour à tous,

Quand j'essaie de copier un fichier à partir de mon serveur local sur mon disque local C:, ca fonctionne. Par contre, quand j'essaie de copier un fichier à partir de mon serveur distant sur mon disque local C:, ca ne fonctionne pas. Voici mon code:

Code :
1
2
3
4
5
6
7
8
9
 
 
$img_input= "http://192.168.2.56/test.jpg"; // Ca fonctionne
 
$img_input= "http://monsitedistant.com/test.jpg"; // Ca ne fonctionne pas
 
$img_output = 'C:\images\test.jpg';
 
file_put_contents($img_output, file_get_contents($img_input));
Avez-vous une idée comment je pourrais contourner ce problème ?

Merci
persia est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/09/2011, 07h01   #2
Membre Expert
 
Avatar de transgohan
 
Homme Baptiste ROUSSEL
Étudiant
Inscription : janvier 2011
Messages : 807
Détails du profil
Informations personnelles :
Nom : Homme Baptiste ROUSSEL
Localisation : France, Territoire de Belfort (Franche Comté)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : janvier 2011
Messages : 807
Points : 1 522
Points : 1 522
ftp ?
http://fr.php.net/ftp
__________________
Toujours se souvenir que la majorité des ennuis viennent de l'espace occupé entre la chaise et l'écran de l'ordinateur.
transgohan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/09/2011, 10h42   #3
Membre chevronné
 
Avatar de Marc3001
 
Homme
Ingénieur développement logiciels
Inscription : février 2008
Messages : 430
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 28
Localisation : France, Ille et Vilaine (Bretagne)

Informations professionnelles :
Activité : Ingénieur développement logiciels

Informations forums :
Inscription : février 2008
Messages : 430
Points : 682
Points : 682
192.168.2.56 est une IP locale connue uniquement sur ton réseau local.

Depuis ton serveur distant cette adresse est inconnue. Il faut que tu utilises ton IP publique (de ta box) et que tu aies une règle de translation d'adresse pour que le port que tu utilises soit redirigé de ta box vers ton PC local.
__________________
Le logiciel, c'est comme le sexe, c'est meilleur quand c'est libre.

Linus Torvalds
Marc3001 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/09/2011, 10h46   #4
Modérateur
 
Inscription : septembre 2010
Messages : 7 128
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 128
Points : 8 488
Points : 8 488
Code :
file_put_contents($img_output, file_get_contents($img_input));
=

copy
__________________
http://blog.stealth35.com/
stealth35 est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/09/2011, 15h18   #5
Nouveau Membre du Club
 
Inscription : décembre 2006
Messages : 190
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 190
Points : 32
Points : 32
Citation:
Envoyé par transgohan Voir le message
Oui le ftp est une alternative mais ca doit passer par du HTTP.

L'idée c'est que quand la personne clique sur le lien (copie image) sur ma page web, le script s'éxecute et l'image se copie directement sur son C:, sans passer par la fenêtre de télechargement qui doit s'ouvrir et demander à l'utilisateur où il veut sauvegarder l'image.

D'un serveur local au PC local ca fonctionne mais d'un Serveur distant au PC local ca ne fonctionne pas
persia est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/09/2011, 15h29   #6
Nouveau Membre du Club
 
Inscription : décembre 2006
Messages : 190
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 190
Points : 32
Points : 32
Citation:
Envoyé par Marc3001 Voir le message
192.168.2.56 est une IP locale connue uniquement sur ton réseau local.

Depuis ton serveur distant cette adresse est inconnue. Il faut que tu utilises ton IP publique (de ta box) et que tu aies une règle de translation d'adresse pour que le port que tu utilises soit redirigé de ta box vers ton PC local.
Tu as tout à fait raison, mais le but c'est seulement de copier l'image qui réside sur un serveur distant dans mon C: Au lieu que la personne clique sur le lien (copie image) et que la boite de télechargement s'ouvre pour qu'ensuite il choisit le chemin de destination, je veux que ca se fasse directement. Possible, pas possible !!!
persia est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/09/2011, 18h42   #7
Membre chevronné
 
Avatar de Marc3001
 
Homme
Ingénieur développement logiciels
Inscription : février 2008
Messages : 430
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 28
Localisation : France, Ille et Vilaine (Bretagne)

Informations professionnelles :
Activité : Ingénieur développement logiciels

Informations forums :
Inscription : février 2008
Messages : 430
Points : 682
Points : 682
Citation:
Envoyé par persia Voir le message
Tu as tout à fait raison, mais le but c'est seulement de copier l'image qui réside sur un serveur distant dans mon C: Au lieu que la personne clique sur le lien (copie image) et que la boite de télechargement s'ouvre pour qu'ensuite il choisit le chemin de destination, je veux que ca se fasse directement. Possible, pas possible !!!
C'est donc une action côté client et non serveur que tu veux effectuer... Tu ne pourras pas le faire en php mais plutot en javascript.

Cela fonctionnait sur ton réseau local car le serveur était aussi le client....
__________________
Le logiciel, c'est comme le sexe, c'est meilleur quand c'est libre.

Linus Torvalds
Marc3001 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 18h54.


 
 
 
 
Partenaires

Hébergement Web