Bonjour,

Je dois uploader un fichier sur un serveur distant, voici ce que je souhaite faire :

- récupération des données utilisateur,
- création d'un fichier .json,
- upload du fichier au serveur distant.

Cela me donne comme erreur suivant :
Can't open that file: No such file or directory

alors que le fichier a bien étgé crée.

Voici la methode qui crée et upload le fichier
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
public function upload_file(){
		//creation du fichier
		$f = fopen(ROOT.DS.$this->dirname.DS.$this->filename,"w+");
			fwrite($f,$this->informations_a_envoyer);
		fclose($f);
		//direction des fichiers
		$local_file 	= ROOT.DS.$this->dirname.DS.$this->filename ;
		$remote_file 	= DS.$this->dirname.DS.$this->filename ;
 
		$ftp = new ftp();
		if($ftp->connect()){
			echo 'connecter';
		}else{
			echo 'non connecter' ;
		}
		$ftp->upload($local_file, $remote_file);
 
	}
Voici la methode qui permetla connection au serveur de la class ftp
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
public function connect($isPassive = true){
		$server		= config::$config['ftp_connect'] ;
		$ftpUser	= config::$config['login'];
		$ftpPassword= config::$config['password'];
		$this->connectionId = ftp_connect($server);
		$loginResult = ftp_login($this->connectionId, $ftpUser, $ftpPassword);
		ftp_pasv($this->connectionId, $isPassive);
		if ((!$this->connectionId) || (!$loginResult)) {
			$this->logMessage('FTP connection has failed!');
			$this->logMessage('Attempted to connect to ' . $server . ' for user ' . $ftpUser, true);
			return false;
		} else {
			$this->logMessage('Connected to ' . $server . ', for user ' . $ftpUser);
			$this->loginOk = true;
			return true;
		}
	}
Voici la methode qui permet uploader le fichier de la class ftp
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
public function upload($fileFrom, $fileTo){
		$asciiArray = array('txt', 'csv','json');
		$tab = explode('.', $fileFrom);
		$extension = end($tab);
		$mode = (in_array($extension, $asciiArray)) ?FTP_ASCII    :FTP_BINARY;//1:0;
 
 
		$upload = ftp_put($this->connectionId, $fileTo, $fileFrom, $mode);
		echo '<p>upload : '.$upload.'</p>' ;
		if (!$upload) {
			$this->logMessage('FTP upload has failed!');
			return false;
		} else {
			$this->logMessage('Uploaded "' . $fileFrom . '" as "' . $fileTo);
			return true;
		}
	}
En espérant que quelqu'un pourra m'aidé.
Merci