На моем сайте пользователь приветствует меню yes / no, которое определяет, видят ли они его, это фрагмент кода.
if(!isset($_COOKIE['bangUser'])) { // Get createRandomId() method and return a unique ID for the user $unique = ''; // Setting the cookie, name = bangUser, the cookie will expire after 30 days setcookie("bangUser", $unique, time() + (60*60*24*30)); $data['firstTime'] = TRUE; } else { $data['notFirstTime'] = TRUE; }
Если пользователь нажимает «да», то этот запуск
function createCookie() { // Function gets called when the user clicks yes on the firstTime menu. // The purpose of this function is to create a cookie for the user. // First we'll give them a unique ID $unique = $this->createRandomId(); // Set an expiration time $expireAt = time() + (60*60*24*30); // With the unique ID now available we can set our cookie doing the same function as before $_COOKIE[] = setcookie("bangUser", $unique, $expireAt); // Now that the cookie is set we can do a 100% check, check that cookie is set and if it is redirect to // to the homepage if(isset($_COOKIE['bangUser'])) { // We need to save the cookie data to the database // First let's load the model for the cookies $this->load->model('cookieModel'); $this->cookieModel->saveCookieRecord($unique, $expireAt); redirect('/welcome'); } }
если этот код не запущен,
function createCookieLater() { // Function gets called when the user clicks yes on the firstTime menu. // The of this function is create a cookie for the user, but this time it, // It will expire when the user closes the window. // Again we give them an ID $unique = $this->createRandomId(); $_COOKIE[] = setcookie("bangUser", $unique, 0); // Now that we have set the cookie, we again need to check that it is properly set, // and if it we can redirect the user back to the main page, again. if(isset($_COOKIE['bangUser'])) { // We need to save the cookie data to the database // First let's load the model for the cookies $this->load->model('cookieModel'); $this->cookieModel->saveCookieRecord($unique, $expireAt); redirect('/welcome'); } }
надеюсь, некоторые могут мне помочь
Вы должны указать домен при хранении файлов cookie:
setcookie("bangUser", $unique, time() + (60*60*24*30));
должны стать:
setcookie("bangUser", $unique, time() + (60*60*24*30), '/', '.yourdomain.com');
Я уверен, что это ваша проблема.