Çerez tasarrufu değil [kapalı]

1 Cevap php

Sitemde kullanıcı bunu görmek neyin belirlediği bir evet / hayır menü ile karşıladı, bu kod peiece olduğunu.

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;
        }

Kullanıcı evet o zaman bu çalıştırmak tıklarsa

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');
        }
    }

eğer bu kod çalıştırılır hayır,

 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');
            }
        } 

Bazı bana yardımcı olabilir umuyoruz

1 Cevap

Çerezleri saklarken gerçekten etki alanı belirtmek gerekir:

setcookie("bangUser", $unique, time() + (60*60*24*30));

olmak gerekir:

setcookie("bangUser", $unique, time() + (60*60*24*30), '/', '.yourdomain.com');

Ben bu sorunu eminim.