Bonjour,
J'ai un site qui tourne sur un serveur Apache et qui se connecte à un ftp pour télécharger un fichier.
Lorsque je télécharge un fichier texte (autre qu'un fichier image), ce fichier est bien téléchargé mais contient en plus le code HTML de la page qui l'appelle !
Par contre le fichier temporaire créé est absolument correct !
Dans le cas d'une image, photo, ce fichier est téléchargé correctement ...
Code html : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
 
<!---fichier téléchargé -->
Line 1
line 2
line 3
<!-- Fin du fichier téléchargé -->
<!DOCTYPE html><HTML><HEAD>
<title>WebFTP</title>
<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=utf-8">
<link rel="shortcut icon" type="image/ico" href="/favicon.ico">
…..
Comment résoudre ce problème?
Voici le bout de code qui effectue le téléchargement
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
19
20
21
22
 
    if($id_ftp=login_ftp()) {
  	ftp_set_option($id_ftp, FTP_TIMEOUT_SEC, 180);
  	$remote_file = GetRepertoire();
  	if ($_SESSION['webftp']['niveau']>0)
  	  $remote_file .="/";
  	$remote_file .= $_POST['file'];
        $file_temp="temp/tmp.bin";
  	if (ftp_get($id_ftp, $file_temp, $remote_file, FTP_BINARY, 0)) {
  	  ftp_close($id_ftp);
          header("content-type: application/octet-stream");
          header("Content-Disposition:attachment; filename=$_POST[file]");
          header('Content-Length: ' . filesize($file_temp));
          ob_clean();
          readfile($file_temp) or die("Download - File $_POST[file] not found.");
          unlink($file_local);
       }
       else
  	  die("Download - File $remote_file not found.");
   }
   else
     die("Download - connexion impossible");
Merci d'avance pour vos conseils.