Bonjour,

j'ai un fichier $msg que je dois à la fois envoyer sur mon serveur et sur le serveur FTP d'un partenaire.

Pour le charger sur mon serveur c'est facile :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
$co_txt = 'monfichier.txt';
 
$file = fopen ("mon_dossier_distant/$co_txt", 'w+');
if (-1 == fwrite ($file, $msg)) {die ('Enregistrement Impossible');}
fclose ($file);
Ensuite je me connecte sur le FTP du partenaire, pas de message d'erreur.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
 
$file = "mon_site/mon_dossier_distant/$co_txt";
 
$remote_file = $tab['Rep'] . '/' . $co_txt;
 
print $remote_file . '<br>' . $file  . '<br>' . $tab['Type'];
// Retourne
POR/19.txt
https://www.mon_site/mon_dossier_distant/19.txt
FTP_BINARY
 
 
ftp_put ($conn_id, $remote_file, $file, $tab['Type']);
Je me prends un warning

Warning: ftp_put() expects parameter 4 to be int, string given...

Et le chargement sur le site du partenaire ne se fait pas.

Je suppose que $file doit être un fichier local.

Mais je n'ai trouvé nulle part la façon de créer le créer le fichier local et de donner ensuite une bonne adresse à ftp_put.

Merci de votre aide.