0

私はjQueryとphpを使用しているアプリに取り組んでいます。データを保存するファイル名が既にある [名前を付けて保存] ダイアログをユーザーに表示したいと考えています。さて、この件に関しては、以下を使用するかなりの数の投稿があります。

header('Content-disposition: attachment;filename=whatever.dat');

私が見た別のテクニックがあります:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns='http://www.w3.org/1999/xhtml'> 
  <head>
    <title>iframe downloader thingy</title>
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>
    <script type="text/javascript">
      $(document).ready(function() {
        $('a#linky').click(function(){
          var iframe = document.createElement("iframe"); 
          iframe.src = 'http://cl.ly/120d44203F223O1X2T43/example_branding.zip'; 
          iframe.style.display = "none"; 
          document.body.appendChild(iframe);
          return false;
        });
      });
    </script>
  </head>
  <body>
    <a id="linky">Click to download</a>
  </body>
</html>

PHPサーバースクリプトでさらに処理するために、名前を付けて保存ダイアログからユーザーが選択したパス全体を返す必要があります。私がやろうとしているのは、いくつかの MySQL データを取得し、そのデータをカンマ区切りのテキスト ファイルとして Outlook または Thunderbird メール クライアントへの入力として保存することです。

うまくいけば、私はこれを明確に説明しました。ありがとうございました

エド・コーエン

4

1 に答える 1

0

ブラウザの「名前を付けて保存」ダイアログで、この小さなテキスト行にアクセスする方法は絶対にありません。ただし、できることは、ブラウザが取得するのとまったく同じソースから情報を取得することです。

ダウンロード可能なファイルへの URL を指定すると、ダウンロード URL がブラウザに提供する「Content-disposition」ヘッダーを取得する PHP コードを記述できるはずです。

于 2012-06-25T01:05:59.723 に答える