PHPMailler sorunu
Aldığım hata
<b>Kodlarım ;</b>
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\SMTP;
use PHPMailer\PHPMailer\Exception;
$mailbody = '<!DOCTYPE html>
<html>
<head>
<title>'.$cek['title'].'</title>
<meta charset="utf-8">
</head>
<body style="padding: 30px">
<div style="width: 98%;margin:0 auto;background: #02add9;padding: 1%;display: inline-block;border-radius: 10px">
<div style="width: 90%;float: left;background: #fff;padding: 10px 5% 20px 5%;">
<center><img src="'.$site.'upload/'.$cek['logo'].'" style="width: 200px"></center>
<table>
<tr>
<th>Ürün Fotoğrafı</th>
<th>Ürün Bilgi</th>
<th>Adet</th>
<th>Fiyat</th>
<th>Kargo Ücreti</th>
<th>Toplam Tutar</th>
</tr>
'.$urun_html.'
<tr>
<td colspan="3"></td>
<td colspan="3" style="text-align: left;padding: 20px">
<b>Sipariş ID</b>: '.$siparis_id.'<br>
<b>Durum</b>: Onay Bekliyor<br>
<b>Referans Kodu</b>: '.$siparis_key.'<br>
<b>Ödeme Yöntemi</b>: '.$odeme_yontemi[$_POST['odeme_yontemi']].'<br>
<b>Toplam Tutar</b>: '.fiyat($genel_toplam).' TL<br>
</td>
</tr>
</table>
</div>
</div>
<style type="text/css">
body{font-family:arial}table{width:100%;border:1px solid #ddd}table tr{padding:0;margin:0}table tr th{border:1px solid #ddd;padding:0;margin:0;background:#02add9;color:#fff;padding:10px}table tr td{border:1px solid #ddd;padding:0;text-align:center;margin:0;border-spacing:0}
</style>
</body>
</html>';
require 'vendor/autoload.php';
$mail = new PHPMailer(true);
$mail->SMTPDebug = SMTP::DEBUG_SERVER;
$mail->isSMTP();
$mail->Host = $mail_ayar['host'];
$mail->SMTPAuth = true;
$mail->Username = $mail_ayar['email'];
$mail->Password = $mail_ayar['sifre'];
$mail->SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS;
$mail->Port = 587;
$mail->CharSet = 'UTF-8';
$mail->SMTPDebug = 0;
$mail->setFrom($mail_ayar['email'], $cek['title']);
$mail->addAddress($cek['siparis_mail'], $cek['title']);
$mail->addAddress($_POST['email'], $_POST['ad'].' '.$_POST['soyad']);
$mail->isHTML(true);
$mail->Subject = 'Yeni Sipariş';
$mail->Body = $mailbody;
$mail->AltBody = '';
$mail->send();
Soru hatalı mı? 👎
Eğer sorunun kurallara aykırı olduğunu düşünüyorsanız lütfen bize bildirin!
Cevaplar (1)
Merhabalar, SMTP hostunuza bağlanamıyor.
Öncelikle;
echo $mail_ayar['host'];
exit();
diyerek çektiğiniz smtp host bilgisini kullandığınız sunucu/hostingin mail ayarlarında yer alan host bilgisiyle karşılaştırın.
Eğer host bilgileri sorunsuzca eşleşiyorsa hostinginizin barındığı firmayla iletişime geçip durumu aktarın çünkü bazen hosting firmaları dış kaynaklı mail alım/gönderimini kapatabiliyor.
Ayrıca SSL var ise port bilgisini 465 ve tls olarak ayarlayın. Veya hosting firmasının smtp bilgileri nasılsa onu araştırın çünkü mesela Godaddy'de smtp bilgileri biraz daha farklı işliyor.