Nastavení platnosti session – PHP – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Nastavení platnosti session – PHP – Fórum – Programujte.comNastavení platnosti session – PHP – Fórum – Programujte.com

 

Marek Štafl0
Stálý člen
8. 3. 2007   #1
-
0
-

V jednom příspěvku tady ve fóru jsem si přečetl, že doba platnosti session se nastavuje pomocí session_cache_expire() a session_set_cookie_params(), ale v manuálu se píše toto:

The cache expire is reset to the default value of 180 stored in session.cache_limiter at request startup time. Thus, you need to call session_cache_expire() for every request (and before session_start() is called).

Set cookie parameters defined in the php.ini file. The effect of this function only lasts for the duration of the script. Thus, you need to call session_set_cookie_params() for every request and before session_start() is called.

Já teda moc anglicky neumím, ale jestli jsem to pochopil správně, tak efekt téhle funkce platí pouze pro aktuální skript.
Je to tak? A jestli jo, tak k čemu to vlastně je?
Potřeboval bych nastavit platnost session na 2 hodiny například, ale aby se taky nesmazala po uzavření okna prohlížeče. Jak to mám udělat?

Díky

Nahlásit jako SPAM
IP: ...–
Jakub0
Super člen
9. 3. 2007   #2
-
0
-

To MareX: Jestli chceš, aby ti to fungovalo všude, tak to musí být pořád namlácený v kódu. Prostě si to dej třeba tam, co pokaždé includuješ.

Tohle mi funguje korektně:



<?php
$zivotnost_v_sekundach = 30;
session_set_cookie_params($zivotnost_v_sekundach);
session_cache_expire(ceil($zivotnost_v_sekundach/60));
session_start();

if(isset($_SESSION['sezeni'])) {
echo 'Porad jeste sedime.';
}
else {
$_SESSION['sezeni'] = TRUE;
echo 'Startujeme nove sezeni.';
}
?>

Možná, že jsou někde s tím potíže, ale já jsem se s nimi nesetkal. Jestli ti to nepojede, prostě si napiš vlastní session handler nebo to odněkud okoukej, na netu je toho spousta a několik CMS má vlastní(např.: Drupal, XOOPS, Xaraya).

Nahlásit jako SPAM
IP: ...–
Věřím, že můžete v životě získat všechno, co budete chtít, když budete pomáhat druhým lidem, aby dostali to, co si přejí oni. - Zig Ziglar TOPlist
Marek Štafl0
Stálý člen
9. 3. 2007   #3
-
0
-

Takže stačí, když to dám do každé stránky a zůstane to v platnosti i po uzavření a znovu otevření okna prohlížeče?

Nahlásit jako SPAM
IP: ...–
Marek Štafl0
Stálý člen
10. 3. 2007   #4
-
0
-

Tak mi to nefunguje :( Zkoušel jsem to na 30 dní a v Opeře jsem zkontroloval ve správci cookie, že její platnost je opravdu na 30 dní, ale po reloadu stránky po 30-ti minutách jsem byl stejně odhlášen.

Takhle to mám:

<?php

$session_cas_sekundy = (60*60*24*30);
session_set_cookie_params($session_cas_sekundy);
session_cache_expire(ceil($session_cas_sekundy / 60));
session_start();
?>

Nahlásit jako SPAM
IP: ...–
Jakub0
Super člen
11. 3. 2007   #5
-
0
-

MareX píše:#
# Tak mi to nefunguje :( Zkoušel jsem to na 30 dní a v Opeře jsem zkontroloval ve správci cookie, že její platnost je opravdu na 30 dní, ale po reloadu stránky po 30-ti minutách jsem byl stejně odhlášen.#
##
#Takhle to mám:#
#

<?php#
#$session_cas_sekundy = (60*60*24*30);#
#session_set_cookie_params($session_cas_sekundy);#
#session_cache_expire(ceil($session_cas_sekundy / 60));#
#session_start();#
#?>


A tuhle poučku z manuálu znáš?
Note: Setting new_cache_expire is of value only, if session.cache_limiter is set to a value different from nocache.



phpinfo();
//nebo
var_dump(ini_get('session.cache_limiter'));

Nahlásit jako SPAM
IP: ...–
Věřím, že můžete v životě získat všechno, co budete chtít, když budete pomáhat druhým lidem, aby dostali to, co si přejí oni. - Zig Ziglar TOPlist
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 6 hostů

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý