• Как настроить PhpMailer.php?

    @Sasha545 Автор вопроса
    Mario Kun @marioKun
    Если как вы утверждаете, приходит все, кроме текста сообщения, значит судя по всему текст сообщения просто не доходит до скрипта, проверьте на клиентской стороне, правильность

    при проверке в firebug предупреждение: GSAP target .link not found. На это стоит обращать внимание?
    и при просмотре результатов: все в теле письма есть, кроме текста сообщения
  • Как настроить PhpMailer.php?

    @Sasha545 Автор вопроса
    Вы лучше покажите код, где происходит отправка сообщения

    <?php
    // Файлы phpmailer
    require 'phpmailer/PHPMailer.php';
    require 'phpmailer/SMTP.php';
    require 'phpmailer/Exception.php';
    
    // Переменные, которые отправляет пользователь
    $name = $_POST['name'];
    $email = $_POST['email'];
    $text = $_POST['text'];
    $file = $_FILES['file'];
    
    // Формирование самого письма
    $title = "Заголовок письма";
    $body = "
    <h2>Новое письмо</h2>
    <b>Имя:</b> $name<br>
    <b>Почта:</b> $email<br><br>
    <b>Сообщение:</b><br>$text
    ";
    
    // Валидация почты
    if (filter_var($email, FILTER_VALIDATE_EMAIL)) {
    
    // Настройки PHPMailer
    $mail = new PHPMailer\PHPMailer\PHPMailer();
    try {
        $mail->isSMTP();   
        $mail->CharSet = "UTF-8";
        $mail->SMTPAuth   = true;
        //$mail->SMTPDebug = 2;
        $mail->Debugoutput = function($str, $level) {$GLOBALS['status'][] = $str;};
    
        // Настройки вашей почты
        $mail->Host       = 'smtp.yandex.ru'; // SMTP сервера вашей почты
        $mail->Username   = 'login'; // Логин на почте
        $mail->Password   = 'password'; // Пароль на почте
        $mail->SMTPSecure = 'ssl';
        $mail->Port       = 465;
        $mail->setFrom('myyandex@yandex.ru', 'Александр'); // Адрес самой почты и имя отправителя
    
        // Получатель письма
        $mail->addAddress('mymail@mail.ru');  
       
    
        // Прикрепление файлов к письму
    if (!empty($file['name'][0])) {
        for ($ct = 0; $ct < count($file['tmp_name']); $ct++) {
            $uploadfile = tempnam(sys_get_temp_dir(), sha1($file['name'][$ct]));
            $filename = $file['name'][$ct];
            if (move_uploaded_file($file['tmp_name'][$ct], $uploadfile)) {
                $mail->addAttachment($uploadfile, $filename);
                $rfile[] = "Файл $filename прикреплён";
            } else {
                $rfile[] = "Не удалось прикрепить файл $filename";
            }
        }   
    }
    // Отправка сообщения
    $mail->isHTML(true);
    $mail->Subject = $title;
    $mail->Body = $body;    
    
    // Проверяем отправленность сообщения
    if ($mail->send()) {$result = "success";} 
    else {$result = "error";}
    
    } catch (Exception $e) {
        $result = "error";
        $status = "Сообщение не было отправлено. Причина ошибки: {$mail->ErrorInfo}";
    }
    } else {
    	$result = "email";
    }
    // Отображение результата
    echo json_encode(["result" => $result, "resultfile" => $rfile, "status" => $status]);
    
    ?>
  • Ошибка 500 в Phpmailer. Как её можно найти?

    @Sasha545 Автор вопроса
    Доброе утро! Думаю, я не так заполнил эти поля:
    $mail->Host       = 'smtp.yandex.ru'; // SMTP сервера вашей почты (тут все ясно)
       $mail->Username   = 'your_login'; // Логин на почте
    $mail->Password   = 'password'; // Пароль на почте
    $mail->SMTPSecure = 'ssl';
    $mail->Port       = 465;
    // Адрес самой почты и имя отправителя
    $mail->setFrom('mail@yandex.ru', 'Имя отправителя');
    // Получатель письма
    $mail->addAddress('youremail@yandex.ru');

    Подскажите, как будет правильно?
  • Почему из формы обратной связи не приходят сообщения?

    @Sasha545 Автор вопроса
    Spartak (Web-StyleStudio), спасибо. я нашел другую форму, на phpmailer.
  • Почему из формы обратной связи не приходят сообщения?

    @Sasha545 Автор вопроса
    Багонутый комп @Bagonyty_comp
    Баги повсюду.
    Писмо пришло не к вам а на mymail@mail.ru
    Вместо mymail@mail.ru пишите $email

    так $email это переменная из поля email?