2009-06-10 14 views
1

私はこのようにPHPを使用してExcelファイルを作成しています:PHP Excelの作成 - 無効なファイルタイプ

header("Content-type: application/vnd.ms-excel"); 
header("Content-Disposition: attachment; filename=invoice.xls"); 
header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); 
echo "<table><tr><th>Test</th></tr><tr><td>...</td></tr></table>"; 

私は、ファイルを開くしようと、Excelは、ファイルの種類が正しくないという警告を与えます。しかし、ファイルが正しく表示され、私はそれが欲しいのと同じように...

このエラーメッセージが表示されないようにする方法はありますか?

答えて

1

あなた自身のためにExcelファイルを作成し、それをHTMLとして保存し、それをテキストエディタで開いてゴミを見ていくことをお勧めします。最終的にPHPスクリプトで何を出力するのかを調べ、Excelがファイルの種類と拡張子について不平を言ってこないようにします。

+0

おかげで、使用する非常に簡単です、彼らはBIFF形式のファイルをエクセル生成 を を生成ライブラリを得意とし、セルの書式設定だけでなく 例えば、フォント、サイズ、色の制御を取得梨を使用している、私は意志それを試してみてください...他の誰かが私に私のPHPファイルに含める必要がありますどのような "ゴミ"を教えてくれない限り... – Fortega

+0

複製する最も簡単な形式は、Excel XMLファイル - このアプローチをとるなら、それをコピーすることをお勧めします。 – BrynJ

0

生成しているファイルの出力は、実際にはExcel形式ではないため、Excelはそれに不平を言うのは正しいです。 phpexcel.netのように、そこにファイルを出力するためのいくつかのPHPパッケージがあります。もう1つのオプションは、ファイルを「通常の」.htmlファイルとして提供し、ユーザーにExcelで開くように指示することです。

希望すると便利です。

+0

上記のlonut G. Stanによって提案された解決策は実際には機能しないと言っていますか? – Fortega

+0

@Fortega、試してみてはいかがですか?私はあなたのコードを試して、それは不平を言った。私はその後、HTMLファイルとしてスプレッドシートを保存し、それを開いたときに不平を言った。 –

+0

私はそれがうまくいくとは確信していますが、ファイルをHTMLファイル(.html拡張子)で提供する必要があります。そのような場合、エンドユーザーはExcelファイルではなく、WebブラウザなどのHTMLファイル用のアプリケーションでファイルを開いている可能性があります。 – ylebre

0

あなたは例えば、エコー、私はそれをロードするかどうか に文句を言うかどうかわからない、タブ区切り形式 を試みることができる「$ COL \トン$ COL \トン$ COL \トン$ COL \ n」は

私はまたなど、

関連する問題