v2.5.2
Giriş yap

PhPMailler sorunu

Anonim
553 defa görüntülendi

Fatal error: Uncaught PHPMailer\PHPMailer\Exception: SMTP Error: Could not connect to SMTP host. in C:\xampp\htdocs\v3\vendor\phpmailer\phpmailer\src\PHPMailer.php:2026

İnternetteki bir çok kaynak yabancıydı araştırdım ama birşey bulamadım türkçeye çevirip denedim birşeyler denedim ama yine nafile

use PHPMailer\PHPMailer\PHPMailer;

use PHPMailer\PHPMailer\SMTP;

use PHPMailer\PHPMailer\Exception;


$mailbody = '<!DOCTYPE html>
Buraya html tema geliyor';



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();



justatakan
1048 gün önce

SMTP sunucunuza bağlantı kuramıyorsunuz. Büyük ihtimal host adresinde bir problem var.
SMTP hostunuzun bağlantısını bu siteyi kullanarak test edebilirsiniz.

Ek olarak, try{}catch{} yapısını kullanarak PHPMailer işlemlerinizde herhangi bir hata aldığınızda PHP tarafında bir hata almadan direk sitenizde hatayı detaylı olarak görüntüleyebilirsiniz.
Örnek bir kullanıma aşağıda yer verdim.

<?php
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\SMTP;
use PHPMailer\PHPMailer\Exception;

require 'vendor/autoload.php';

$mailbody = '<!DOCTYPE html>
Buraya html tema geliyor';

$mail = new PHPMailer(true);

try {
    $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();
} catch (Exception $e) {
    echo "Eposta gönderilirken bir hata meydana geldi: {$mail->ErrorInfo}";
}