1

csvファイルをダウンロードするためのリンクをユーザーに提供しています...ただ使用しています

Click <a href="report.csv">here</a> to download your file.

このテキストとリンクは、高さ 100 幅 400 の小さなポップアップ ウィンドウに表示されています。

ユーザーが「保存」をクリックすると、問題ありません。ファイルは選択した場所に保存されます

「開く」を選択しても、csv ファイルが小さなポップアップ ウィンドウに表示されます。これは私が望んでいるものではありません-Excelでファイルを開いて表示するか、「開く」ボタンを無効にすることも可能なオプションです。

どちらかを達成する方法はありますか?

ありがとう、

4

5 に答える 5

4

私はあなたがいくつかのJavaScriptを使用してそのポップアップボックスを開いていると仮定しています..小さな「ダウンロード」ポップアップボックスを表示/開くのではなく、代わりにこのリンクをWebページに表示することをお勧めします。そのため、誰かがリンクをクリックすると、ブラウザーに強制的にファイルをダウンロードさせます。ファイルを開こうとすると、ブラウザーのウィンドウ サイズと同じ幅のビューが表示される可能性があります。

// たとえば、zip ファイルのダウンロードを強制するには、ヘッダーを次のように送信します。

// Set headers
header("Cache-Control: public");
header("Content-Description: File Transfer");
header("Content-Disposition: attachment; filename=$file");
header("Content-Type: application/zip");
header("Content-Transfer-Encoding: binary");
于 2009-10-28T14:36:05.273 に答える
1

どのファイル タイプがどのアプリケーションによって開かれるかなど、ユーザーの設定を管理する権限はありません。設定に移動して、ファイルの関連付けを変更する必要があります。ただし、誰もが Excel をインストールしているわけではないので、この特定のアプリケーションでユーザーに csv ファイルを開くように強制することはお勧めできません。

また、[開く] オプションを無効にすることはできないと思います。これは、ウィンドウを表示するかどうか、または関連するアプリケーションを直接起動するかどうかなど、Web ブラウザーの構成によっても決まります。あなたの特定のケースでは幸運です。

于 2009-10-28T14:34:28.210 に答える
0

これは OS レベルであり、変更できないと思います。

于 2009-10-28T14:32:34.747 に答える
0

半分の解決策はtarget="_blank"、タグに追加することです。そうすれば、ユーザーが「開く」オプションを選択すると、少なくともファイルは新しい (フルスクリーン、または少なくともサイズ変更可能な) ウィンドウで開かれます。

それ以外は、ceejayoz が述べたように、ウィンドウの動作を変更することはできません。

于 2009-10-28T15:11:34.777 に答える
-1
  • この時点より前に他の出力を行わないようにしてください
  • csv 文字列を作成し、$csvString に保存します
  • $csv_filename で適切なファイル名を指定します
  • ヘッダーは、ブラウザにExcelでロードするように指示する必要があります

    header("Cache-Control: maxage=1");

    header("Pragma: public");

    header("Content-Type: application/vnd.ms-excel");

    header("Expires: 0");

    header("Cache-Control: must-revalidate, post-check=0, pre-check=0");

    header("content-disposition: attachment;filename=$csv_filename");

    echo $csvString;

于 2009-10-28T14:52:10.527 に答える