Отправка формы на почту через Ajax и PHPHMailer. Ошибка 500

<form method="POST" class="form " id="pacient-form">
  <div class="form__content-container form__pacient-status-container" id="pacient-container">
    <ul class="form__list reset-list">
      <li class="form__list-item">
        <label class="form__label">Ваше имя</label>
        <input type="text" id="pacient-name" name="pacient-name" placeholder="Евгений"
          class="form__input form__input-text _req">
      </li>
      <li class="form__list-item">
        <label class="form__label">E-mail</label>
        <input type="text" id="pacient-mail" name="pacient-mail" placeholder="[email protected]"
          class="form__input form__input-text _email _req">
      </li>
      <li class="form__list-item">
        <label class="form__label">Телефон</label>
        <input type="text" id="pacient-phone" name="pacient-phone" placeholder="+7 (495) 588-42-88"
          class="form__input form__input-text form__input-text-phone _req" data-mask="phone">
      </li>
      <li class="form__list-item">
        <label class="form__label">Кем вы являетесь</label>
        <select class="form__input form__input-select _req" id="pacient-status" name="pacient-status">
          <option value="Пациент">Пациент</option>
          <option value="Родственник пациента">Родственник пациента</option>
          <option value="Посетитель">Посетитель</option>
          <option value="Другое">Другое</option>
        </select>
      </li>
    </ul>
    <ul class="form__list reset-list">
      <li class="form__list-item">
        <label class="form__label">Страна</label>
        <input type="text" id="pacient-country" name="pacient-country" placeholder="Россия"
          class="form__input form__input-text _req" list="country">
        <datalist id="country">
          <option>Австралия</option>
          <option>Австрия</option>
          <option>Азербайджан</option>
          <option>Албания</option>
          <option>Алжир</option>
          <option>Ангола</option>
          <option>Андорра</option>
          <option>Антигуа и Барбуда</option>
          <option>Аргентина</option>
          <option>Армения</option>
          <option>Афганистан</option>
          <option>Багамы</option>
          <option>Бангладеш</option>
          <option>Барбадос</option>
          <option>Бахрейн</option>
          <option>Белиз</option>
          <option>Беларусь</option>
          <option>Бельгия</option>
          <option>Бенин</option>
          <option>Болгария</option>
          <option>Боливия</option>
          <option>Босния и Герцеговина</option>
          <option>Ботсвана</option>
          <option>Бразилия</option>
          <option>Бруней</option>
          <option>Буркина-Фасо</option>
          <option>Бурунди</option>
          <option>Бутан</option>
          <option>Вануату</option>
          <option>Великобритания</option>
          <option>Венгрия</option>
          <option>Венесуэла</option>
          <option>Восточный Тимор</option>
          <option>Вьетнам</option>
          <option>Габон</option>
          <option>Гаити</option>
          <option>Гайана</option>
          <option>Гамбия</option>
          <option>Гана</option>
          <option>Гватемала</option>
          <option>Гвинея</option>
          <option>Гвинея-Бисау</option>
          <option>Германия</option>
          <option>Гондурас</option>
          <option>Гренада</option>
          <option>Греция</option>
          <option>Грузия</option>
          <option>Дания</option>
          <option>Джибути</option>
          <option>Доминика</option>
          <option>Доминикана</option>
          <option>Египет</option>
          <option>Замбия</option>
          <option>Зимбабве</option>
          <option>Израиль</option>
          <option>Индия</option>
          <option>Индонезия</option>
          <option>Иордания</option>
          <option>Ирак</option>
          <option>Иран</option>
          <option>Ирландия</option>
          <option>Исландия</option>
          <option>Испания</option>
          <option>Италия</option>
          <option>Йемен</option>
          <option>Кабо-Верде</option>
          <option>Казахстан</option>
          <option>Камбоджа</option>
          <option>Камерун</option>
          <option>Канада</option>
          <option>Катар</option>
          <option>Кения</option>
          <option>Кипр</option>
          <option>Кирибати</option>
          <option>Китай</option>
          <option>Колумбия</option>
          <option>Коморы</option>
          <option>Республика Конго</option>
          <option>ДР Конго</option>
          <option>КНДР</option>
          <option>Корея</option>
          <option>Коста-Рика</option>
          <option>Кот-д’Ивуар</option>
          <option>Куба</option>
          <option>Кувейт</option>
          <option>Кыргызстан</option>
          <option>Лаос</option>
          <option>Латвия</option>
          <option>Лесото</option>
          <option>Либерия</option>
          <option>Ливан</option>
          <option>Ливия</option>
          <option>Литва</option>
          <option>Лихтенштейн</option>
          <option>Люксембург</option>
          <option>Маврикий</option>
          <option>Мавритания</option>
          <option>Мадагаскар</option>
          <option>Малави</option>
          <option>Малайзия</option>
          <option>Мали</option>
          <option>Мальдивы</option>
          <option>Мальта</option>
          <option>Марокко</option>
          <option>Маршалловы Острова</option>
          <option>Мексика</option>
          <option>Микронезия</option>
          <option>Мозамбик</option>
          <option>Молдавия</option>
          <option>Монако</option>
          <option>Монголия</option>
          <option>Мьянма</option>
          <option>Намибия</option>
          <option>Науру</option>
          <option>Непал</option>
          <option>Нигер</option>
          <option>Нигерия</option>
          <option>Нидерланды</option>
          <option>Никарагуа</option>
          <option>Новая Зеландия</option>
          <option>Норвегия</option>
          <option>ОАЭ</option>
          <option>Оман</option>
          <option>Пакистан</option>
          <option>Палау</option>
          <option>Панама</option>
          <option>Папуа — Новая Гвинея</option>
          <option>Парагвай</option>
          <option>Перу</option>
          <option>Польша</option>
          <option>Португалия</option>
          <option>Россия</option>
          <option>Руанда</option>
          <option>Румыния</option>
          <option>Сальвадор</option>
          <option>Самоа</option>
          <option>Сан-Марино</option>
          <option>Сан-Томе и Принсипи</option>
          <option>Саудовская Аравия</option>
          <option>Северная Македония</option>
          <option>Сейшелы</option>
          <option>Сенегал</option>
          <option>Сент-Винсент и Гренадины</option>
          <option>Сент-Китс и Невис</option>
          <option>Сент-Люсия</option>
          <option>Сербия</option>
          <option>Сингапур</option>
          <option>Сирия</option>
          <option>Словакия</option>
          <option>Словения</option>
          <option>США</option>
          <option>Соломоновы Острова</option>
          <option>Сомали</option>
          <option>Судан</option>
          <option>Суринам</option>
          <option>Сьерра-Леоне</option>
          <option>Таджикистан</option>
          <option>Таиланд</option>
          <option>Танзания</option>
          <option>Того</option>
          <option>Тонга</option>
          <option>Тринидад и Тобаго</option>
          <option>Тувалу</option>
          <option>Тунис</option>
          <option>Туркменистан</option>
          <option>Турция</option>
          <option>Уганда</option>
          <option>Узбекистан</option>
          <option>Украина</option>
          <option>Уругвай</option>
          <option>Фиджи</option>
          <option>Филиппины</option>
          <option>Финляндия</option>
          <option>Франция</option>
          <option>Хорватия</option>
          <option>ЦАР</option>
          <option>Чад</option>
          <option>Черногория</option>
          <option>Чехия</option>
          <option>Чили</option>
          <option>Швейцария</option>
          <option>Швеция</option>
          <option>Шри-Ланка</option>
          <option>Эквадор</option>
          <option>Экваториальная Гвинея</option>
          <option>Эритрея</option>
          <option>Эсватини</option>
          <option>Эстония</option>
          <option>Эфиопия</option>
          <option>ЮАР</option>
          <option>Южный Судан</option>
          <option>Ямайка</option>
          <option>Япония</option>
        </datalist>
      </li>
      <li class="form__list-item">
        <label class="form__label">Регион, область</label>
        <input type="text" id="pacient-region" name="pacient-region" placeholder="Московская область"
          class="form__input form__input-text _req">
      </li>
      <li class="form__list-item">
        <label class="form__label">Населенный пункт</label>
        <input type="text" id="pacient-city" name="pacient-city" placeholder="Москва"
          class="form__input form__input-text _req">
      </li>
      <li class="form__list-item">
        <label class="form__label">Опишите НР</label>
        <textarea placeholder="Опишите ситуацию, симптомы..." class="form__input form__input-textarea _req"
          id="pacient-unwanted-reaction-descr" name="pacient-unwanted-reaction-descr"></textarea>
      </li>
    </ul>
  </div>

  <p class="form__checkbox-mistake-text" id="pacient-mistake-text">Вы не согласились с правилами сайта.</p>

  <div class="form__agree-container">
    <label class="form__checkbox-label" for="pacient-checkbox-1">
      <input class="form__checkbox _req" id="pacient-checkbox-1" type="checkbox" name="pacient-agree-1" checked>
      <span class="form__checkbox-text">Я
        ознакомился и согласен с
        <a class="quiz__link form__agree-link" href="">Условиями использования
          Сервиса</a> и <a class="quiz__link form__agree-link" href="">Условиями использования
          Сайта</a>
      </span>
    </label>
    <label class="form__checkbox-label" for="pacient-checkbox-2">
      <input class="form__checkbox _req" id="pacient-checkbox-2" type="checkbox" name="pacient-agree-2" checked>
      <span class="form__checkbox-text">
        Я согласен на <a class="quiz__link form__agree-link" href="">Обработку персональных
          данных</a>
      </span>
    </label>
  </div>

  <button type="submit" class="form__button" id="pacient-button">Отправить</button>

</form>

Файл JS

    "use strict"

document.addEventListener('DOMContentLoaded', function () {
  const pacientForm = document.getElementById('pacient-form');
  const config = {
    method: 'POST',
    body: formData
  }
  pacientForm.addEventListener('submit', formSend);

  async function formSend(e) {
    e.preventDefault();

    let error = formValidate(pacientForm);

    let formData = new FormData(pacientForm);

    if (error === 0) {
      pacientForm.classList.add('_sending');
      let response = await fetch('pacientSendMail.php', config);
      if (response.ok) {
        let result = await response.json();
        alert(result.message);
        formPreview.innerHTML = '';
        pacientForm.reset();
        pacientForm.classList.remove('_sending');
      } else {
        alert("Ошибка JS" + response.status);
        pacientForm.classList.remove('_sending');
      }
    } else {
      alert('Заполните обязательные поля')
    }

  }


  function formValidate(pacientForm) {
    let error = 0;
    let formReq = document.querySelectorAll('._req');

    for (let index = 0; index < formReq.length; index++) {
      const input = formReq[index];
      formRemoveError(input);

      if (input.classList.contains('_email')) {
        if (emailTest(input)) {
          formAddError(input);
          error++;
        }
      } else if (input.getAttribute("type") === "checkbox" && input.checked === false) {
        formAddError(input);
        error++;
      } else {
        if (input.value === '') {
          formAddError(input);
          error++;
        }
      }

    }
    return error;
  }

  function formAddError(input) {
    input.parentElement.classList.add('_error');
    input.classList.add('_error');
  }

  function formRemoveError(input) {
    input.parentElement.classList.remove('_error');
    input.classList.remove('_error');
  }
  // Функция теста e-mail
  function emailTest(input) {
    return !/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,8})+$/.test(input.value);
  }

});

Файл PHP (настройки почты убрал, выставлены правильно вроде)

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

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

$mail = new PHPMailer(true);
$mail->CharSet = 'UTF-8';
$mail->setLanguage('ru', 'PHPMailer/language/');
$mail->IsHtml(true);

$mail->isSMTP();   
$mail->SMTPAuth   = true;
//$mail->SMTPDebug = 2;

// От кого
  // Настройки вашей почты
  $mail->Host       = '...'; // SMTP сервера вашей почты
  $mail->Username   = '[email protected]'; // Логин на почте
  $mail->Password   = '***'; // Пароль на почте
  $mail->SMTPSecure = 'ssl';
  $mail->Port       = 465;
  $mail->setFrom('[email protected]', 'Ваня Директор'); // Адрес самой почты и имя отправителя
// Кому
$mail->addAddress('[email protected]');
// Тема письма
$mail->Subject = 'Тема письма - тест';

// Тело письма
$body = '<h1>Заявление пациента о нежелательной реакции</h1>'

if(trim(!empty($_POST['pacient-name']))){
  $body.='<p><strong>Имя:</strong> '.$_POST['pacient-name'].'</p>';
}
if(trim(!empty($_POST['pacient-mail']))){
  $body.='<p><strong>E-mail:</strong> '.$_POST['pacient-mail'].'</p>';
}
if(trim(!empty($_POST['pacient-phone']))){
  $body.='<p><strong>Телефон:</strong> '.$_POST['pacient-phone'].'</p>';
}
if(trim(!empty($_POST['pacient-status']))){
  $body.='<p><strong>Кем является:</strong> '.$_POST['pacient-status'].'</p>';
}
if(trim(!empty($_POST['pacient-country']))){
  $body.='<p><strong>Страна:</strong> '.$_POST['pacient-country'].'</p>';
}
if(trim(!empty($_POST['pacient-region']))){
  $body.='<p><strong>Регион, область:</strong> '.$_POST['pacient-region'].'</p>';
}
if(trim(!empty($_POST['pacient-city']))){
  $body.='<p><strong>Населенный пункт</strong> '.$_POST['pacient-city'].'</p>';
}
if(trim(!empty($_POST['pacient-unwanted-reaction-descr']))){
  $body.='<p><strong>Описание НР:</strong> '.$_POST['pacient-unwanted-reaction-descr'].'</p>';
}

$mail->Body = $body;

if (!$mail->send()) {
  $message = 'Ошибка PHP';
} else {
  $message = 'Данные отправлены!';
}

$response = ['message' => $message];

header('Content-type: application/json');
echo json_encode($response);
?>

После нажатия кнопки отправки формы выводится уведомление "Ошибка JS 500". А также ошибка в консоли (см. на картинке). Не понимаю в чем дело. Может где-то ошибка, либо неправильно подключено что-то. Прошу помогите. введите сюда описание изображения


Ответы (0 шт):