PHPMailer - SweetAlert echo çalışmıyor.
Ajax kullanarak bir form POST ediyorum, daha sonra çıkan sonuca göre echo ile belirlediğim şeyleri yazdırarak SweetAlert basıyorum.
Fakat bu formda ki bilgilere göre E-Posta gönderdiğim zaman echo ile yazdırdığım bilgilere göre bir alert bastıramıyorum. Ama diğer işlemlerde(veri tabanı kayıtı/E-Posta Gönderme) bir sorun olurmuyor.
Biraz Karışık olmuş olabilir kısaca belirtmem gerekirse Phpmailer ile echoyu kullanamıyorum.
Bunun nedeninin E-Postanın gidişinin 20-30 saniyeyi bulması olduğunu düşündüm fakat emin olamadım.
[PHPMAİLER KODLARIM]
<?php
$mail = new PHPMailer(true);
try {
//Server settings
$mail->SMTPDebug = $debug; // Debug Mode
// Step 2 (Optional) - If you don't receive the email, try to configure the parameters below:
$mail->IsSMTP(); // Set mailer to use SMTP
$mail->Host = 'smtp.gmail.com'; // Specify main and backup server
$mail->SMTPAuth = true; // Enable SMTP authentication
$mail->Username = 'X'; // SMTP username
$mail->Password = 'X'; // SMTP password
$mail->SMTPSecure = 'tls'; // Enable encryption, 'ssl' also accepted
$mail->Port = 587; // TCP port to connect to
//Recipients
$mail->setFrom('X', 'X');
$mail->addAddress($eposta, $ad); // Add a recipient
// Content
$mail->isHTML(true);
$mail->CharSet = 'UTF-8'; // Set email format to HTML
$mail->Subject = 'X';
$mail->Body = 'X';
$mail->send();
echo "olumlu";
} catch (Exception $e) {
echo "Message could not be sent. Mailer Error: {$mail->ErrorInfo}";
}
?>
Soru biraz karışık olduysa şimdiden özür dilerim.
function kaydet(){
var bilgiler =$("#bilgiler").serialize();
$.ajax({
type:"POST",
data: bilgiler,
url:"x",
success : function(f){
if($.trim(f) == "hata"){
sweetAlert("Hata" , "T.C. Kimlik Numarası 11 Haneden Az Olamaz" , "error");
}else if ($.trim(f) == "olumlu"){
sweetAlert("Kaydınız Başarıyla Alınmıştır" , "Kayıtınız İçin Teşekkür Ederiz. Ekiplerimiz sizinle iletişime geçecektir." , "success");
}else if ($.trim(f) == "hata2"){
sweetAlert("Hata" , "Bu T.C Kimlik numarası ile daha önceden kayıt olunmuştur." , "error");
}else if ($.trim(f) == "hata3"){
sweetAlert("Hata" , "Telefon Numarası 10 Haneden Az Olamaz " , "error");
}else if ($.trim(f) == "hata4"){
sweetAlert("Hata" , "Bu Telefon Numarası Daha Önceden Kullanılmıştır. " , "error");
}else if ($.trim(f) == "hata5"){
sweetAlert("Hata" , "Bu E-Posta Adresi Daha Önceden Kullanılmıştır. " , "error");
}else if ($.trim(f) == "hata6"){
sweetAlert("Hata" , "Lütfen recaptcha bölümünü işaretleriniz. " , "error");
}
$('.form')[0].reset();
}
});
}
Hatalar ya da diğer alertler normalde sorunsuz şekilde çalışıyor.
Olay E-Posta'da patlıyor, muhtemelen bir şeyi yanlış yapıyorum ama anlayamadım.
Konsolda herhangi bir hata almıyorum.
Ajax pek kullanmadığım için kodlar kötü olabilir :)