Transférer plusieurs fichiers CSV d'un serveur B (FTP) vers un serveur A (sur lequel se trouve le script PHP)
Bonjour à tous,
J'espère que vous allez bien ?
Je suis actuellement en train de créer un script en PHP qui sera exécuté via une tâche cron sur un serveur A et qui permettra entre autre d'aller récupérer sur un serveur B (FTP) plusieurs fichiers CSV.
Voici mon code actuel :
Code:
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
| <?php
ini_set('display_errors', '1');
$ftp_server = "Hôte";
$ftp_user_name = "UserName";
$ftp_user_pass = "UserPass";
$lang = "fr";
$ftp = ftp_connect($ftp_server);
// Identification avec un nom d'utilisateur et un mot de passe
$login_result = ftp_login($ftp, $ftp_user_name, $ftp_user_pass);
//Upload des fichiers
if(ftp_get($ftp, __DIR__ ."/Fichiers_csv/categ/category_2403_".$lang.".csv", "/files/categories/csv/prestashop/category_2403_".$lang.".csv", FTP_ASCII)) {
if(!ftp_get($ftp, __DIR__ ."/Fichiers_csv/products/product_2403_".$lang.".csv", "/files/products/csv/prestashop/presta_product_2403_".$lang.".csv", FTP_ASCII)) {
echo "Il y a eu un problème lors de l'envoie du fichier <strong>".__DIR__ ."/Fichiers_csv/products/product_2403_".$lang.".csv</strong>\r\n";
exit;
} else {
echo "Aucun problème lors de l'envoie du fichier <strong>".__DIR__ ."/Fichiers_csv/products/combination_2403_".$lang.".csv</strong>\r\n";
}
if(ftp_get($ftp, __DIR__ ."/Fichiers_csv/products/combination_2403_".$lang.".csv", "/files/combinations/csv/prestashop/presta_combination_2403_".$lang.".csv", FTP_ASCII)) {
echo "Aucun problème lors de l'envoie du fichier <strong>".__DIR__ ."/Fichiers_csv/products/combination_2403_".$lang.".csv</strong>\r\n";
} else {
echo "Il y a eu un problème lors de l'envoie du fichier <strong>".__DIR__ ."/Fichiers_csv/products/combination_2403_".$lang.".csv</strong>\r\n";
exit;
}
} else {
echo "Il y a eu un problème lors de l'envoie du fichier <strong>".__DIR__ ."/Fichiers_csv/categ/category_2403_".$lang.".csv</strong>\r\n";
exit;
}
// Fermeture de la connexion FTP
ftp_close($ftp);
?> |
Le problème c'est qu'en général j'obtiens le message suivant :
Citation:
Warning: ftp_get(): Failed to establish connection. in /...
Parfois le premier fichier se transfert sur le serveur A et l'erreur intervient pour le fichier suivant et parfois aucun fichier n'est transféré.
Avez-vous une solution pour résoudre ce problème s'il vous plaît ?
Merci par avance.