Bonjour,
Dans ma page je dois récupérer des infos en session -> donc session_start() au debut et plus loin, j'ouvre un fichire Excel créé.
Séparement tout fonctionne impec mais dés que je mets les deux ensemble Excel ne trouve plus le fichier à ouvrir
Si je mets le session_start() en commentaire, ca marche nickel.
J'ai essayé de mettre les header avant / aprés le session_start() sans résultats
Le code :
Et donc, j'ai mon petit lien qui m'ouvre cette page, IE (navigateur du client, pas de critique la dessus ) me propose d'ouvrir le fichier -> ok c'est sympa et quand il m'ouvre Excel, il note que le doc est introuvable dans c:\Documents and Settings\monprofil\Local Settings\Temporary Internet Files\Content.IE5\...\pageExcel[1].xls.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34 <?php session_start(); $fichierResultat=$_SESSION["fichierResultat"]; $fichierLimite=$_SESSION["fichierLimite"]; $listeSN=$_SESSION["listeSN"]; $lieu="C:/pageExcel.xls"; define("FILENAME",$lieu); $excel = new COM("excel.application") or die("Unable to instantiate Excel !"); $excel->sheetsinnewworkbook=1;//1 seule feuille de calcul dans le document $excel->Workbooks->Add();//Ajout d'un classeur $book=$excel->Workbooks(1);//$book contient le classeur actif $sheet=$book->Worksheets(1);//$sheet contient la feuille active $sheet->Name="Résultats des tests";//Attribution d'un nom à la feuille if (file_exists(FILENAME)) {unlink(FILENAME);} //suppression de l'ancien fichier $book->saveas(FILENAME);//Sauvegarde du fichier unset($sheet);//Libération de $sheet unset($book);//Libération de $book $excel->Workbooks->Close();//Fermeture du classeur $excel->Quit();//On quitte Excel unset($excel);//Libération de l'instance $excel // Entête pour Ouvrir avec MSExcel //header("content-type: application/xls"); header("Content-Type: application/x-msexcel"); header("Content-Disposition: attachment; filename=pageExcel.xls"); flush(); // Envoie le buffer readfile("C:/pageExcel.xls"); // Envoie le fichier if (file_exists(FILENAME)) {unlink(FILENAME);} //suppression de l'ancien fichier ... ?> Colorez votre code PHP sur les forums grâce à Developpez.com
Mais pourquoi il va le chercher à cet endroit là alors que je précise de le mettre dans c:/pageExcel.xsl ?
J'ai zappé un truc ou quoi ?
Merci,
Marie
Partager