我正在設計一個緊急響應頁面,我們需要的功能之一是能夠點擊一個按鈕(例如'發送詳細信息到使館'),然後自動發送 - 生成電子郵件到預期收件人($ email_address),而不必進入Microsoft Outlook並點擊發送。有沒有辦法做到這一點?點擊按鈕即可自動發送電子郵件
我知道的唯一方法是<a href='mailto:[email protected]'>
之一,但這會打開Outlook中的電子郵件,我真的需要它完全自動化。
感謝所有幫助
我正在設計一個緊急響應頁面,我們需要的功能之一是能夠點擊一個按鈕(例如'發送詳細信息到使館'),然後自動發送 - 生成電子郵件到預期收件人($ 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.';
}
?>
UPDATE
這可以作爲一個JavaScript函數來調用郵件。 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
我沒有測試過這一點,但希望它應該是沿着正確的線路。
,我會試試看:) – 2011-04-13 15:20:35
PHP支持發送電子郵件與mail function。您可以在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);
?>
感謝Rhapsody,這個效果很好。我現在的問題是,當我在mail.php文件中使用這個方法時,我提交表單然後頁面重定向。我需要我發送電子郵件的頁面完全不變,因爲它具有重要的秒錶,並且這些將在重定向時重置。 – 2011-04-13 13:55:05
這可能值得查看對mail.php腳本進行Ajax調用,這會停止頁面加載,但運行腳本。 – gmadd 2011-04-13 13:57:14
嗨gmadd,你能發表一個這樣的例子嗎?我還沒有機會深入研究AJAX,所以我不知道如何去使用它。謝謝 – 2011-04-13 13:59:02
一種解決方案將是使用mail()函數在PHP。有幾個類。我使用Phpmailer此;)
因爲您提到過PHP,所以使用PHP來實現它,您所描述的是一個mailto鏈接,Outlook可以在網頁上識別,而不是通過PHP代碼發送電子郵件/文本/通知。 – Jakub 2011-04-13 13:46:09