Ладно, это сводит меня с ума. Я даже не смог заставить код отладки работать здесь.
Используя https://github.com/carhartl/jquery-cookie, я установил файл cookie:
var link=$.getQueryParam('q');
var cookie_name="project_"+q+"_diff";
$.cookie(cookie_name,true,{expires:7,path:'/'});
Я пытаюсь прочитать этот файл cookie в PHP-скрипте:
$cookie_name="project_".$q."_diff";
if($_COOKIE[$cookie_name]=='true')
{
echo "<!-- Cookie Status is TRUE -->";
// stuff
}
else
{
echo "<!-- Cookie Status is FALSE for cookie '$cookie_name' \n All cookies: ".print_r($_COOKIE,true)."\n-->";
// Other stuff
}
Я проверяю в консоли Chrome при перезагрузке различных страниц, что файл cookie JS на самом деле установлен, и я могу получить к нему доступ позже.
Результат исходного кода?
<!-- Cookie Status is FALSE for cookie 'project_80afd7a53462bb02dfd39e359ac3f291_diff'
All cookies: Array
(
)
-->
Я также выполнил в консоли следующее, основываясь на другом вопросе StackOverflow, и позже получил результат в консоли, но все еще не вывел его в JS.
function createCookie(name,value,days) {
if (days) {
var date = new Date();
date.setTime(date.getTime()+(days*24*60*60*1000));
var expires = "; expires="+date.toGMTString();
}
else var expires = "";
document.cookie = name+"="+value+expires+"; path=/; domain=.compute.amazonaws.com";
}
Я не получаю НИКАКИХ файлов cookie обратно. Настройка немного странная (запуск PHP на отрендеренном шаблоне Jinja), но все остальные стандартные переменные работают, и мне просто нужно переключение пользователя на длинный сеанс, и файлы cookie кажутся очевидным (хотя и несовместимым) решением. Я открыт для предложений, если никто не может понять это ...