我有一个页面,可以作为我们网站上页面的打印页面和电子邮件版本。用户无法找到该页面,但会在iframe中加载并打印或发送电子邮件,具体取决于用户通过GET加载的按钮。即。 ?purpose=print ?purpose=email
现在print函数触发JS window.pint(),而email函数使用PHP html邮件。为了获得整个页面的内容,我使用了OB函数
ob_end_start();
// page content
ob_get_contents();
ob_end_clean();
这虽然会影响我的打印功能和页面上的其他JS。是否有其他方式获取页面内容并将其传递给电子邮件的$message
参数?
任何想法,
非凡
答案 0 :(得分:1)
您的意思是使用OB功能会影响页面的正确显示吗?
你有没有尝试过类似的东西:
ob_end_start();
// page content
if(!empty($_GET['purpose']) && $_GET['purpose'] == "email") {
$message = ob_get_contents();
ob_end_clean();
// your code for sending the $message
} else {
ob_end_flush();
}
如果未设置purpose
或“电子邮件”以外的其他内容,则此操作会正常输出页面。如果您要发送电子邮件并显示内容,则只需将ob_end_clean
替换为ob_end_flush
(在这种情况下,您不需要if条件)。
答案 1 :(得分:1)
不要使用JS来呈现此页面。
这将是最简单的解决方案。
我觉得这里没问题。你需要内容,你显然有一个内容。然后发送它
答案 2 :(得分:-2)
是的,使用curl(),保存页面内容(返回正文)并通过邮件发送。这应该比ob _ * - functions更好。