Autor | Zpráva | ||
---|---|---|---|
Step Profil |
#1 · Zasláno: 11. 7. 2010, 10:31:30
Mám takovej zvláštní problém se $_SESSION, když po vypsání proměnný použiju unset, tak jako kdyby mi to smazal zpětně.
Tenhle samotný kód funguje bez problému $helper = $_SESSION["notice"]; // samozřejmě můžu použít $_SESSION["notice"] rovnou, ale už mi docházeli nápady if(is_array($helper)){ foreach($helper AS $key =>$notice){ echo "<b>$notice</b><br>"; // vypíše obsah pokud nepoužiju unset(...) } } Ale když přidám unset($_SESSION["notice"]) //ze zoufalosti jsem zkoušel i ...="";, ...=array(); Tak najdenou je $_SESSION["notice"] tam nahoře prázdná. Jenom pro upřesnění, session_start(); je zavolaný a kód se neprovádí vícekrát. |
||
Joker Profil |
#2 · Zasláno: 11. 7. 2010, 11:41:41
Step:
Není to náhodou tak, že se na jedné stránce zavolá to unset, načte se další stránka a tam to (překvapivě) už není? Případně to může být nějaká mezi-stránka s přesměrováním. |
||
Step Profil |
#3 · Zasláno: 11. 7. 2010, 11:50:10
Joker:
kdepak, to unset je prostě hned pod tim, tak jak je to v ukázce |
||
nightfish Profil |
#4 · Zasláno: 11. 7. 2010, 11:57:32
Step:
co vypíše následující kus kódu? <?php session_start(); $_SESSION['notice'] = array('k' => 'test'); if (is_array($_SESSION['notice'])) { foreach ($_SESSION['notice'] AS $key =>$notice) { echo "<b>$notice</b><br>"; } } unset($_SESSION["notice"]); |
||
Step Profil |
#5 · Zasláno: 11. 7. 2010, 12:07:00
nightfish:
tohle funguje v pohodě, takže bude chyba bude někde jinde:-) Díky za ochotu |
||
Joker Profil |
#6 · Zasláno: 11. 7. 2010, 12:22:47
Step:
„kdepak, to unset je prostě hned pod tim, tak jak je to v ukázce“ Čili je jediná stránka, na které se ta hodnota nastaví, pak přečte a potom zase zruší? Na co potom session, to by stačila normální proměnná. |
||
Step Profil |
#7 · Zasláno: 11. 7. 2010, 12:35:44
Joker:
Ta proměná se mi nastaví po updatu/insertu do databáze, potom se přesměruje, tam se po vypsání hlavičky vypíše a pak se zruší... Asi sem tvuj předchozí dotaz špatně pochopil. |
||
Joker Profil |
#8 · Zasláno: 11. 7. 2010, 12:50:55
Step:
No jasně. To co jsem říkal je, že se nejspíš zruší už během toho přesměrování (buď už na té odchozí stránce, nebo při přesměrování přes nějakou mezi-stránku) |
||
Step Profil |
#9 · Zasláno: 11. 7. 2010, 13:04:49
Joker:
Jj je to tak...jenom to někde najít:-) Po přesměrování to ještě existuje, když sem tam dal: if(isset($_SESSION["notice"])) die("tak tady sem zkončil". var_dump($_SESSION["notice"])); tak mi to i po přesměrování vypsal, teď jenom zjistit kdy se to teda smaže:-) |
||
Časová prodleva: 14 let
|
0