PHP 개발 실습: PHPMailer를 사용하여 MySQL 데이터베이스의 관리자에게 이메일을 보냅니다.
웹 애플리케이션을 개발하는 동안 이메일 전송은 일반적인 요구 사항입니다. 사용자가 작업을 완료하거나 시스템에서 이벤트가 발생하면 이메일을 통해 관련 관리자에게 알려야 하는 경우가 많습니다. 이 기사에서는 PHPMailer 라이브러리를 사용하여 이메일을 보내고 이메일 내용을 MySQL 데이터베이스에 저장하는 방법을 소개합니다.
1. PHPMailer 라이브러리를 설치합니다.
프로젝트에 PHPMailer 라이브러리를 설치하고 Composer를 통해 종속성을 관리할 수 있습니다. 설치하려면 명령줄에서 다음 명령을 실행하십시오.
composer require phpmailer/phpmailer
프로젝트의 항목 파일에 PHPMailer 라이브러리를 도입하십시오.
require 'vendor/autoload.php';
2. 데이터베이스 테이블을 생성하십시오.
MySQL에서 "emails"라는 테이블을 생성하십시오. 데이터베이스 이메일 관련 정보를 저장하는 데 사용됩니다. 테이블 구조는 다음과 같습니다:
CREATE TABLE `emails` ( `id` int(11) NOT NULL AUTO_INCREMENT, `to_email` varchar(255) NOT NULL, `subject` varchar(255) NOT NULL, `message` text NOT NULL, `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (`id`) );
3. 이메일을 보내고 데이터베이스에 저장합니다.
이메일 보내기 기능을 만듭니다.
function sendEmail($to, $subject, $message) { $mail = new PHPMailerPHPMailerPHPMailer(); // 邮件服务器配置 $mail->isSMTP(); $mail->Host = 'smtp.example.com'; $mail->Username = 'your_email@example.com'; $mail->Password = 'your_email_password'; $mail->SMTPAuth = true; $mail->SMTPSecure = 'tls'; $mail->Port = 587; // 邮件内容设置 $mail->setFrom('from@example.com', 'Your Name'); $mail->addAddress($to); $mail->Subject = $subject; $mail->Body = $message; // 发送邮件 if ($mail->send()) { // 邮件发送成功,保存到数据库 $mysqli = new mysqli('localhost', 'username', 'password', 'database'); $stmt = $mysqli->prepare("INSERT INTO `emails` (`to_email`, `subject`, `message`) VALUES (?, ?, ?)"); $stmt->bind_param('sss', $to, $subject, $message); $stmt->execute(); $stmt->close(); $mysqli->close(); return true; } else { // 邮件发送失败 return false; } }
이메일 보내기 기능을 호출하고 수신자, 이메일 제목 및 content:
$to = 'admin@example.com'; $subject = '有新的通知'; $message = '您有一个新的通知,请登录后台查看。'; if (sendEmail($to, $subject, $message)) { echo '邮件发送成功并保存到数据库。'; } else { echo '邮件发送失败。'; }
위의 코드 예제에서는 이메일을 보내고 데이터베이스에 저장해야 하는 sendEmail 함수를 호출하여 PHPMailer를 통해 이메일을 보내고 이메일 정보를 MySQL 데이터베이스에 저장할 수 있습니다.
요약:
이 기사에서는 PHPMailer 라이브러리를 사용하여 이메일을 보내고 이메일 내용을 MySQL 데이터베이스에 저장하는 개발 사례를 소개합니다. 이메일 전송 기능을 캡슐화하고 이를 데이터베이스에 저장함으로써 웹 애플리케이션에서 이메일 알림 기능을 보다 유연하게 적용할 수 있습니다. 동시에 PHPMailer를 사용하면 보다 복잡한 이메일 전송 요구 사항을 충족할 수도 있습니다. 이 기사가 PHP 개발자의 이메일 전송 관행에 대한 참고 자료가 되기를 바랍니다.
위 내용은 PHP 개발 실습: PHPMailer를 사용하여 MySQL 데이터베이스의 관리자에게 이메일 보내기의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!