У меня есть вызов ajax, который переходит на страницу действий с большим количеством действий (действий. php). В моем вызове ajax он передает идентификатор, который сообщает, какое действие использовать. Если вы щелкнете по действию «Отправить образец письма», электронное письмо будет отправлено, и действие выполнится нормально, даже если сообщение «Успех» будет возвращено на консоль. Однако в действии электронной почты (для действий. php) шаблон хранится во включенном файле (образец электронной почты. php).
В действиях. php Я пробовал:
require $_SERVER['DOCUMENT_ROOT'].'/emails/sample-email.php';
и
include('emails/sample-email.php');
Оба «работают», даже возвращая «Success» в журнал консоли, однако ...
console.log(response);
if(response==="Success"){
$.Notification.notify('success','top right','Email Sent', 'Email sent.')
location.reload();
} else {
$.Notification.notify('error','top right','Error', 'There was a problem sending the email.')
}
Возвращает ошибку.
Если я удаляю все, кроме:
<?php
?>
Out of sample-email. php, он по-прежнему показывает ошибку ... Однако, если я удаляю этот код тоже, он возвращает success.
EDIT: Дальнейшее копание показало, что пустой файл php, содержащий только теги php, добавляет пробел перед «Success». Я добавил пробел в мой запрос javascript if / else, и он работает. Странно, хотя.