Avatar
StrangeR
Člen
Avatar
StrangeR:

Ahoj, poprvé zkouším použít cookies, ale nějak se nedaří...
Udělal jsem si post, který by měl zapsat data do cookie a pokud je cookie nalezeno, tak je načíst z cookie, ale ani po odeslání formu se nic nestane...

<?php
if ($_COOKIE["username-data"]) {
        loadMessageBox();
} else {
        if (!$_POST['username']) {
                requireName();
        } else {
                setcookie('username-data', $_POST['username'], 3600);
                loadMessageBox();
        }
}
?>

Zde by to mělo vypsat po vyplnění inputu a pak pokaždé po dobu 3600ms co dá uživatel refresh, aby nemusel vypsat jméno znovu.

echo "<p>Přeje: ".$_COOKIE["username-data"]."</p>";
 
Odpovědět  +1 21.10.2015 22:48
Avatar
shaman
Člen
Avatar
Odpovídá na StrangeR
shaman:

Priklad ti bude funguje ak si upravis cas pre platnost Cookie. Treti parameter v setcookie by mal byt UNIXovsky timestamp, kedy ma platnost vyprsat. 3600 sekund vyprsalo 01/01/1970 @ 1:00am (UTC). Takze vzdy ked ju nastavis je uz vlastne zastarala. Ak chces hodinu od teraz pouzi napr:

time()+3600

takze cely riadok bude vyzerat takto

setcookie('username-data', $_POST['username'], time()+3600);
Nahoru Odpovědět 22.10.2015 11:28
try {...} catch (Exception ignored) { echo " ¯\_(ツ)_/¯ "; }
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 2 zpráv z 2.