下载特定文件夹中的文件

时间:2015-07-23 14:52:40

标签: javascript php html

我有一个链接,允许我在我的网页中下载文本文件,但问题是我希望用户能够选择保存文件的位置我的意思是当他点击链接时应该打开一个窗口所以他可以将文件保存在他喜欢的任何地方,任何人都可以告诉我该怎么做?谢谢 。 这是我的代码的一部分:

$fichierres=fopen('res.txt','a');
ftruncate($fichierres,0); 
...
fputs($fichierres, $t."\r\n");
...
fclose($fichierres);
echo'   <div style="text-align:center"><br>  <button id="download" width="100px" class="styled-button-8"><a href="res.txt" download="res.txt" style="color: #FFFFFF"><b>Download</b></a></button></div><br>';

2 个答案:

答案 0 :(得分:0)

大多数浏览器会自动打开他们可以阅读的任何文件 - 确切地说它们应该如何工作。这包括.txt文件,您无法阻止此操作。

您可以做的是将链接作为主播(<a href="/myfile.txt">Download</a>)提供,并在链接旁边提供一条消息,告诉用户&#34;右键单击/保存链接为...&#34;下载 - 这将允许他们保存文件而不是下载。

右键菜单中的确切选项在浏览器之间会有所不同,但它始终与&#34;将链接另存为...&#34;

相似。

答案 1 :(得分:0)

http://www.w3.org/Protocols/rfc2616/rfc2616-sec19.html

  

19.5.1内容处理

     

Content-Disposition response-header字段已被提议为   表示如果用户,原始服务器建议默认文件名   请求将内容保存到文件中。导出此用法   来自RFC 1806 [35]中Content-Disposition的定义。

content-disposition = "Content-Disposition" ":"
                      disposition-type *( ";" disposition-parm )
disposition-type = "attachment" | disp-extension-token
disposition-parm = filename-parm | disp-extension-parm
filename-parm = "filename" "=" quoted-string
disp-extension-token = token
disp-extension-parm = token "=" ( token | quoted-string )
     

一个例子是

Content-Disposition: attachment; filename="fname.ext"

在PHP中,您将使用header函数发送此标头。请注意,必须在发送任何数据之前调用此方法。

header('Content-Disposition: attachment; filename="fname.ext"');