PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 15-06-2009 15:14:08

Bibi
Membre
Lieu : Bobigny (93)
Inscription : 04-06-2009
Messages : 32

[ajax] le resultat du xlhttprequest, est un script "header"

Bonjour,

Voila j'utilise ajax pour pouvoir exporter les fiches cochés.

Seulement, lorsque je fait alert(sData); j'ai le header qui s'affiche dans une popup(c'est un fichier excel)...alors que je voudrais juste que ce fichier soit proposer a l'enregistrement a l'utilisateur.

y a t'il un moyen de renvoyé un header() par l'intermédiaire d'un xmlhttprequest ?


J'ai toujours raison ! Sauf quand j'ai tort, et même quand j'ai tort, j'ai raison, parce que je sais que j'ai tort !

Hors ligne

#2 18-06-2009 21:06:10

xTG
GrandGourou
Inscription : 18-06-2009
Messages : 1 127
Site Web

Re : [ajax] le resultat du xlhttprequest, est un script "header"

Bonsoir,
le fonctionnement que tu décris est tout à fait correct, alert est là pour afficher des messages rien de plus.

Ce que tu souhaites est possible en Ajax mais je n'en ai pas les connaissances, après quelques recherches j'ai trouvé ce système qui le faisait :
http://ecosmear.com/relay/demo/

Je ne sais pas ce que tu utilises et comment tu veux envoyer le fichier, mais sais-tu qu'il est possible de le faire en PHP ?
Il te suffit d'appeler par Ajax une page PHP forçant le téléchargement de ton fichier exel non ?

Un petit bout de code PHP pour t'aider provenant de http://www.apprendre-php.com :

<?php
/*******************************************************
* Déclaration de la fonction
*******************************************************/
/**
* La fonction force le téléchargement d'un fichier
*
* @author : Hugo HAMON
* @param : string $nom nom du fichier
* @param : string $situtation emplacement sur le serveur web
* @param : integer $poids poids du fichier en octets
* @return : void
**/
function forcerTelechargement($nom, $situation, $poids)
{
header('Content-Type: application/octet-stream');
header('Content-Length: '. $poids);
header('Content-disposition: attachment; filename='. $nom);
header('Pragma: no-cache');
header('Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0');
header('Expires: 0');
readfile($situation);
exit();
}
/*******************************************************
* Appel de la fonction
*******************************************************/
forcerTelechargement('compte.pdf', './documents/compte.pdf', 10000);
?>

Dernière modification par xTG (18-06-2009 21:07:31)

Hors ligne

Pied de page des forums