2013-02-28 46 views
-2

我使用PHP腳本從MySQL數據庫中的數據導出到Excel工作表.. 當您打開Excel文件,我面臨着以下錯誤.. 發現錯誤不可讀的內容codenovssem.xls 是否要恢復此工作簿的內容? 如果您信任該工作簿的源單擊是...... 當我點擊是的,它顯示這樣的「無法讀取文件。」 我用下面的代碼出口數據從MySQL到Excel

$result=mysql_query("select * from t3diff ");//retrieving records from database 
header("Pragma: public"); 
header("Expires: 0"); 
header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); 
header("Content-Type: application/force-download"); 
header("Content-Type: application/x-msexcel;charset=utf-8"); 
header("Content-Disposition: attachment;filename=codenovsem.xls "); 
header("Content-Transfer-Encoding: binary "); 
xlsBOF(); 
/* 
Make a top line on your excel sheet at line 1 (starting at 0). 
The first number is the row number and the second number is the column, 
both are start  at '0' 
*/ 
xlsWriteLabel(0,0,"student Marks"); 
// Make column labels. (at line 3) 
xlsWriteLabel(2,0,"codeno"); 
xlsWriteLabel(2,1,"na"); 
xlsWriteLabel(2,2,"marks"); 
xlsWriteLabel(2,3,"subname"); 
xlsWriteLabel(2,4,"subcode"); 
xlsWriteLabel(2,5,"branch"); 
xlsWriteLabel(2,6,"year"); 
xlsWriteLabel(2,7,"sem"); 
xlsWriteLabel(2,8,"setno"); 
xlsWriteLabel(2,9,"bundleno"); 
xlsWriteLabel(2,10,"afor"); 
xlsWriteLabel(2,11,"oname"); 
xlsWriteLabel(2,12,"valdate"); 
xlsWriteLabel(2,13,"valtime"); 
$xlsRow = 3; 
// Put data records from mysql by while loop. 
while($row=mysql_fetch_array($result)){ 
xlsWriteNumber($xlsRow,0,$row['codeno']); 
xlsWriteNumber($xlsRow,1,$row['na']); 
xlsWriteNumber($xlsRow,2,$row['marks']); 
xlsWriteNumber($xlsRow,3,$row['subname']); 
xlsWriteNumber($xlsRow,4,$row['subcode']); 
xlsWriteNumber($xlsRow,5,$row['branch']); 
xlsWriteNumber($xlsRow,6,$row['year']); 
xlsWriteNumber($xlsRow,7,$row['sem']); 
xlsWriteNumber($xlsRow,8,$row['setno']); 
xlsWriteNumber($xlsRow,9,$row['bundleno']); 
xlsWriteNumber($xlsRow,10,$row['afor']); 
xlsWriteNumber($xlsRow,11,$row['oname']); 
xlsWriteNumber($xlsRow,12,$row['valdate']); 
xlsWriteNumber($xlsRow,13,$row['valtime']); 
$xlsRow++; 
} 
xlsEOF();//End of Excel file 
exit(); 
+0

打開記事本中的xls文件,看看該文件中是否有PHP錯誤/警告。如果沒有,則提交錯誤報告。 – 2013-02-28 10:44:57

回答

0

我也遇到過幾天前同樣的問題。其實你不會輸出一個真正的.xls文件。它仍然是一個具有.xls擴展名的文本文件。

所以我建議你使用http://phpexcel.codeplex.com/

它是100%成功創建XLS文件。還有一個驚人的文檔。