Bonjour,
Savez-vous s'il est possible de faire apparaître une boîte de dialogue "Enregistrer sous" en PHP ?
Sinon, comment enregistrer un fichier excel sur le poste de l'utilisateur, et pas sur le serveur ?
Merci !
Bonjour,
Savez-vous s'il est possible de faire apparaître une boîte de dialogue "Enregistrer sous" en PHP ?
Sinon, comment enregistrer un fichier excel sur le poste de l'utilisateur, et pas sur le serveur ?
Merci !
Je n'en ai aucune idée, mais je me dis que c peut etre possible de le faire en utilisant le meme systeme que pour les pdf, avec le content type dans le header.
OK... Et tu sais où je peux trouver de la doc à ce sujet ?
Pour enregistrer un fichier Excel, je procède en 2 étapes :
1 - je crée une chaîne de caractères au format .csv et je l'enregistre dans une variable de session $_SESSION['xls_output'];
2 - j'appelle un code php qui est le suivant :
Quant à créer directement un fichier Excel (avec mise en forme), bon courage. J'avais vu plusieurs projets visant à écrire directement du .xls, mais c'était toujours très compliqué.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 <?php header("Content-type: application/vnd.ms-excel"); header("Content-disposition: attachment; filename=NomDuFichierExcel".".csv"); session_start(); print $_SESSION['xls_output']; exit; ?>
Merci je vais essayer...
Pour ma part, j'ai réussi à créer mon fichier excel grâce au site http://www.bettina-attack.de/jonny/v...iteexcel/demo/ et en y apportant qq modifs...
Et franchement c nickel !
Ca y est j'ai trouvé la solution !
Merci pour votre aide
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 $fileName = "C:\export_comm_bso.xls"; header('Content-disposition: attachment; filename='.$fileName); header('Content-Type: application/force-download');
En fait je me suis un peu emballée
Ca ne marche pas très bien dans le sens où le fichier téléchargé est incorrect.
En fait il essaie de sauvegarder ce que j'affiche sur ma page après l'export excel, pas le fichier excel en soi !
Une idée ?
Bon bon je m'affole pour pas grand chose, j'avais pas mis tout le code !
Alors voici le code complet pour ceux que ça intéresse :
Bonne soirée !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 header('Content-disposition: attachment; filename='.$fileName); header('Content-Type: application/force-download'); header("Content-Transfer-Encoding: binary"); header("Content-Length: ".filesize($fileName)); header("Pragma: no-cache"); header("Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0"); header("Expires: 0"); readfile($fileName);
Partager