问题描述
|
我正在设计一个“紧急响应”页面,我们需要的功能之一是能够单击一个按钮(例如“向大使馆发送详细信息”),然后将自动生成的电子邮件发送给目标收件人(
$email_address
)无需进入Microsoft Outlook并单击发送。有没有办法做到这一点?
我知道的唯一方法是<a href=\'mailto:[email protected]\'>
,但这会在Outlook中打开电子邮件,实际上我需要使其完全自动化。
解决方法
这样的事情将作为起点:
<form action=\"\" method=\"post\">
<input type=\"submit\" value=\"Send details to embassy\" />
<input type=\"hidden\" name=\"button_pressed\" value=\"1\" />
</form>
<?php
if(isset($_POST[\'button_pressed\']))
{
$to = \'[email protected]\';
$subject = \'the subject\';
$message = \'hello\';
$headers = \'From: [email protected]\' . \"\\r\\n\" .
\'Reply-To: [email protected]\' . \"\\r\\n\" .
\'X-Mailer: PHP/\' . phpversion();
mail($to,$subject,$message,$headers);
echo \'Email Sent.\';
}
?>
更新
这可以用作Javascript函数来调用mail.php页面并发送电子邮件,而无需重新加载页面。
function sendemail()
{
var url = \'/mail.php\';
new Ajax.Request(url,{
onComplete:function(transport)
{
var feedback = transport.responseText.evalJSON();
if(feedback.result==0)
alert(\'There was a problem sending the email,please try again.\');
}
});
}
您需要此方法的原型:http://www.prototypejs.org/api/ajax/request
我尚未对此进行测试,但希望它应该沿正确的方向进行。
,PHP支持通过邮件功能发送电子邮件。您可以在PHP文档中找到示例。 (请参阅链接)
PHP文档中的示例:
<?php
// The message
$message = \"Line 1\\nLine 2\\nLine 3\";
// In case any of our lines are larger than 70 characters,we should use wordwrap()
$message = wordwrap($message,70);
// Send
mail(\'[email protected]\',\'My Subject\',$message);
?>