【问题标题】:Saving Data from Drupal to Local System File将数据从 Drupal 保存到本地系统文件
【发布时间】:2010-02-15 22:16:44
【问题描述】:

我创建了一个显示一些报告数据的 drupal 模块。我想包含一个选项,使查看页面的用户能够将数据保存为本地系统上的 txt 或 csv 文件,但我遇到了以下问题:

  1. 如何指定要保存到的本地目录。
  2. 如何将数据实际保存到目录中。

我已经阅读了表单的 drupal api 文档。有一种“文件”输入类型,允许用户浏览他们的系统并选择要上传的位置。我还查看了 file_save_data() 函数,但似乎数据只保存在 drupal 站点目录中。

任何帮助将不胜感激。

【问题讨论】:

    标签: drupal-6 saving-data


    【解决方案1】:

    如何指定要保存到的本地目录。

    你不能。用户的浏览器会将您的文件保存到浏览器的默认下载目录,或者会提示用户选择一个位置。让网站选择文件的保存位置将是一个主要的安全漏洞——他们可以创建病毒的桌面快捷方式、添加启动项等。

    【讨论】:

    • +1 不知道为什么您因正确回答问题而被否决 - OP 发布的答案实际上并未回答问题(如何指定位置)
    【解决方案2】:

    这对我有用:

    $file = file_save_data($data, $dest, $replace = FILE_EXISTS_RENAME); 
    drupal_set_header($header = "Content-type: text");
    drupal_set_header($header = "Content-Disposition: attachment; filename=$file.xls"); 
    readfile($file);  
    die(); 
    

    die() 需要进去,否则页面 html 将被附加到文件中。

    【讨论】:

      猜你喜欢
      • 2013-02-03
      • 2017-03-06
      • 1970-01-01
      • 2019-01-07
      • 2013-08-19
      • 2015-09-23
      • 2011-01-29
      • 1970-01-01
      相关资源
      最近更新 更多