@rina_marukova

Заявка с сайта. Тема письма не на кириллице. Как исправить?

Здравствуйте. Столкнулась с такой проблемой: есть код php, есть форма заявки. Всё работает, НО в теме письма и в имени отправителя выдаются "кракозябры" (Ð—Ð°Ñ Ð²ÐºÐ° Ñ Ñ Ð°Ð¹Ñ‚Ð°).

Вот код:
<?php
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;

require './PHPMailer/src/Exception.php';
require './PHPMailer/src/PHPMailer.php';
require './PHPMailer/src/SMTP.php';

if(isset($_POST['send'])){
    $name = htmlentities($_POST['name']);
    $email = htmlentities($_POST['email']);
    $subject = htmlentities($_POST['subject']);
    $message = htmlentities($_POST['message']);

    $mail = new PHPMailer(true);
    $mail->isSMTP();
    $mail->Host = 'smtp.gmail.com';
    $mail->SMTPAuth = true;
    $mail->Username = 'фывфывфыв@gmail.com';
    $mail->Password = 'ыаыфвывфыo';
    $mail->Port = 465;
    $mail->SMTPSecure = 'ssl';
    $mail->isHTML(true);
    $mail->setFrom($email, $name);
    $mail->addAddress('rinфывфывebsites@gmail.com');
    $mail->Subject = ("Заявка с сайта");
    $mail->Body = ("$message");
    $mail->send();

    header("Location: ./response.html");
}
?>


Я только учусь. Помогите, пожалуйста!
  • Вопрос задан
  • 98 просмотров
Решения вопроса 2
@GovnoKoder_ITS
Мне 17 лет, начинающий front-end разработчик
Дело в том, что ты не укзаал кодировку для отправленного письма
$mail->setFrom($email, $name, 'UTF-8');

$mail->Subject = ("=?UTF-8?B?".base64_encode("Заявка с сайта")."?=");
Ответ написан
@zakazak0
Укажи $mail->CharSet = 'UTF-8'; после $mail = new PHPMailer(true);
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы