У меня были подобные проблемы раньше: например:
{
sendMailToAdmin();
sendMailToUser();
redirect();
}
, и перенаправление происходило до отправки почты пользователю. sendMailToUser()
содержит AJAX вызов. Я решил проблему, поместив (success:redirect())
в Ajax вызове sendMailtoUser()
вместо того, что было в коде выше.
Теперь у меня похожая проблема, но то же решение не работает:
function sendDeletionMailToMember()
{
var data = "userEmail=" + "<?php echo $_SESSION['user'];?>";
$.ajax({
dataType: 'json',
url: 'stcg-json-responses.php?fct=sendDeletionMailToMember',
data: data,
cache: false,
success: deleteMember()
});
};
В электронное письмо должны быть включены некоторые данные пользователей из базы данных. После отправки письма success: deleteMember()
вызывается для удаления всех данных пользователей. Порядок выполнения важен, потому что после выполнения deleteMember()
я не могу больше добавлять данные из базы данных в почту.
Однако письмо отправлено, пользователь удален, но данные, которые мне нужно извлечь из базы данных в почту отсутствует в почте. Похоже, deleteMember()
выполняется слишком быстро. Я пытался с async:false
, но d ie ничего не меняет