首页 » PHP和MySQL Web开发(原书第4版) » PHP和MySQL Web开发(原书第4版)全文在线阅读

《PHP和MySQL Web开发(原书第4版)》32.4 处理标题的问题

关灯直达底部

在所有这些脚本中,需要注意的一个细小问题是需要告诉浏览器将发送给它什么类型的数据。我们通过发送一个内容类型的HTTP标题来实现该操作,如下所示:

header('Content-type:application/msword);

或者

header('Content-type:application/pdf');

一个值得注意的地方是浏览器处理这些标题的方法并不一致。特别是Internet Explorer经常选择忽略MIME类型,而试图自动检测文件类型(这个特殊的问题似乎已经在Internet Explorer的最新版本中得到解决,因此,如果还遇到这样的问题,最简单的解决方法是升级浏览器)。

一些标题似乎会在会话控制标题中出现问题。如今,对于这个问题,已经有几种解决方法。我们发现通过使用GET参数而不是POST或会话变量参数可以避免该问题。

另一种方法,正如Hello World PDFlib示例中一样,不使用内嵌的PDF,而让用户下载它。

编写两种不同版本的代码也可以避免此类问题,一个适用于Netscape浏览器,另一个适用于Internet Explorer浏览器。