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 № 1In 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
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