0

レポートデータを表示する drupal モジュールを作成しました。ページを表示しているユーザーがローカル システムにデータを txt または csv ファイルとして保存できるようにするオプションを含めたいのですが、次の問題が発生しています。

  1. 保存先のローカル ディレクトリを指定する方法。
  2. 実際にデータをディレクトリに保存する方法。

フォームの drupal API ドキュメントを読みました。ユーザーがシステムを参照してアップロードする場所を選択できるようにする「ファイル」入力タイプがあります。file_save_data() 関数も見ましたが、データは drupal サイト ディレクトリ内にのみ保存されるようです。

どんな助けでも大歓迎です。

4

2 に答える 2

1

保存先のローカル ディレクトリを指定する方法。

できません。ユーザーのブラウザーは、ファイルをブラウザーの既定のダウンロード ディレクトリに保存するか、ユーザーに場所を選択するように求めます。Web サイトにファイルの保存先を選択させることは、重大なセキュリティ ホールとなります。ウイルスへのデスクトップ ショートカットを作成したり、スタートアップ アイテムを追加したりする可能性があります。

于 2010-02-15T22:22:38.400 に答える
0

これは私のために働いた:

$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 がファイルに追加されます。

于 2010-02-27T01:03:48.740 に答える