这是我有一个简单的PHP文件的问题,该文件将表导出到excel文件,扩展名为" .xls"。导出的代码如下:
.text01 {
position: relative;
float: left;
color: black;
padding: 0;
margin: 0;
background-color: white;
margin-top: 20px;
height: 80%;
width: 80%;
background-color: transparent;
}
这个PHP类是从一个像这样的buton调用的:
header ("Last-Modified: " . gmdate("D,d M YH:i:s") . " GMT");
header ("Cache-Control: no-cache, must-revalidate");
header ("Content-type: application/x-msexcel");
header ("Content-Disposition: attachment; filename=filename.xls" );
header("Content-Description: PHP/INTERBASE Generated Data" );
header("Expires: 0");
Rest of the PHP code that has HTML tags for the table
浏览器会提示您下载或保存文件。 根据用户计算机中安装的Excel版本,尝试打开下载的文件时会出现此问题:
我尝试过微软网页的故障排除但没有任何效果。这里有趣的部分是,如果你去File - >打开 - >最近的书籍并点击下载的文件,现在它可以正确打开而无需对文件进行任何更改。
答案 0 :(得分:0)
也许您应该将text/csv
指定为具有.csv
扩展名的内容类型,具体取决于您的代码(如果已安装,Excel将打开csv就好了。)
你真的遗漏了最重要的代码(Rest of the PHP code that has HTML tags for the table
中的内容)。
Excel文件不是HTML或表格,所以如果你输出HTML或CSV并试图说内容类型是Excel,那就错了。
答案 1 :(得分:0)
微软最近发布了一些更新,阻止它打开包含HTML的excel文件。 KB 3115322,3115262安全更新
答案 2 :(得分:-1)
是的,它是关于Excel更新,因为所有计算机都有此更新,因此我必须找到一种方法来绕过此问题,以便打开这些文件,以便用户可以继续工作。
感谢