0

PHPコードを介してダウンロードする問題に直面しているspaceような名前のCSVファイルがある場合は常に、内部にスペースがないような他のCSVは正常に動作し、正しくダウンロードされます。xyz abc.csv

以下は私のダウンロードコードです:

$file_path = 'http://www.servername.com/subfolder/subfolder/';
$file = urlencode('Today new_18-10-2012_21-13-21.csv');

header('Content-Type: application/csv');
header('Content-Disposition: attachment; filename="'.$file.'"');
header('Pragma: no-cache');
readfile($file_path.$file);

ファイルがダウンロードされると、常に0 bytes元のファイル93kbのサイズになります

この問題に対する提案。

前もって感謝します !

4

2 に答える 2

0

このコードを使用してください。それはあなたに役立つかもしれません。しかし、私は主な問題は間隔です。

$Filename = 'Today new_18-10-2012_21-13-21.csv'; 
$path = "http://www.servername.com/subfolder/subfolder/";
$file = $path.$filename;
header("Cache-Control: public");
header("Content-Description: File Transfer");
header("Content-Disposition: attachment; filename=$filename");
header("Content-Type: application/csv");
header("Content-Transfer-Encoding: binary");
readfile($file);
于 2012-10-19T06:26:40.490 に答える
0

これを試してください...rawurlencodeの代わりに使用する必要がありurlencodeます。

$file_path = 'http://www.servername.com/subfolder/subfolder/';

//just filename, no need to save file with url encoded name!
$file = 'Today new_18-10-2012_21-13-21.csv';

header('Content-Type: application/csv');
header('Content-Disposition: attachment; filename="' . $file . '"');
header('Pragma: no-cache');

//here comes url encoding
readfile($file_path . rawurlencode($file));

それは私にとってはうまく機能しています...

于 2012-10-19T07:22:40.580 に答える