Problème upload fichier

leTiDevDu54 -  
 leTiDevDu54 -
Bonjour à tous,
voilà j'aimerai pouvoir récupérer un fichier sur un ftp et en faire une copier sur un serveur.

Voici mon code php :
<?php
 
	$ftp_server = "11.111.111.111";
	$login = "difox";
	$password = "****";
 
	//liaison au serveur ftp	
	$connect = ftp_connect($ftp_server);
 
	//connexion au serveur ftp
	if(ftp_login($connect, $login, $password))
	{
		echo "Connexion réussie<br/>";
	}
	else
		echo "Connexion impossible";
 
	//on récupère le fichier
	$fichiers = ftp_nlist($connect, '.');
 
	//on le transfert sur le serveur
	$upload = ftp_put($connect, "www/", $fichiers[0], FTP_BINARY);
 
	if (!$upload) {
	echo "Le transfert Ftp a échoué";
	} else {
	echo "Téléchargement OK";
	}
 
	ftp_close($connect); 
?>


J'ai testé j'arrive correctement à me connecter, je récupère bien le bon fichier que je veux dans la variable $fichiers, mais il m'affiche toujours "Le transfert ftp a échoué", et je ne comprend pas pourquoi.

Alors je vous donne l'arborescence d'ou se trouve mon fichier avec le code php, peut être que ça peut aider:
/www/testing/monFichierPhp.php

Merci d'avance

A voir également:

5 réponses

Utilisateur anonyme
 
Bonjour

Je ne comprends pas les paramètres de ton ftp_put.
Tu cherches à créer un fichier distant "www/", ce n'est pas un nom de fichier correct.
Tu vas rechercher le nom du fichier local ($fichiers[0]) sur ton serveur distant ? Ce n'est pas interdit, mais étonnant...
0
leTiDevDu54 Messages postés 3 Date d'inscription   Statut Membre Dernière intervention  
 
c'est peut être ftp_get plutôt ? fin j'ai essayer avec ftp_get et changer les paramètres mais c'est le même problème.
En fait j'ai mon fichier php qui est sur un serveur dans le dossier : missme/www/testing/ et je dois chercher un fichier sur un serveur ftp et en faire une copie sur le serveur ou j'ai mon script php mais dans le dossier missme/www/.
Et $fichier[0] c'est bien le fichier que je veux récupéré, j'ai testé par un simple echo $fichier[0] et ça m'affiche le fichier.
0
Utilisateur anonyme
 
D'après ce que tu décris, c'est bien un GET que tu veux faire.
$upload= ftp_get ( $connect, "../".$fichiers[0],$fichiers[0] , FTP_BINARY ) ;

Pour le nom du fichier local, il ne suffit pas de préciser le répertoire, il faut le nom complet. Je suppose que tu veux reprendre le même nom que pour le fichier distant

Remarque :
j'ai testé par un simple echo $fichier[0] et ça m'affiche le fichier. Ça m'étonnerait. Je veux bien que ça t'affiche le nom, pas le fichier. Il ne faut pas confondre les deux !
0
leTiDevDu54
 
J'ai modifié comme tu m'as dit, et j'ai retesté, mais malheureusement il m'affiche toujours "Le transfert a échoué" =(
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
leTiDevDu54
 
Ca fonctionne en fait quand je passe par une variable ou je stock le chemin de mon fichier local.
Merci quand meme
0