Maison > développement back-end > tutoriel php > Comment puis-je forcer le téléchargement d'un fichier à partir d'un script PHP déclenché par AJAX ?

Comment puis-je forcer le téléchargement d'un fichier à partir d'un script PHP déclenché par AJAX ?

Barbara Streisand
Libérer: 2024-12-07 16:19:16
original
290 Les gens l'ont consulté

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

Télécharger le fichier via AJAX en PHP

Dans ce scénario, vous disposez d'un bouton qui déclenche un appel AJAX à une fonction PHP, 'csv .php'. Le script PHP génère un fichier CSV et vous souhaitez le télécharger rapidement ou de force une fois terminé.

Le code PHP fourni, lorsqu'il est exécuté dans « csv.php », affiche le contenu du fichier sur la page plutôt que sur la page. lancer un téléchargement. Cela se produit car AJAX n'est pas conçu nativement pour les téléchargements de fichiers.

Solution :

Pour forcer un téléchargement de fichier avec PHP, vous pouvez utiliser la technique suivante :

  • Créez une nouvelle fenêtre en utilisant JavaScript :

    window.open("csv.php", "_blank");
    Copier après la connexion
  • Rediriger l'emplacement actuel du document (forcer le téléchargement) :

    document.location = "csv.php";
    Copier après la connexion

Cette approche initie une nouvelle requête HTTP, invitant le navigateur à télécharger le fichier. Les paramètres d'en-tête souhaités pour le lancement du téléchargement sont inclus dans 'csv.php'.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal