ChatGPT가 알려준 PHPMailer를 이용한 메일 발송 프로그램 소스
이
이온디
2024. 06. 08 08:25
246
0
<?php
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;
// PHPMailer의 파일을 직접 로드
require '/home/eond/web/eond.com/public_html/common/vendor/PHPMailer/src/Exception.php';
require '/home/eond/web/eond.com/public_html/common/vendor/PHPMailer/src/PHPMailer.php';
require '/home/eond/web/eond.com/public_html/common/vendor/PHPMailer/src/SMTP.php';
$mail = new PHPMailer(true);
try {
// 서버 설정
$mail->SMTPDebug = 2; // 디버그 출력을 켬
$mail->isSMTP(); // SMTP 사용 설정
$mail->Host = 'smtp-relay.brevo.com'; // SMTP 서버 주소
$mail->SMTPAuth = true; // SMTP 인증 설정
$mail->Username = 'id@smtp-brevo.com'; // SMTP 사용자명
$mail->Password = 'password'; // SMTP 비밀번호
$mail->SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS; // TLS 사용 설정
$mail->Port = 587; // SMTP 포트 설정
// 문자 인코딩 설정
$mail->CharSet = 'UTF-8';
$mail->Encoding = 'base64';
// 발신자 정보 설정
$mail->setFrom('no-reply@eond.com', '이온디 고객센터');
$mail->addAddress('eond@eond.com', 'Recipient Name'); // 수신자 추가
// 첨부파일 추가
if (isset($_FILES['path']) && $_FILES['path']['error'] == UPLOAD_ERR_OK) {
$mail->addAttachment($_FILES['path']['tmp_name'], $_FILES['path']['name']);
}
// 이메일 내용 설정
$mail->isHTML(true); // HTML 형식 이메일로 설정
$mail->Subject = '=?UTF-8?B?' . base64_encode(isset($_POST['subject']) ? $_POST['subject'] : 'No subject') . '?=';
$mail->Body = isset($_POST['body']) ? $_POST['body'] : 'No body content';
// 이메일 보내기
$mail->send();
echo 'Message has been sent';
} catch (Exception $e) {
echo "Message could not be sent. Mailer Error: {$mail->ErrorInfo}";
}
?>chatgpt가 알려준 phpmailer입니다. 보니깐 라이믹스에서는 phpmailer를 사용하다가 swiftmailer로 교체가 되었었네요.