jQuery ajax 發郵件非常方便,可以通過ajax發送post請求,將數據發送給后臺程序,后臺程序負責將數據轉發給郵件服務器,并將郵件發送給指定的收件人。
$.ajax({ type: "POST", url: "send_email.php", // 發送郵件的后臺程序 data: { recipient: "xxx@qq.com", // 收件人郵箱 subject: "郵件主題", // 郵件主題 body: "郵件正文" // 郵件正文 }, success: function (msg) { alert("郵件發送成功!"); }, error: function (xhr, status, error) { alert("郵件發送失敗:" + error); } });
在后臺程序中,可以使用PHPMailer等郵件類庫來實現發郵件功能。以下是一個簡單的示例代碼:
require_once('phpmailer/class.phpmailer.php'); $mail = new PHPMailer(); $mail->isSMTP(); // 使用SMTP協議發送郵件 $mail->Host = 'smtp.qq.com'; // 郵件服務器地址 $mail->SMTPAuth = true; $mail->Username = 'xxx@qq.com'; // 發件人郵箱 $mail->Password = '郵箱授權碼'; // 郵箱授權碼 $mail->SMTPSecure = 'ssl'; // SSL安全連接方式 $mail->Port = 465; // 服務器端口號 $mail->CharSet = 'utf-8'; // 郵件編碼方式 $mail->From = 'xxx@qq.com'; // 發件人郵箱 $mail->FromName = '發件人姓名'; $mail->AddAddress($_POST['recipient'], ''); // 收件人郵箱 $mail->Subject = $_POST['subject']; // 郵件主題 $mail->Body = $_POST['body']; // 郵件正文 if ($mail->Send()) { echo '郵件發送成功!'; } else { echo '郵件發送失敗:' . $mail->ErrorInfo; }
以上代碼僅供參考,實際使用時需要根據需求進行修改。同時需要注意郵箱賬號和授權碼的保護,不要將其暴露在代碼中或提交到Git等版本庫中。