web-dev-qa-db-fra.com

Envoyez un fichier CSV à l'utilisateur sur FAPI Form Soumettre

J'ai une forme FAPI qui collecte des informations de l'utilisateur, puis génère un fichier CSV. L'intention est lorsque l'utilisateur clique sur "Exporter" sur le formulaire, le CSV est immédiatement téléchargé.

Cependant, lorsque le gestionnaire de soumission appelle la fonction génératrice de CSV, le formulaire vient de rediriger, plutôt que de servir le CSV.

Y a-t-il un moyen de faire ce formulaire servir le CSV à l'utilisateur directement, sans générer de fichier temporaire?

4
Chris Cohen

Je suppose que le code de ce blog post http://sirkitree.net/node/2 aidera. Essentiellement, vous devez utiliser la sortie () ou mourir () à la fin de votre gestionnaire de soumission pour éviter la redirection.

 $ file = $ en-tête. "\ n"; 
 foreach ($ comptes comme $ rang) {[. € .]} 
 Rubrique ('Cache-Control: Must-revalidate, post-chèque = 0, pré-vérification = 0'); 
 Header ('Type de contenu: Texte/CSV') ; [.____ 
6
Sivaji