if(ftp_chdir($ftp,'/upload/100406/'));
Alors ceci doit obligatoirement fonctionner:
if(ftp_chdir($ftp, '"/upload/' . date('ymd') . '/"'));
Ou alors tu as un bug avec ta fonction date(), donc test:
echo '"/upload/' . date('ymd') . '/"';if(ftp_chdir($ftp,'/upload/100406/'));
Alors ceci doit obligatoirement fonctionner:
if(ftp_chdir($ftp, '"/upload/' . date('ymd') . '/"'));
Ou alors tu as un bug avec ta fonction date(), donc test:
echo '"/upload/' . date('ymd') . '/"';<?php
if(($ftp = ftp_connect('192.168.0.17',21)) == false)
{
echo 'erreur de connexion...';
exit;
}
if(!ftp_login($ftp, 'invit1', 'mdp1'))
{
echo 'Identification échouée...';
exit;
}
if(ftp_chdir($ftp, '"/upload/' . date('ymd') . '/"'))
{
ftp_get($ftp, '/home/solafin/Documents/Work/toto.txt', 'toto.txt', FTP_BINARY);
}
else
{
echo 'impossible de changer de dossier';
}
ftp_close($ftp);
?><?php
if(($ftp = ftp_connect('192.168.0.17',21)) == false)
{
echo 'erreur de connexion...';
}
if(!ftp_login($ftp, 'invit1', 'mdp1'))
{
echo 'Identification échouée...';
}
if(ftp_chdir($ftp,'/upload/100406/'));
else
{
echo 'impossible de changer de dossier';
}
ftp_get($ftp, '/home/solafin/Documents/Work/toto.txt', 'toto.txt', FTP_BINARY);
ftp_close($ftp);
?>
Si oui, alors un truc m'échappe <?php
$chemin = 'upload/' . date('ymd');
$fichier = 'toto.txt';
$local = '/home/solafin/Documents/Work/' . $fichier;
$ftp = ftp_connect('192.168.0.17') or die('Erreur de connexion...');
$login = ftp_login($ftp, 'invit1', 'mdp1') or die('Identification échouée...');
if (ftp_chdir($ftp, $chemin)) {
if (ftp_get($ftp, $local, $fichier, FTP_BINARY)) {
echo 'Fichier téléchargé: ' . $fichier;
} else {
echo 'Erreur de téléchargement: ' . $fichier;
}
} else {
echo 'Impossible de changer de dossier: ' . ftp_pwd($ftp) . ' -> ' . $chemin;
}
ftp_close($ftp);
?>
Ensuite, tu peux aussi utiliser la méthode classique de téléchargement avec la fonction readfile():
<?php
$chemin = '/upload/' . date('ymd') . '/';
$fichier = 'toto.txt';
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename="' . basename($fichier) . '"');
header('Content-Transfer-Encoding: binary');
header('Content-Length: '. filesize($fichier));
readfile($chemin . $fichier);
?>
Au moins la tester if(ftp_chdir($ftp, '"/upload/' . date('ymd') . '/"'))
il fallait plutot faire:
if(ftp_chdir($ftp, '/upload/' . date('ymd') . '/'))
et maintenant ça marche comme sur des roulette (bien qu'on ne marche pas sure des roulettes, mais on roule sur des roulettes, j'ai tjr trouvé que cette expression manquait de bon sens....m'enfin