• 14-03-2024, 01:12:21
    #1
    Merhaba, PHP Mailer kullanarak SMTP ile gönderim yaptığımda mailin Html içeriği görüntülenmiyor, ekran resmindeki gibi direkt kodlar gözüküyor ve Türkçe karakterler hatalı çıkıyor. Bu durum sadece Hostinger'daki hostingte oluyor, başka firmadaki hostingimde aynı kodlarla mail gönderdiğimde bu sorunu yaşamıyorum. Birçok farklı yöntem denedim fakat çözüm olmadı. Daha önce bu sorunu yaşayan veya çözümünü bilen arkadaşlar varsa yardımcı olursa sevinirim.

                                                                $mail2 = new PHPMailer();
                                                                $mail2->SMTPDebug = 0;
                                                                $mail2->SMTPAuth = true;
                                                                $mail2->SMTPSecure = 'ssl';
                                                                $mail2->Host = $host['value'];
                                                                $mail2->Username = $user['value'];
                                                                $mail2->Password = $password['value'];
                                                                $mail2->Port = $port['value'];
                                                                $mail2->setLanguage("tr", "phpmailer/language");
                                                                $mail2->CharSet = 'utf-8';
                                                                $mail2->isHTML(true);
                                                                $mail2->SetFrom($user['value'], $user['value']);
                                                                $mail2->addReplyTo($user['value'], $user['value']);
                                                                $mail2->AddAddress($adminMail['value']);
                                                                $mail2->Subject = "Yeni Navlun Talebi";
                                                                $mail2->Body =
                                                                '
                                                                    <html>
                                                                        <head>
                                                                        </head>
                                                                        <body>
                                                                            <h1>Yeni Navlun Talebi</h1>
                                                                            <p>Yeni bir navlun talebiniz var.</p>
                                                                            <br><br>
                                                                            <p>İsim: '.$firstname.'</p>
                                                                            <p>Soyisim: '.$lastname.'</p>
                                                                            <p>E-posta: '.$email.'</p>
                                                                            <p>Şirket: '.$company.'</p>
                                                                        </body>
                                                                    </html>
                                                                ';
  • 14-03-2024, 01:19:00
    #2
    $mail2->Body kısmını, $mail2->MsgHTML değiştirerek dener misiniz?
  • 14-03-2024, 01:21:23
    #3
    Bu kodları dener misin.

    $mail2 = new PHPMailer();
    $mail2->SMTPDebug = 0;
    $mail2->SMTPAuth = true;
    $mail2->SMTPSecure = 'ssl'; 
    $mail2->Host = $host['value'];
    $mail2->Username = $user['value'];
    $mail2->Password = $password['value'];
    $mail2->Port = $port['value'];
    $mail2->setLanguage("tr", "phpmailer/language");
    $mail2->CharSet = 'UTF-8'; 
    $mail2->isHTML(true);
    $mail2->SetFrom($user['value'], $user['value']);
    $mail2->addReplyTo($user['value'], $user['value']);
    $mail2->AddAddress($adminMail['value']);
    $mail2->Subject = "Yeni Navlun Talebi";
    $mail2->Body = '
        <html>
            <head>
                <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
            </head>
            <body>
                <h1>Yeni Navlun Talebi</h1>
                <p>Yeni bir navlun talebiniz var.</p>
                <br><br>
                <p>İsim: '.$firstname.'</p>
                <p>Soyisim: '.$lastname.'</p>
                <p>E-posta: '.$email.'</p>
                <p>Şirket: '.$company.'</p>
            </body>
        </html>
    ';
  • 14-03-2024, 01:27:54
    #4
    StyleWaR adlı üyeden alıntı: mesajı görüntüle
    $mail2-&gt;Body kısmını, $mail2-&gt;MsgHTML değiştirerek dener misiniz?
    PATRON54 adlı üyeden alıntı: mesajı görüntüle
    Bu kodları dener misin.

    $mail2 = new PHPMailer();
    $mail2-&gt;SMTPDebug = 0;
    $mail2-&gt;SMTPAuth = true;
    $mail2-&gt;SMTPSecure = 'ssl';
    $mail2-&gt;Host = $host['value'];
    $mail2-&gt;Username = $user['value'];
    $mail2-&gt;Password = $password['value'];
    $mail2-&gt;Port = $port['value'];
    $mail2-&gt;setLanguage(&quot;tr&quot;, &quot;phpmailer/language&quot;);
    $mail2-&gt;CharSet = 'UTF-8';
    $mail2-&gt;isHTML(true);
    $mail2-&gt;SetFrom($user['value'], $user['value']);
    $mail2-&gt;addReplyTo($user['value'], $user['value']);
    $mail2-&gt;AddAddress($adminMail['value']);
    $mail2-&gt;Subject = &quot;Yeni Navlun Talebi&quot;;
    $mail2-&gt;Body = '
        &lt;html&gt;
            &lt;head&gt;
                &lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=UTF-8&quot;&gt;
            &lt;/head&gt;
            &lt;body&gt;
                &lt;h1&gt;Yeni Navlun Talebi&lt;/h1&gt;
                &lt;p&gt;Yeni bir navlun talebiniz var.&lt;/p&gt;
                &lt;br&gt;&lt;br&gt;
                &lt;p&gt;İsim: '.$firstname.'&lt;/p&gt;
                &lt;p&gt;Soyisim: '.$lastname.'&lt;/p&gt;
                &lt;p&gt;E-posta: '.$email.'&lt;/p&gt;
                &lt;p&gt;Şirket: '.$company.'&lt;/p&gt;
            &lt;/body&gt;
        &lt;/html&gt;
    ';
    Her iki dediğinizi de ayrı ayrı denedim fakat maalesef çözüm olmadı, hala Html kodlar gözüküyor ve Tr karakter sorunu devam ediyor.
  • 14-03-2024, 01:47:42
    #5
    $mail2 = new PHPMailer();
    $mail2->SMTPDebug = 0;
    $mail2->isSMTP();
    $mail2->SMTPAuth = true;
    $mail2->SMTPSecure = 'ssl';
    $mail2->Host = $host['value'];
    $mail2->Username = $user['value'];
    $mail2->Password = $password['value'];
    $mail2->Port = $port['value'];
    $mail2->setLanguage("tr", "phpmailer/language");
    $mail2->CharSet = 'utf-8';
    $mail2->isHTML(true); // HTML olarak işaretleme eklendi
    
    $mail2->SetFrom($user['value'], $user['value']);
    $mail2->addReplyTo($user['value'], $user['value']);
    $mail2->AddAddress($adminMail['value']);
    $mail2->Subject = "Yeni Navlun Talebi";
    
    $body = '
    <plaintext>
    <h1>Yeni Navlun Talebi</h1>
    <p>Yeni bir navlun talebiniz var.</p>
    <br><br>
    <p>İsim: '.$firstname.'</p>
    <p>Soyisim: '.$lastname.'</p>
    <p>E-posta: '.$email.'</p>
    <p>Şirket: '.$company.'</p>
    </plaintext>
    ';
    
    $mail2->Body = $body;
    Bu şekilde dener misiniz
  • 14-03-2024, 01:54:13
    #6
    mebularts adlı üyeden alıntı: mesajı görüntüle
    $mail2 = new PHPMailer();
    $mail2->SMTPDebug = 0;
    $mail2->isSMTP();
    $mail2->SMTPAuth = true;
    $mail2->SMTPSecure = 'ssl';
    $mail2->Host = $host['value'];
    $mail2->Username = $user['value'];
    $mail2->Password = $password['value'];
    $mail2->Port = $port['value'];
    $mail2->setLanguage("tr", "phpmailer/language");
    $mail2->CharSet = 'utf-8';
    $mail2->isHTML(true); // HTML olarak işaretleme eklendi
    
    $mail2->SetFrom($user['value'], $user['value']);
    $mail2->addReplyTo($user['value'], $user['value']);
    $mail2->AddAddress($adminMail['value']);
    $mail2->Subject = "Yeni Navlun Talebi";
    
    $body = '
    <plaintext>
    <h1>Yeni Navlun Talebi</h1>
    <p>Yeni bir navlun talebiniz var.</p>
    <br><br>
    <p>İsim: '.$firstname.'</p>
    <p>Soyisim: '.$lastname.'</p>
    <p>E-posta: '.$email.'</p>
    <p>Şirket: '.$company.'</p>
    </plaintext>
    ';
    
    $mail2->Body = $body;
    Bu şekilde dener misiniz
    $mail2->isSMTP();
    Bu isSMTP satırını ekleyince Hostinger'de maili hiç göndermiyor. Bu satır hariç dediğiniz şekilde denedim fakat çözüm olmadı.

  • 14-03-2024, 01:55:33
    #7
    SMTPDebug değerini 2 yaparak dener misiniz
  • 14-03-2024, 01:58:17
    #8
    mebularts adlı üyeden alıntı: mesajı görüntüle
    SMTPDebug değerini 2 yaparak dener misiniz
    Denedim isSMTP açıkken herhangi bir hata vermiyor ama mail de gitmiyor. isSMTP satırı pasifken mail gidiyor fakat html içerik ve karakter sorunu aynı şekilde devam ediyor, sayfada herhangi bir hata da göstermiyor.
  • 14-03-2024, 04:37:08
    #9
    $mail2 = new PHPMailer();
    $mail2->SMTPDebug = 0;
    $mail2->isSMTP();
    $mail2->SMTPAuth = true;
    $mail2->SMTPSecure = 'ssl';
    $mail2->Host = $host['value'];
    $mail2->Username = $user['value'];
    $mail2->Password = $password['value'];
    $mail2->Port = $port['value'];
    $mail2->setLanguage("tr", "phpmailer/language");
    $mail2->CharSet = 'utf-8';
    $mail2->isHTML(true); // HTML olarak işaretleme eklendi
    $mail2->SetFrom($user['value'], $user['value']);
    $mail2->addReplyTo($user['value'], $user['value']);
    $mail2->AddAddress($adminMail['value']);
    $mail2->Subject = "Yeni Navlun Talebi";
    $body = '
    <html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    </head>
    <body>
        <h1>Yeni Navlun Talebi</h1>
        <p>Yeni bir navlun talebiniz var.</p>
        <br><br>
        <p>İsim: '.$firstname.'</p>
        <p>Soyisim: '.$lastname.'</p>
        <p>E-posta: '.$email.'</p>
        <p>Şirket: '.$company.'</p>
    </body>
    </html>
    ';
    $mail2->Body = $body;