2011-03-31 50 views
1

我使用查询生成文件如何强制用户下载(另存为对话框)刚刚生成的文件

SELECT * INTO OUTFILE " . "'c:/myfile.csv'" . " FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n' FROM sample 

我的文件现在位于C:/myfile.csv中。我希望用户下载该文件。我怎样才能做到这一点。

Expers请帮忙。

+3

http://stackoverflow.com/search?q=[php]+force+download – 2011-03-31 17:39:14

+0

对不起,创建重复的朋友......真的很抱歉 – Rajasekar 2011-03-31 17:44:48

回答

2

,你可以:

  • 发送一个HTTP头,以表示那种你发送的数据,并应被下载到文件中。
  • 然后,发送该文件的内容。


在PHP中,这样的事情应该做的伎俩:

header('Content-Disposition: attachment; filename="my-file.csv"'); // The name which will be suggested to the user 
readfile('c:/myfile.csv'); // outputs the content of the file 
2

你需要设置Content-disposition: attachment在头中。在PHP中,使用头功能来实现这一点。

1
if([email protected]($fileString,'r')){ 
die("Cannot Open File!"); 
} else { 
header("Cache-Control: ");// leave blank to avoid IE errors 
header("Pragma: ");// leave blank to avoid IE errors 
header("Content-type: text/csv"); 
header("Content-Disposition: attachment; filename=\"".$fileName."\""); 
header("Content-length:".(string)(filesize($fileString))); 
sleep(1); 
fpassthru($fdl); 
} 
相关问题