【问题标题】:How to save content/text of a web page by forcing save-as option如何通过强制另存为选项来保存网页的内容/文本
【发布时间】:2012-12-07 07:46:07
【问题描述】:

我想知道从网页中保存内容的最佳方式是什么。我的意思是通过单击链接或按钮来强制另存为选项。我经常发现 javascript 不是一个选项,因为它只适用于 IE,所以我认为它会更容易,因为 javascript 是基于客户端的。

现在,我想也许有一种方法可以在创建表单时使用 php,该表单将通过服务器站点查询重定向它以返回并强制另存为选项。我的主要目标是让保存隐私条款成为可能。我想避免使用 fpdf。如果有人能告诉我如何解决这个问题,我将不胜感激。

更新:

可以解释一下我想要达到的目标:

假设您有一个简单的网页,其中包含一些隐私政策文本,而没有其他内容。在页面顶部,您有两个选项。首先是打印选项,例如:

<a href="javascript:print()">print</a>

秒应该是这样的:

<a href="javascript:saveas()">save</a>

这样当您按下链接时,会弹出另存为对话框,您可以下载内容甚至页面以获取您自己的隐私政策。

希望现在很清楚。对不起。

【问题讨论】:

  • 您要保存的页面是否由您自己托管?
  • 你好,目前没有。也许有一天,但目前没有任何计划。

标签: php javascript html save


【解决方案1】:

如果您想在不使用 javascript 的情况下强制下载,只需通过添加未知目标在新选项卡中打开内容。

示例代码

<a href="whatever.com/download.zip" target="_new">click me</a>

这仅在您调用的页面提供下载时才有效,否则内容会显示。在这种情况下,您需要一个简单的 php 文件,它从页面中获取内容并自定义标题。

<?php
$content = file_get_contents($_GET["downloadurl"]);
header("Content-Type: application/octet-stream"); 
echo $content;
?>

更新

作为您编辑信息的更详细示例,您可以这样做:

PHP-文件“reader.php”

<?php
$content = file_get_contents($_GET["downloadurl"]);
header("Content-Type: application/octet-stream"); 
echo $content;
?>

HTML在页面“test.html”

<a href="reader.php?downloadurl=http://yourwebsite.com/test.html" target="_new">Save website</a>

【讨论】:

  • file_get_source() 是什么?
  • 我认为更重要的是使用Content-Disposition,但我确信这仍然有效
  • 对不起,想说file_get_contents
  • 你好,我认为这不是正确的方式。我试过了,但现在加载页面时会打开 savas 对话框?!这不是我想要的。我想让它在同一页面上保存按钮/链接文本,以从同一页面下载其内容。谢谢。
  • 我真的不明白你的目标是什么,对不起。请进一步解释您的问题。单击链接时要开始下载吗?!
猜你喜欢
  • 2019-03-25
  • 1970-01-01
  • 2014-12-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-03-28
相关资源
最近更新 更多