Précédent   Forum des professionnels en informatique > PHP > Langage
Langage Forum sur le langage PHP, la POO, les conventions, la sécurité, etc. Avant de poster : FAQ Langage, toutes les FAQ PHP, cours langage et sources PHP
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 10/02/2011, 11h34   #1
Invité de passage
 
Inscription : février 2011
Messages : 4
Détails du profil
Informations forums :
Inscription : février 2011
Messages : 4
Points : 1
Points : 1
Par défaut Download de fichier depuis ftp

Bonjour ... Tout d abord vous préciser que je suis loin d être un pro, donc soyez indulgent lol ... Ceci dit, je souhaite récupérer un fichier "toto.sql" que j'ai crée et qui se trouve sur le serveur de mon hébergeur et ce, via le système ftp mais sur mon disque dur... Pour ce faire, j'ai crée la petite procédure suivante :

<?php
$cnx=ftp_connect("xxxxxxxx");
if(@ftp_login($cnx,"xxxxx","xxxxx")) {
echo "connexion réussie";
$pst = "test.sql";
$fic = "../site_maj/toto.sql";
if(ftp_get($cnx,$pst,$fic,FTP_ASCII)) {
echo 'Transfert réussi ...';
}
}else{
echo "echec";
}
ftp_close($cnx);
?>

Cela fonctionne très bien mais écrit bien évidemment le fichier "test.sql" sur le serveur ... Je voudrais que ce fichier soit transférer sur mon ordi et le suel moyen que j'ai trouvé c est de lancer cette procédure depuis "WampServeur" en local mais je voudrais éviter ... Si quelqu'un pouvait m'aider, ça serait sympa ... Merci d'avance et bonne journée à tous(tes) ...
top16 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/02/2011, 11h43   #2
Membre Expert
 
Avatar de gene69
 
Inscription : janvier 2006
Messages : 951
Détails du profil
Informations personnelles :
Localisation : France

Informations professionnelles :
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : janvier 2006
Messages : 951
Points : 1 063
Points : 1 063
hummm

tu as un serveur web hébergé chez un tier (free, amen, ovh,...), un fichier test.sql dessus.
tu as un acces FTP pour acceder à tes fichiers sur ce serveur.
tu veux télécharger un fichier depuis ton serveur vers ta machine.

HTTP peut le faire. tu peux même y mettre du https+authentification ou une session ou tout ce que tu veux.

La seule chose à faire pour toi c'est d'avoir un script sur ton ordinateur local qui récupère le fichier automatiquement (quel langage de script? un shell php ou un autre (du vb sous windows par exemple) ) ou de le faire à la main (via un navigateur web, via fillezilla ?).

Je pourrai te donner plus d'info mais comme je fais semblant de ne pas imaginer ton objectif, je ne peux pas dire plus.
__________________
PHP fait nativement la validation d'adresse électronique Vous êtes perdu en PHP? rassurez-vous ici (en)
Utilisez le bouton résolu!
gene69 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/02/2011, 11h47   #3
Invité de passage
 
Inscription : février 2011
Messages : 4
Détails du profil
Informations forums :
Inscription : février 2011
Messages : 4
Points : 1
Points : 1
merci de ta réponse rapide et de ton "humour" ... sympa !!! Mais je dois avouer que je suis un peu perdu ... Je veux automatiser la procédure en php pour un tiers et qu'il n'ait pas à se servir du ftp ... Mon objectif : que ce fichier "test.sql" que j'ai nommé par erreur "toto.sql" dans mon post, soit transférer sur mon disque dur !....
top16 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/02/2011, 12h00   #4
Modérateur
 
Avatar de ThomasR
 
Homme Thomas Rambaud
Développeur Web
Inscription : décembre 2007
Messages : 2 139
Détails du profil
Informations personnelles :
Nom : Homme Thomas Rambaud
Âge : 25
Localisation : France

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : décembre 2007
Messages : 2 139
Points : 2 884
Points : 2 884
C'est impossible, le serveur Web n'a en aucun cas accès au disque de ta machine, il ne peut qu'envoyer des données par le protocole HTTP, au travers d'un navigateur Web par exemple.

Néanmoins, tu peux très bien renvoyer le fichier sous forme d'un téléchargement, en accédant à l'URL du script : http://php.developpez.com/faq/?page=..._forcedownload.

Sinon, sans passer par un serveur Web, tu peux très bien créer une tâche de fond (ou executable) qui toutes les n minutes va récupérer le fichier et l'écrire sur ton disque, mais surement pas avec PHP. Tu peux faire çà en quelques minutes en .net/c#/java/etc...
__________________
Développeur Web, accessoirement geek (ou l'inverse)
http://thomasrambaud.com
ThomasR est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/02/2011, 12h06   #5
Invité de passage
 
Inscription : février 2011
Messages : 4
Détails du profil
Informations forums :
Inscription : février 2011
Messages : 4
Points : 1
Points : 1
merci de ta réponse ... je vais étudier le "problème" du transfert par http car je ne connais rien aux autres langages ... Toutefois, une dernière question : si je protège l'accès à mon site (ou se trouve le fichier) via un "htacces" , cela posera-t-il un problème ? merci d'avance

Je suis vraiment une "bille" ... je n arrive même pas à télécharger mon fichier depuis un lien "<a href =" http ......"> ... ne riez pas ... merci
top16 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/02/2011, 13h21   #6
Invité de passage
 
Inscription : février 2011
Messages : 4
Détails du profil
Informations forums :
Inscription : février 2011
Messages : 4
Points : 1
Points : 1
ouf ... ça y est la "bille" a réglé le problème ... merci à vous !!!
top16 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 11h44.


 
 
 
 
Partenaires

Hébergement Web