Форма обратной связи php

Делаю форму обратной связи. Создал ящик на домене, ограничений на использование php mail() нет.

Выдает ошибку

Uncaught SyntaxError: Unexpected token < in JSON at position 0
    at JSON.parse (<anonymous>)
    at Object.error ((index):499)
    at j (jquery.min.js:2)
    at Object.fireWith [as rejectWith] (jquery.min.js:2)
    at x (jquery.min.js:4)
    at XMLHttpRequest.<anonymous> (jquery.min.js:4)

Привожу код

html:

<form class="main-order-form m1-form" id="order" action="send.php" method="POST" > <!--onsubmit="return false;"-->
   <input class="field" type="text" name="name" placeholder="Введите Ваше имя" required>
   <input class="field" type="tel" name="phone" placeholder="Введите телефон" required>
   <button class="button-m big">Сделать заказ</button>
   <input type="hidden" name="l" value="018f34ed24d296ba9a1540a7a90067e1c313ad2e" />
   <input type="hidden" name="4eb467bfde0b9c6c56ff776ae697d80f89acfcdc"   value="OGIyYjc1NTkyYmY1ZjAyOWUyMDhmNjllNGUyNjM4YWM0Mzc=" />
</form>

и php:

<?php 
if (!empty($_POST['name']) AND (!empty($_POST['phone']))){

  $headers = 'From: http://shopforeo.ru/\r\n'. 'Reply-To: [email protected]\r\n'. 'X-Mailer: PHP/'. phpversion();

  $theme = 'Новое сообщение';

  $letter = 'Данные сообщения:\r\n';
  $letter .='Имя: '.$_POST['name'].'\r\n';
  $letter .='Телефон: '.$_POST['phone'].'\r\n';

  echo $letter;
  if (mail('[email protected]', $theme, $letter, $headers)){
    echo "Сообщение отправлено!";
  } else {
    echo "Ошибка при отправке!";
  }
} else {
  echo "Ошибка: Заполните все поля!";
}
if(!empty($_POST)) print_r($_POST);
?>

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

Автор решения: Borislav

Предполагаю, что вы не тот код показываете, ошибка с фронта, там где вы json парсите, наверно в success у ajax (XMLHttpRequest).

echo $letter, - сюда упираетесь, сделайте echo json_encode ($letter) и пропадет ваша ошибка скорее всего.

→ Ссылка