Я использую ниже трюк, чтобы вернуть ответ успеха с AJAX:CakePHP - правильный способ вернуть AJAX ответ успеха?
//In controller
echo 'success';
//In Javascript
if(response == 'success'){
//redirect
window.location.href = '/users/profile/';
}
Он отлично работает на локальном хосте. Но в веб-сервере, я получил ошибку ниже каждый раз я хочу, чтобы перенаправить страницу после успеха:
Cannot modify header information - headers already sent by (output started at ...
Так что да, я знаю, что это вызвано echo
перед перенаправлением.
Итак, есть ли способ вернуть ответ успеха? Не нужно быть сообщением, достаточно true
или false
.
[EDIT]
С помощью exit('success')
, он отлично работает, но это лучший способ?
Спасибо.
если ваша функция обрабатывает запрос ajax, тогда их нет необходимости в перенаправлении ..! не могли бы вы показать нам код ... и вы могли бы сделать перенаправление из JS-части внутри if (response == 'success') ...! –
привет спасибо. Внезапно он отлично работает, не меняя никакого кода. Я думал, что использование 'exit ('success')' исправлено, но я переделаю изменение и все еще работает. – hrsetyono