Rumah > pembangunan bahagian belakang > tutorial php > Bagaimanakah Saya Boleh Memaksa Muat Turun Fail daripada Skrip PHP yang Dicetuskan oleh AJAX?

Bagaimanakah Saya Boleh Memaksa Muat Turun Fail daripada Skrip PHP yang Dicetuskan oleh AJAX?

Barbara Streisand
Lepaskan: 2024-12-07 16:19:16
asal
287 orang telah melayarinya

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

Muat Turun Fail Melalui AJAX dalam PHP

Dalam senario ini, anda mempunyai butang yang mencetuskan panggilan AJAX ke fungsi PHP, 'csv .php'. Skrip PHP menjana fail CSV dan anda ingin memuat turunnya sama ada dengan segera atau secara paksa setelah selesai.

Kod PHP yang disediakan, apabila dijalankan dalam 'csv.php', mengeluarkan kandungan fail ke halaman dan bukannya memulakan muat turun. Ini berlaku kerana AJAX tidak direka bentuk asli untuk muat turun fail.

Penyelesaian:

Untuk memaksa muat turun fail dengan PHP, anda boleh menggunakan teknik berikut:

  • Buat tetingkap baharu menggunakan JavaScript:

    window.open("csv.php", "_blank");
    Salin selepas log masuk
  • Ubah hala lokasi dokumen semasa (muat turun paksa):

    document.location = "csv.php";
    Salin selepas log masuk

Pendekatan ini memulakan permintaan HTTP baharu, menggesa penyemak imbas untuk memuat turun fail. Tetapan pengepala yang diingini untuk permulaan muat turun disertakan dalam 'csv.php'.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memaksa Muat Turun Fail daripada Skrip PHP yang Dicetuskan oleh AJAX?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan