IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Programmation et administration système Perl Discussion :

Connection et deconnection immediate avec net::FTP


Sujet :

Programmation et administration système Perl

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Connection et deconnection immediate avec net::FTP
    Bonjour.

    Je suis actuellement en train de realiser une petite application permettant de se connecter a un ftp pour recuperer ou deposer des fichiers.

    Mon probleme vient du faite qu'apres l'instanciation de l'objet :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    my $Ftp = Net::FTP->new("$Tableau_URL_FTP[1]",Port=>"$Tableau_PORT_FTP[1]");
    puis de la connection au FTP :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $Ftp->login($Tableau_LOGIN_FTP[1],$Tableau_MDP_FTP[1]);
    je pense etre deconnecte immediatemment car si je veux recuperer ou deposer un fichier vers ou depuis le FTP, et bien le fichier se cree mais il n'y a rien a l'interieur.

    Pour vous montrer un exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    	#connexion au FTP
    	my $Ftp = Net::FTP->new("$Tableau_URL_FTP[1]",Port=>"$Tableau_PORT_FTP[1]");
     
     
    	#Verification de la bonne connexion au FTP
    		if ($Ftp) {
    		print (FILE2 "<> $Nom_Jour $Jour $Mois $Annee <> $Heure:$Minute:$Seconde <> Connexion au FTP : OK\n");
    		}
     
    		if (!$Ftp) {
    		print (FILE2 "<> $Nom_Jour $Jour $Mois $Annee <> $Heure:$Minute:$Seconde <> Connexion au FTP : Echec\n$!\n");
    		}
     
     
    	#Identification sur le FTP
        $Ftp->login($Tableau_LOGIN_FTP[1],$Tableau_MDP_FTP[1]);
     
    	#Verification de la bonne identification au FTP
    		if ($Ftp) {
    		print (FILE2 "<> $Nom_Jour $Jour $Mois $Annee <> $Heure:$Minute:$Seconde <> Identification au FTP : OK\n");
    		}
     
    		if (!$Ftp) {
    		print (FILE2 "<> $Nom_Jour $Jour $Mois $Annee <> $Heure:$Minute:$Seconde <> Identification au FTP : Echec\n$!\n");
    		}
     
     
    	#Verification de l'existance du repertoire 'Archive'
    	unless (-e "ftp:////j3suscri3.hd.free.fr//Archive") {
    	print "Il est manquant";
    	mkdir("ftp:////j3suscri3.hd.free.fr//Archive");
    	$Ftp->cwd ("ftp:////j3suscri3.hd.free.fr//Archive");
    	}
     
    	if (-e "ftp:////j3suscri3.hd.free.fr//Archive") {
    	$Ftp->cwd("ftp:////j3suscri3.hd.free.fr//Archive");
    	}
    A cet endroit là dans script, pour l'existance du repertoire Archive, il m'affiche bien "il est manquant", mais ne me le cree pas au cas ou il n'existe pas alors que la connection vient juste d'etre d'etabli.

  2. #2
    Expert éminent
    Avatar de Jedai
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2003
    Messages
    6 245
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2003
    Messages : 6 245
    Points : 8 586
    Points
    8 586
    Par défaut
    Premier point : Les slashs ne sont pas à échapper dans une chaîne de caractère, et surtout pas par d'autres slashs !
    Autrement dit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "ftp:////j3suscri3.hd.free.fr//Archive"
    Devrait être écrit simplement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "ftp://j3suscri3.hd.free.fr/Archive"
    Deuxième point : malheureusement, -e ou mkdir() ne marchent pas à travers le réseau. Il faut utiliser les méthodes de l'objet Net::FTP pour faire l'équivalent :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    #connexion au FTP
    	my $Ftp = Net::FTP->new("$Tableau_URL_FTP[1]",Port=>"$Tableau_PORT_FTP[1]");
     
     
    	#Verification de la bonne connexion au FTP
    		if ($Ftp) {
    		print (FILE2 "<> $Nom_Jour $Jour $Mois $Annee <> $Heure:$Minute:$Seconde <> Connexion au FTP : OK\n");
    		}
     
    		if (!$Ftp) {
    		print (FILE2 "<> $Nom_Jour $Jour $Mois $Annee <> $Heure:$Minute:$Seconde <> Connexion au FTP : Echec\n$!\n");
    		}
     
     
    	#Identification sur le FTP
        $Ftp->login($Tableau_LOGIN_FTP[1],$Tableau_MDP_FTP[1]);
     
    	#Verification de la bonne identification au FTP
    		if ($Ftp) {
    		print (FILE2 "<> $Nom_Jour $Jour $Mois $Annee <> $Heure:$Minute:$Seconde <> Identification au FTP : OK\n");
    		}
     
    		if (!$Ftp) {
    		print (FILE2 "<> $Nom_Jour $Jour $Mois $Annee <> $Heure:$Minute:$Seconde <> Identification au FTP : Echec\n$!\n");
    		}
     
     
    	#Verification de l'existance du repertoire 'Archive'
    	unless (grep m/^Archive$/ $Ftp->ls ) {
    	print "Il est manquant";
    	$Ftp->mkdir("Archive");
    	}
    	$Ftp->cwd ("Archive");
    --
    Jedaï

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Merci bien Jedai, je vais m'empresser d'essayer cela

Discussions similaires

  1. probleme d'envoi avec net::ftp suite recherche de fichier
    Par thebanque dans le forum Programmation et administration système
    Réponses: 1
    Dernier message: 02/02/2013, 12h16
  2. se connecter à DB2 avec .NET (sans installer DB2)
    Par salihovic dans le forum DB2
    Réponses: 7
    Dernier message: 13/02/2008, 15h24
  3. api commons.net.ftp : pb avec listFiles
    Par kam81 dans le forum Entrée/Sortie
    Réponses: 1
    Dernier message: 02/07/2007, 14h14
  4. [Net::FTP] can't open data connection
    Par dazz_x dans le forum Modules
    Réponses: 2
    Dernier message: 23/10/2006, 08h44
  5. Réponses: 4
    Dernier message: 11/05/2006, 16h57

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo