2009-10-15 58 views
5

我正在生成一個充滿數據的HTML表格。他們需要它是一個可編輯的電子表格,儘管它們可以保存和編輯。PHP:將HTML表格轉換爲電子表格?

我目前擁有它完全按照他們的想法,但作爲一個HTML表,是否有反正我可以將其轉換爲Excel電子表格,他們可以下載?

謝謝!

+0

可能要到「創先爭優」的標籤添加到此所以其他具有相同問題的人可以很容易地找到:) – 2009-10-15 18:28:41

回答

6

下面是我用的東西,也沒有讓我失望尚未:

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」顯然應該改變:)

+1

這是實現此目的最簡單和最方便的方法之一。 Excel直接從瀏覽器啓動(不需要保存CDF,打開Excel,找到CDF並導入它)......當然,這裏有一個關於Excel的假設,但除此之外它工作得很好。 (注意 - 您可能希望將緩存設置設置爲「緩存」IIRC,IE6存在問題,因此它會嘗試將「excel」文件保存到臨時文件,然後加載Excel ...然後嘗試從臨時文件加載文件(它已經刪除) - 如果有人知道確切的知識庫文章,請張貼。 – scunliffe 2009-10-15 17:10:15

+0

我也使用類似的詞,以及偉大的作品! – corymathews 2009-10-15 17:11:36

+0

我試過這個,它確實讓我把它保存爲一個Excel文件:) ...但是當試圖打開Excel文件時,我被告知格式錯誤。所以我刪除了所有的HTML標籤,並將其設置爲純TSV並將其保存爲excel。它仍然保存爲excel文件,但是當它試圖打開它時會告訴我它的格式錯誤? – 2009-10-15 17:16:23

0

輸出與逗號分隔值(CSV)相同的數據。大多數電子表格應用程序都會識別這個。

4

您可以使用Spreadsheet_Excel_Writer PEAR包實現可下載的文件作爲輸出。

+0

+1:正確執行並生成Excel文件;不要依賴Excel永遠處理HTML-served-as-Excel – 2009-10-15 17:14:29