/ / come distruggere i cookie dopo 1 minuto in cakephp? - php, cakephp, cookies, cakephp-3.x

come distruggere i cookie dopo 1 minuto in cakephp? - php, cakephp, cookies, cakephp-3.x

Sono nuovo in CakePHP 3.0. Ho creato con successo un cookie ma voglio distruggere quel cookie dopo un minuto. ho fatto finora: -

public function register_cookie(){
$data = "Hello world!";
$this->Cookie->write("dataFetch", $data, true, time() + (60 * 1));
}
public function getcookie() {
$cookiedata = $this->Cookie->read("dataFetch");
echo $cookiedata;
}

ma quando vengo dopo un minuto in getCookie funziona ancora stampa, ad esempio "Hello World" voglio dopo un minuto il cookie è scaduto. Grazie in anticipo :)

risposte:

0 per risposta № 1

In cakephp 3.x come il documento dice che puoi avere questi paramenters

CookieComponent :: write (chiave $ mista, valore $ misto = null)

Ma in cakephp 2.x, usa questi parametri

CookieComponent :: write (chiave $ mista, mista $ value = null, boolean $ encrypt = true, mista $ expires = null)

Per impostare la scadenza è necessario impostare la configurazione in questo modo

$this->Cookie->config([
"expires" => "+10 days",
]);

Quindi il codice sarà così

public function register_cookie(){
$this->Cookie->config([
"expires" => "+1 minute",
]);
$this->Cookie->configKey("dataFetch", "encryption", false);
$data = "Hello world!";
$this->Cookie->write("dataFetch", $data);
}

0 per risposta № 2

Innanzitutto, dovresti controllare se la scadenza del cookiela data è stata impostata correttamente. Ad esempio, in Chrome (dopo che l'elemento inspect attiva la barra della console), vai su ApplicationStorageCookiesLocalhost e controlla il cookie.

In cakephp puoi cancellare un cookie con

$this->Cookie->delete("bar");

Inoltre puoi distruggere un cookie impostando la data di scadenza nel passato con time () - 1