首頁 >後端開發 >php教程 >如何使用 AJAX 和 PHP 強制下載檔案而不是顯示其內容?

如何使用 AJAX 和 PHP 強制下載檔案而不是顯示其內容?

Barbara Streisand
Barbara Streisand原創
2024-12-05 06:45:11579瀏覽

How to Force a File Download Instead of Displaying its Contents Using AJAX and PHP?

透過AJAX 呼叫PHP 下載檔案

問題:

問題:

問題:

Ajax 函數從以下位置檢索資料一個PHP 檔。儘管使用 PHP 腳本在腳本末尾提示文件下載,但文件的內容卻顯示在頁面上。如何強制下載檔案?

答案:

window.open('download.php?file=file.csv');
AJAX 不適用於檔案下載。要強制下載文件,請考慮以下解決方案:

使用 JavaScript window.open() 或 document.location = 方法打開一個新窗口,並將下載鏈接作為地址。

document.location = 'download.php?file=file.csv';
使用window.open() 的範例:

$fileName = 'file.csv';
$downloadFileName = 'newfile.csv';

if (file_exists($fileName)) {
    // Determine the download script URL
    $downloadURL = 'download.php?file=' . $fileName;

    // Output JavaScript to open a new window with the download script URL
    echo '<script type="text/javascript">window.open("' . $downloadURL . '");</script>';
    exit;
}
使用範例document.location:

使用範例document.location:使用範例。 >修訂的PHP腳本:此解決方案將提示下載 file.csv 檔案而不顯示其頁面內容。

以上是如何使用 AJAX 和 PHP 強制下載檔案而不是顯示其內容?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn