Page 1 sur 1

Fichier XLS

Posté : 07 août 2006, 22:08
par dunbar
Bonsoir,

Je voudrais savoir s'il est possible de faire un tableau php (je sais que oui) qui reprenne des données d'une TABLE mais (et elle est là ma question) faire en sorte de pouvoire imprimer le TABLEAU sous un format EXCEL ?

Merci

Posté : 07 août 2006, 22:47
par Invité
Ben moi, à partir de PHP, quand je veux produire un fichier que je veux reprendre sous excel, j'utilise le format sylk.
Autrement il me semble qu'il existe des classes pour produire du format xls directement...

Posté : 07 août 2006, 22:48
par dunbar
Ok merci

Posté : 08 août 2006, 08:20
par Tictac
c'est tres simple en fait !

http://www.estvideo.com/dew/index/2004/ ... s-avec-php

Code : Tout sélectionner

<? header("Content-Type: application/force-download; name=\"$NomFichier\""); header("Content-Transfer-Encoding: binary"); header("Content-Disposition: attachment; filename=\"$NomFichier\""); header("Expires: 0"); header("Cache-Control: no-cache, must-revalidate"); header("Pragma: no-cache");?> <html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns="www.w3.org/TR/REC-html40&... <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-latin-1" /> <meta name="ProgId" content="Excel.Sheet" /> <meta name="Generator" content="Microsoft Excel 9" /> <style> <!--// td.xleuro { mso-style-parent:style0; mso-number-format:"\#\,\#\#0\.00\\ \0022\20AC\0022"; } //--> </style> </head> <body> <table x:str="true" border="1" cellpadding="0" cellspacing="0"> <tr> <th>Numero</th> <th>Montant</th> <th>France Telecom</th> <th>Orange</th> <th>Wanadoo</th> <th>Canal</th> </tr> <tr> <td x:num=''>1234567892</td> <td class='xleuro' x:num=''>125</td> <td class='xleuro' x:num=''>50</td> <td class='xleuro' x:num=''>50</td> <td class='xleuro' x:num=''>25</td> <td class='xleuro' x:num=''>Moi</td> </tr> <tr> <td x:num=''>1234567893</td> <td class='xleuro' x:num=''>130</td> <td class='xleuro' x:num=''>10</td> <td class='xleuro' x:num=''>10</td> <td class='xleuro' x:num=''>10</td> <td class='xleuro' x:num=''>Machin</td> </tr> </table> </body> </html>

Posté : 08 août 2006, 08:29
par Henri
attention toutefois : même si l'extension du fichier est .xls et que le fichier est reconnu sans problème par Excel, cela n'est pas un "VRAI" fichier XLS. Par exemple, il est impossible de l'utiliser pour faire directement un import dans une base Access.

Une fois chargé sur le disque, pour transformer le fichier en "vrai" fichier Excel, il suffit de réenregistrer le fichier à partir d'Excel en faisant "enregistrer sous ...". Puis choisir le format Excel et remplacer l'extension htm proposée par une extension xls.

Il est également possible d'éditer des fichiers Word en utilisant exactement la même technique.

Posté : 08 août 2006, 14:00
par dunbar
Génial et merci beaucoup :D
Je ne clôture pas encore car je vais surement avoir d'autres questions :oops:

Posté : 08 août 2006, 17:15
par jpaul
C'est moi qui ai répondu en proposant le format sylk...
Je sens que l'info de Tictac va m'être très utile !
Merci beaucoup Tictac :)

Modération de Zeus : j'ai intégré le contenu du post invité dans le post loggé et j'ai supprimé le post invité ;)

Autre problème rattaché au sujet en question

Posté : 28 mai 2007, 11:44
par TiBou59
Bonjour à tous,

Je suis tombé sur ce forum en cherchant de résoudre le problème suivant :

Je suis en train de traiter un fichier slk avec php. Pour cela j'ouvre mon fichier en lecture puis je parcours le fichier et récupère des chaines de caractères avec des regex. Une fois cela récupéré, j'applique des requetes SQL à ces expressions.
Le seul souci c'est que le format .slk propose des codes spéciaux imcompréhensible par le navigateur même en utilisant les fonctions PHP : htmlentites et htmlspecialchars.
Je vous donne deux exemples ;
- le caractère "à" est codé comme suit : !;NAa
- le caractère "é" : !;NBe

Je récupère ce code tel quel et cela me pose problème car je l'utilise justement dans mes requetes SQL.

Si vous avez la solution, pouvez-vous m'en faire part sur le forum SVP.

Je vous remercie tous par avance.

"Faire part de son savoir est donné la possiblité d'avance à l'Homme. On arrête pas le progrès :wink: :wink: "

Posté : 28 mai 2007, 11:51
par orgerix
Il y a aussi la possibilité d'utiilser une petite libraire, writeexcel, qui permet d'écrire des fichier excel

Je commence juste à l'utiliser, mais elle m'a l'aire simple et efficace