Php HTML源代码下载,而不是CSV文件
我有下面的源代码(PHP)用于下载CSV文件Php HTML源代码下载,而不是CSV文件,php,Php,我有下面的源代码(PHP)用于下载CSV文件 $file_name = date("YmdHis") . ".csv"; Header('Content-Type: text/csv'); Header("Content-disposition: attachment; filename=${file_name }"); Header("Content-type: application/octet-stream; name=${file_name }"); header('Pragma:
$file_name = date("YmdHis") . ".csv";
Header('Content-Type: text/csv');
Header("Content-disposition: attachment; filename=${file_name }");
Header("Content-type: application/octet-stream; name=${file_name }");
header('Pragma: 1');
header('Cache-control: private, max-age=60, pre-check=30');
session_cache_limiter('private_no_expire');
$csv = $header.$contents;
if (mb_detect_encoding($csv) == 'SJIS-win') {
$csv = mb_convert_encoding($csv, 'UTF-8', 'SJIS-win');
}
echo $csv;
exit;
使用$header和$contents从数据库中读取。
这个源代码在Firefox上运行得很好,但我在Quihoo360(中国的一个浏览器叫:360)上遇到了问题安全浏览器). 它不是下载包含从数据库读取的内容的CSV文件,而是下载包含显示页面的HTML源内容的CSV文件
有人能告诉我如何解决这个问题吗
非常感谢。请尝试将内容类型设置为:
Content-Type: text/plain
看到一个很好的列表
编辑:在PHP中尝试以下操作:
header('Content-Type: application/csv');
header('Content-Disposition: attachment; filename=example.csv');
header('Pragma: no-cache');
// echo out the csv file
使用
application/force download
的内容类型强制浏览器下载您的文件。我想这就是您要求的,对吗?您只需要一个内容类型标题。将第一个更改为text/plain并删除第三个。您好,siidheesh,文件下载成功,但内容不正确。而不是con从DB中选择的帐篷,它下载了显示页面的HTML源谢谢Fluffeh,我试过了,但这个问题似乎无法解决。Hi Fluffeh,我试过了,但得到了相同的结果。我确认并看到了正确选择的数据,它似乎不是从数据库中回显所选内容,而是回显返回的HTML源ch用于在屏幕上显示我不知道为什么,但当我在下载URL中添加一个参数时,它解决了这个问题