Я сейчас пишу форму ajax с помощью jquery.
Форма обрабатывается с помощью PHP-скрипта, затем информация отправляется через облегченный класс PHPMailer. (http://phpmailer.worxware.com/index.php)
Это код PHP:
if ($mail->Send())
echo '{"message":"Mensaje enviado con éxito","status":"ok"}';
else
echo '{"message":"Ocurió un error al envíar el mensaje, intentelo más tarde.","status":"fail"}';
Я обнаружил эту проблему, когда сообщение, отправленное пользователем, является недействительным, что привело к следующей ошибке:
Invalid address: E-mail:Invalid address: E-mail:Could not execute: /usr/sbin/sendmail
Я должен проверить электронную почту. Хорошо. Но проблема в том, что предыдущее сообщение об ошибке «мешает» и искажает ответ. Таким образом, я могу устранить ошибку электронной почты, но любое другое предупреждение / ошибка может повредить ответ.
Пример ответа «поврежден»:
Неверный адрес: E-mail: Неверный адрес: E-mail: Не удалось выполнить: / usr / sbin / sendmail
{"message": "Ocurió un error al envíar el mensaje, intentlo más tarde.", "status": "fail"}
(там не должно быть первой строки)
И это часть javascript (jquery):
$.ajax
({
type: "POST",
url: "contact.php",
data: $(this).serialize(),
success: function(data)
{
if(data.status == 'fail')
{
do something with data.message;
}
else if(data.status == 'ok')
{
do something else with data.message;
}
},
dataType: 'json'
});
Помогите ли вы с этим? :) спасибо