用PHP生成的.xls文件将保存但不能从IE打开

我正在使用PHPdynamic生成一个表,用户可以下载一个.xls文件。 当使用IE时,点击链接后,popup“您要打开还是保存文件…”对话框。 如果用户保存文件并打开它,则没有问题。 但是,如果用户select“打开”,Excel启动,但它是空的。 没有电子表格。 一切工作正常在Chrome和FF。

这是我正在使用的代码。

<?PHP // filename for download $filename = "filename" . date('M_j_Y') . ".xls"; //create the output $output = //<table> code goes here. //set the header to treat this as an excel file header("Content-Disposition: attachment; filename=\"$filename\""); header("Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"); header("Expires: 0"); header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); header("Cache-Control: private",false); echo $output; exit; ?> 

当点击链接下载电子表格,然后从IE10对话框中select“打开”时,会发生这种情况。

Excel是开放的,但没有扩展

任何关于如何使IE浏览器用户点击“打开”的电子表格的build议将不胜感激。 谢谢。

你可以试试这个:

一个。 右键单击文件并select属性b。 在常规选项卡上单击解除阻止c。 点击OK

检查这个链接: https : //support.microsoft.com/en-us/kb/3181507

微软的文档表明,这个问题实际上可能是Excel中的一个设置 – Excel可能会忽略来自IE的dynamic数据交换(DDE)信息。 可能检查描述的设置,看看是否是这样。