2009-10-15 10 views
5

Je génère un tableau HTML plein de données. Ils ont besoin d'être une feuille de calcul modifiable, bien qu'ils puissent enregistrer et éditer.PHP: transformer le tableau HTML en feuille de calcul?

Je les ai actuellement exactement comme ils veulent, mais en tant que tableau HTML, est-il possible de les convertir en une feuille de calcul Excel qu'ils peuvent télécharger?

Merci!

+0

pouvez ajouter une balise « Excel » à cette autre façon les personnes ayant la même question peuvent facilement le trouver :) –

Répondre

6

Voici ce que je l'utilise, moi n'a pas encore échoué:

header('Cache-Control: no-store, no-cache, must-revalidate');  // HTTP/1.1 
header('Cache-Control: pre-check=0, post-check=0, max-age=0'); // HTTP/1.1 
header ("Pragma: no-cache"); 
header("Expires: 0"); 
header('Content-Transfer-Encoding: none'); 
header('Content-Type: application/vnd.ms-excel;');     // This should work for IE & Opera 
header("Content-type: application/x-msexcel");      // This should work for the rest 
header('Content-Disposition: attachment; filename="'.basename('yourFilenameHere.xls').'"'); 

« yourFilenameHere.xls » devrait évidemment être changé :)

+1

C'est l'une des façons les plus simples et les plus pratiques de le faire. Excel démarre directement depuis le navigateur (il n'est pas nécessaire de sauvegarder un CDF, d'ouvrir Excel, de trouver un CDF et de l'importer) ... il y a bien sûr une hypothèse sur Excel, mais au-delà cela fonctionne très bien. (Note - vous voudrez peut-être régler le cache sur "cache" IIRC, IE6 a des problèmes en essayant de sauvegarder le fichier "excel" dans les fichiers temporaires, puis charger Excel ... puis essayer de charger le fichier depuis les fichiers temporaires (qu'il a déjà supprimé) - si quelqu'un connaît l'article exact de la base de connaissances, s'il vous plaît envoyer – scunliffe

+0

J'utilise similaire pour le mot aussi bien fonctionne très bien – corymathews

+0

J'ai essayé cela et il me laisse l'enregistrer comme un fichier Excel :) ... Cependant, en essayant d'ouvrir le fichier Excel, on me dit qu'il est mal formaté. J'ai donc supprimé toutes les balises HTML et l'ai rendu pur TSV et l'ai enregistré comme excellent. Pourtant, il enregistre en tant que fichier Excel, mais me dit alors son mal formées en essayant de l'ouvrir? –

0

Sortir les mêmes données que les valeurs séparées par des virgules (CSV). La plupart des tableurs reconnaîtront cela.

4

Vous pouvez utiliser le package PEAR Spreadsheet_Excel_Writer pour générer un fichier téléchargeable en sortie.

+0

+1: Faites-le correctement et générez un fichier Excel; ne comptez pas sur Excel pour toujours gérer HTML-servi-comme-Excel –