ホームページ >バックエンド開発 >PHPチュートリアル >AJAX によってトリガーされた PHP スクリプトからファイルを強制的にダウンロードするにはどうすればよいですか?

AJAX によってトリガーされた PHP スクリプトからファイルを強制的にダウンロードするにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-12-07 16:19:16331ブラウズ

How Can I Force a File Download from a PHP Script Triggered by AJAX?

PHP の AJAX 経由でファイルをダウンロード

このシナリオでは、PHP 関数 'csv への AJAX 呼び出しをトリガーするボタンがあります。 .php」。 PHP スクリプトは CSV ファイルを生成します。完了時にすぐに、または強制的にダウンロードしたいと考えています。

提供された PHP コードは、「csv.php」内で実行されると、ファイルの内容をページに出力するのではなく、ページに出力します。ダウンロードを開始しています。これは、AJAX がファイルのダウンロード用にネイティブに設計されていないために発生します。

解決策:

PHP でファイルのダウンロードを強制するには、次の手法を使用できます。

  • 次を使用して新しいウィンドウを作成しますJavaScript:

    window.open("csv.php", "_blank");
  • 現在のドキュメントの場所をリダイレクトします (強制ダウンロード):

    document.location = "csv.php";

このアプローチでは、新しい HTTP リクエストが開始されます。ブラウザにファイルをダウンロードするよう要求します。ダウンロード開始に必要なヘッダー設定は、「csv.php」内に含まれています。

以上がAJAX によってトリガーされた PHP スクリプトからファイルを強制的にダウンロードするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。