Я пытаюсь установить cookie нажатием кнопки с записью AJAX на странице php.
Я проверил настройку cookie вручную перед любым выводом в начале страницы, и он работает нормально. Я проверил вызов AJAX с консольным журналом и осмотр вкладки сети в инструментах разработки - он работает нормально.
Кажется, что cookie блокируется выводом, но это не имеет смысла для меня, потому что весь PHP-файл, на который ссылается AJAX, выглядит так (lightboxform.php):
if (isset($_POST['chosenCountry']) && ($_POST['chosenCountry'] === "uk")){
setcookie("lightbox_country", $_COOKIE['lightbox_country'] = "uk", time()+60*60*24*365, "/", "radventures.co.uk");
}
Как видите - никакого выхода вообще. Если я удаляю оператор if, он работает. Поэтому я подумал, что, возможно, POST не работает, но это так.
$("#lightbox_uk_choice").on("click", function(event) {
$.post("/main/gallery/lightboxform.php",{
chosenCountry:"uk"
}, function(data,status) {
});
});
Если я console.log данных в посте AJAX и выводю POST в операторе php if, консоль записывает «uk», что является ожидаемым поведением.
Я что-то упустил?