浏览器在哪里获得下载标题?

时间:2011-08-17 00:17:51

标签: php browser

我正在一个网站上工作,以获取一本书的多个页面,并为移动用户创建一个文件。该网站位于http://bookgrabber.comze.com。现在我提供下载完成的书籍的下载链接。下载链接实际上是downloadBook.php的链接。一切都运行得很好,正如预期的那样,但当你点击“保存链接为”时,书中标题的第一个单词出现在另存为对话框中...来自哪里,我可以改变它?它没有出现在页面的html中......

以下是downloadBook.php页面上的内容:

header('Content-disposition: attachment; filename='.$_SESSION['bookName'].'.html');
header('Content-type: application/html');
echo $_SESSION['book'];

谢谢你, 托德

1 个答案:

答案 0 :(得分:4)

这就是您的第一个header行的目的:告诉浏览器该文件应该下载并且不显示,并告诉它文件名应该是什么。

header('Content-disposition: attachment; filename='.$_SESSION['bookName'].'.html');

filename=部分告诉浏览器文件名应该是什么。它在第一个空格处被切断(只有第一个单词),因为带有空格的名称应该在Content-disposition标题中用双引号括起来:

header('Content-disposition: attachment; filename="'.$_SESSION['bookName'].'.html"');