假設我們已經建立好一個表單,擁有 email、name、school、birth、note 等欄位,我們可以使用以下方法寄信:
<?php
if (!preg_match('/^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i',
$_POST['email']))
die('電子郵件信箱無效');
foreach ($_POST as $key => $value)
$_POST[$key] = htmlentities
((string) $_POST[$key], ENT_QUOTES, 'UTF-8');
$_POST['note'] = nl2br($_POST['note']);
$to = $_POST['email'];
$subject = '=?UTF-8?B?'.base64_encode('網站通知信').'?=';
$body = <<<MESSAGE
<!DOCTYPE html>\r\n
<html>\r\n
<head>\r\n
<style type='text/css'>\r\n
table {\r\n
border-collapse: collapse;\r\n
}\r\n
td {\r\n
border: 1px solid black;\r\n
white-space: nowrap;
}\r\n
td:first-child {\r\n
width: 120px;\r\n
}\r\n
</style>\r\n
</head>\r\n
<body>\r\n
<p>我們已經收到您的資料囉!您填寫的資料如下:</p>\r\n
<table>\r\n
<tr><td>姓名</td><td>$_POST[name]</td></tr>\r\n
<tr><td>學校</td><td>$_POST[school]</td></tr>\r\n
<tr><td>生日</td><td>$_POST[birth]</td></tr>\r\n
<tr><td>備註</td><td>$_POST[note]</td></tr>\r\n
</table>\r\n
<p>本郵件由系統自動寄出,請勿回覆。</p>\r\n
</body>\r\n
</html>\r\n
MESSAGE;
$header = "MIME-Version: 1.0\r\n".
"Content-type: text/html; charset=utf-8\r\n";
mail($to, $subject, $body, $header);
?>
當然,在這之前,別忘了先安裝簡單郵件傳輸協議 (Simple Mail Transfer Protocol, SMTP) 伺服器,如此才能將信件順利寄出哦!