我正在通过策略使用formmail将我表单中提交的信息通过电子邮件发送给我。在用户点击提交按钮后,它会转到“谢谢”页面,默认情况下只有一些文本,我正在尝试更改它以加载我创建的感谢页面但它不起作用,什么我做错了吗?
谢谢!
以下是不的工作原因:
// MSG_THANKS_PAGE is the default page that's displayed if the
// submission is successful
// Parameters: none
$aMessages[MSG_THANKS_PAGE] = load('http://nimbledesigns.com/kelsie/thankyou.html');
这就是我在 DOES 工作之前所拥有的:
$aMessages[MSG_THANKS_PAGE] = 'Thanks!<br /><br />'.
'<a href="http://nimbledesigns.com/kelsie">Go Back</a>'.
'';
答案 0 :(得分:2)
Tere不是PHP内置的load()
函数。您最常寻找的是file_get_contents()
,它会将文件的内容(本地或其他)检索为字符串。
如果该网址指向您自己的服务器,您可能希望自己保存完整的HTTP往返,只需使用本地路径... = file_get_contents('/path/to/that/thank/you/file.html')
。
答案 1 :(得分:1)
使用
$aMessages[MSG_THANKS_PAGE] = file_get_contents('http://nimbledesigns.com/kelsie/thankyou.html');
代替。
file_get_contents() - http://php.net/manual/en/function.file-get-contents.php
$aMessages[MSG_THANKS_PAGE] = file_get_contents('thankyou.html');
这将阻止PHP使用HTTP流连接器,而是使用文件IO连接器,这将更快,更少的开销(尽管差异可能只有在服务器运行缓慢时才能查看)
您还可以在将任何数据发送到浏览器之前发出此命令,将它们重定向到页面:
header('Location: thankyou.html');
exit();
这会将浏览器重定向到该文件。再次假设它驻留在您的服务器上。如果需要,您可以使用完整地址替换http://nimbledesigns.com/kelsie/thankyou.html
答案 2 :(得分:1)
如前所述,file_get_contents是您最好的选择。没有load()函数。
但为什么不重定向到该页面呢? 它说到这里:http://www.tectite.com/fmhowto/redir.php (我假设你正在使用的是邮件形式的邮件,“teite”是一个错字)。
答案 3 :(得分:0)
很长一段时间没有使用php加载,但是它不只是用于xml并返回一个对象吗? 这是? http://php.net/manual/en/domdocument.load.php