【问题标题】:Storing CSV file from browser to SERVER directory directly将 CSV 文件从浏览器直接存储到 SERVER 目录
【发布时间】:2013-02-02 12:01:40
【问题描述】:
header("Content-type: application/octet-stream");
header("Content-Disposition: attachment; filename=Download.csv");

当我在浏览器中运行脚本时,此代码可帮助我下载 csv 文件。

但是现在不是下载文件,而是可以直接将文件保存在文件夹中,

我的意思是如何修改代码,以便在我的脚本运行时它应该保护 csv 文件,而不是提示用户下载它。

例如:此代码将在目录中创建文件。

$ourFileName = "testFile.txt";
$ourFileHandle = fopen($ourFileName, 'w') or die("can't open file");

同样,我如何修改标头 Content-Disposition 以便它在文件夹中创建 csv 文件。

任何帮助都将得到应用。

谢谢

【问题讨论】:

  • 我不确定我理解你想要什么,你是说你希望你下载的 PHP 文件告诉用户文件应该下载到哪个文件夹?
  • 您希望在打开脚本后会发生什么?请记住,您无法控制下载后文件的保存位置。
  • @Jon 我想创建文件不是作为附件,而是作为目录中的生成文件
  • 设置标头与将其保存为文件无关,标头是它发送到浏览器的内容,因此如果您尝试将其保存在服务器上,fopen 应该可以工作,如果您想将其保存在客户端 - 您应该查看 JS 中新提供的客户端存储选项。

标签: php file csv


【解决方案1】:

您无法控制下载文件在客户端计算机上的保存位置。而你不应该这样做;想象一个网站在打开网站时会自动保存并替换您本地计算机上的文件?例如。它将'malicious_file.exe'下载到

C:\Documents and Settings\MyName\Start Menu\Programs\Startup\malicious_file.exe

这个文件会在登录时自动执行!

【讨论】:

    【解决方案2】:

    如果我对您的理解正确,您需要一个包含此行的 .htaccess 文件

    选项+索引

    这样你就可以看到文件夹中的所有文件

    【讨论】:

    • 如果该文件已经存在于服务器上,这将不是问题。请至少阅读标题,如果没有其他内容,请尝试理解问题的内容。
    猜你喜欢
    • 2013-03-18
    • 1970-01-01
    • 1970-01-01
    • 2018-09-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-23
    • 1970-01-01
    相关资源
    最近更新 更多