我有一個網站,人們可以註冊並需要在ordre中驗證才能使用他們的帳戶。不幸的是,有些人還沒有收到確認郵件..郵件PHP沒有達到一半的人
這裏是我使用
function mail_send($arr) {
if (!isset($arr['to_email'], $arr['from_email'], $arr['subject'], $arr['message'])) {
throw new HelperException('mail(); not all parameters provided.');
}
$to = empty($arr['to_name']) ? $arr['to_email'] : '"' . mb_encode_mimeheader($arr['to_name']) . '" <' . $arr['to_email'] . '>';
$from = empty($arr['from_name']) ? $arr['from_email'] : '"' . mb_encode_mimeheader($arr['from_name']) . '" <' . $arr['from_email'] . '>';
$headers = array
(
'MIME-Version: 1.0',
'Content-Type: text/html; charset="UTF-8";',
'Content-Transfer-Encoding: 7bit',
'Date: ' . date('r', $_SERVER['REQUEST_TIME']),
'Message-ID: <' . $_SERVER['REQUEST_TIME'] . md5($_SERVER['REQUEST_TIME']) . '@' . $_SERVER['SERVER_NAME'] . '>',
'From: ' . $from,
'Reply-To: ' . $from,
'Return-Path: ' . $from,
'X-Mailer: PHP v' . phpversion(),
'X-Originating-IP: ' . $_SERVER['SERVER_ADDR'],
);
mail($to, '=?UTF-8?B?' . base64_encode($arr['subject']) . '?=', $arr['message'], implode("\n", $headers));
}
$arr = array();
$arr['to_email'] = $mail;
$arr['from_email'] = "[email protected]";
$arr['subject'] = "Welcome [Validation]";
$arr['message'] = 'Thank you for registering, you're now able to fully use this website.'."<br><br>".'Username: <b>'.$username.'</b> Password :<b>'.$password.'</b>.'."<br><br>".' You need to validate in order to login...'."<br>".'<a href="a">Validate!</a>'."<br><br>".'Have fun!'."<br><br>".'--- The team.';
mail_send($arr);
還與同一臺服務器上運行偉大的代碼,我已經得到了論壇的CMS(phpBB和的MyBB) 0問題涉及到電子郵件..
那麼,什麼是錯我的代碼...
謝謝!
有你的控件,效果是否有人收到您的郵件外衆多變量有可能的。 – lagbox 2014-10-05 17:46:07
簡短回答:滾動您自己的代碼是無效消息結構和格式化的祕訣。使用圖書館。 – Synchro 2014-10-05 19:01:49
我現在使用phpmailer,但我收到很多錯誤..我敢打賭,這是因爲他們沒有把正確的電子郵件.. – cloud1250000 2014-10-06 20:41:28