Я не понимаю, почему не читаются установленные мною куки? Через JS добавил куку city со значением 4019 Теперь пытаюсь получить эту куку PHP: public function index(Request $request) { dd($request->cookie('city')); Выводит null, хотя она есть А если получать куки XSRF-TOKEN или laravel_session то они выводятся --- Добавлено --- если сделать так, то выводит PHP: dd($_COOKIE['city']); но это наверно неправильно так делать в ларавеле --- Добавлено --- Так тоже null PHP: use Illuminate\Http\Response; public function index(Request $request) { $minutes = 60; $response = new Response('Set Cookie'); $response->withCookie(cookie('name', 'MyValue', $minutes)); dd($request->cookie('name')); --- Добавлено --- Сделал по мануалу, тоже не появляются PHP: Cookie::queue(Cookie::make('name222', 'value', 11)); Cookie::queue('name222', 'value', 11); --- Добавлено --- И так не появляются PHP: $cookie = cookie('name', 'value', 111); И ошибок не выводит
Set это не Get. В доке ларки Cookie::get(cookie_name). Если в $_COOKIE null значит её там нету. Может ты в localStorage пишешь? Покажи JS. И нету такой функции для установки куки как cookie() есть setcookie().
@villiwalla На картинке же видно, что js добавил её --- Добавлено --- @villiwalla Делаю так PHP: dd($_COOKIE); Выводит Код (Text): array:3 [▼ "city" => "197" "XSRF-TOKEN" => "eyJpdiI6IkNmOWFZNTBNeVJZVDlnbzZPdktZd3c9PSIsInZhbHVlIjoiMHFwb1pFZ2lYUlNDZENzTmR3Z0VvU1VSaGVnS25vdFd2ZUdvMnJ5ZFpHeTNaN3dtcUZaNVAwcGxXVU43N3NmRyIsIm1hYyI6ImYwNjUz ▶" "laravel_session" => "eyJpdiI6IlpQWmZQbklNRVFOYkl5ZTN1cnBsM1E9PSIsInZhbHVlIjoiUUpTa3ZzTG1Cb2w4MXE0K0ExTGxQRXJUUGNiNnNLUzRMM3lMMWZ4ZVR4cFpjeUJrOENkVUNcLzZ2cUlNbHgyN1oiLCJtYWMiOiI2NGFj ▶" ] --- Добавлено --- @villiwalla а смысл js показывать? Код (Javascript): <script> function setCookie(name, value, days, path) { path = path || '/'; // заполняем путь если не заполнен days = days || 10; // заполняем время жизни если не получен параметр var last_date = new Date(); last_date.setDate(last_date.getDate() + days); var value = escape(value) + ((days==null) ? "" : "; expires="+last_date.toUTCString()); document.cookie = name + "=" + value + "; path=" + path; // вешаем куки } function chooseCity(){ var cit = document.querySelectorAll('.choose-city'); cit.forEach(function(element, i){ cit[i].addEventListener('click', function(e) { e.preventDefault(); var idCity = e.target.dataset.cityId; var name = e.target.dataset.name; setCookie('city', idCity, 10, '/'); }); }); } </script>
https://stackoverflow.com/questions/29114345/cant-set-cookie-in-laravel/29114763 https://stackoverflow.com/questions/14975751/laravel-4-reading-cookies-set-by-javascript