Portál AbcLinuxu, 13. července 2025 16:48


Dotaz: Session

19.2.2009 14:30 Mr.S1lent.cz
Session
Přečteno: 167×
Odpovědět | Admin

//tento zapis mi vrati $logged = "0"
//i kdyz bude session "neprazdna"
$logged = "0";
if($_SESSION['logged'] !="") {
    $logged = $_SESSION['logged'];
}   
/*-----------------------------------
chyba prenosu session to nebude,
ponevadz nasledujici porovnavni
mi opravdu vytiskne hodnotu, ktera se
v session prenasi, rad bych vedel,
co je na tom mechanismu nahore
za problem :-(
*/
$logged = $_SESSION['logged'];

Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

19.2.2009 14:50 Messa | skóre: 39 | blog: Messa
Rozbalit Rozbalit vše Re: Session
Odpovědět | | Sbalit | Link | Blokovat | Admin

Já bych zase rád věděl, co máte za problém vy :-) (Počet otazníků je ve vašem dotazu výrazně menší než v dotazech obvykle bývá.)

Co třeba má být v $_SESSION['logged']?

19.2.2009 14:57 Mr.S1lent.cz
Rozbalit Rozbalit vše Re: Session

Staci si precist koment :-) kdyz je hodnota session prazdna, $logged je rovna nule, protoze se podminka nevyplni a nedojde k prepsani promenne na jinou hodnotu, pokud ovsem je hodnota neprazdna, melo by k pretypovani dojit, ale bohuzel k tomu nedojde. Proto jsem vyzkousel ten script pod nim - prima definice: $logged = patricna session a $logged pak nabude prislusne hodnoty :-) uz je to jasne? ja myslel, ze staci ty comenty v tom fragmentu kodu....

19.2.2009 16:43 Mr.S1lent.cz
Rozbalit Rozbalit vše Re: Session

takze znovu s lepsim, prehlednejsim popisem:

.mam problem s tim ze:

//tento zapis mi vrati $logged = "0"

//i kdyz bude session "neprazdna"

$logged = "0";

if($_SESSION['logged'] !="") {

 $logged = $_SESSION['logged'];

}

proto jsem tento script nahradil timto:

/*-----------------------------------
chyba prenosu session to nebude,
ponevadz nasledujici porovnavni
mi opravdu vytiskne hodnotu, ktera se
v session prenasi
*/
$logged = $_SESSION['logged'];

 takze logicky problem s prenosem session neni - vyplni se patricnou hodnotou, tim padem by ale melo dojit v prvnim scriptu k prepisu promenne $logged v podmince, k cemuz ovsem nedojde, porad je rovna nule, mohl by mi nekdo prosim vysvetlit proc? :-(

dekuji, Mr.S1lent.cz

19.2.2009 18:38 Andrej Herceg | skóre: 43
Rozbalit Rozbalit vše Re: Session
Mne

to

funguje

normálne.

:)

Keď sa zapne zobrazovanie chýb, aké chybové hlášky to vypíše? Čo pred tou podmienkou vypíše
echo "<pre>", print_r($_SESSION, true), "</pre>";
?

Inak ja by som namiesto$_SESSION['logged'] !="" použil radšej isset($_SESSION['logged']) prípadne
$logged = isset($_SESSION['logged']) ? $_SESSION['logged'] : "0"
.
19.2.2009 18:49 Messa | skóre: 39 | blog: Messa
Rozbalit Rozbalit vše Re: Session
Mne

 

to

 

funguje

 

normálne.

 

:)

No právě, kromě hodnot 0 a false vše funguje dokonce i intuitivně.

 Spíš to tipuju na chybu někde v dalším kódu, který zde ovšem nevidíme. session_start() je ještě před tou podmínkou, že?

19.2.2009 19:23 Mr.S1lent.cz
Rozbalit Rozbalit vše Re: Session

ja uz vim, kde byla chyba :-)

ja jsem totalni pako a zapomnel jsem, ze $_SESSION['prom'] = $prom; :-)

cili kdyz jsem mel $logged ="0"; tak pak $_SESSION['logged'] se rovnalo taky nule a ne te hodnote, kterou jsem poslal z kontrolniho scriptu :-)

kdyz jsem zmenil jmeno session na log a upravil podminky, vsechno jede ok i zavisle komponenty :-)

to byl potrat :-D

20.2.2009 10:48 Messa | skóre: 39 | blog: Messa
Rozbalit Rozbalit vše Re: Session

Tak když má někdo ještě v roce 2009 zapnuté register_globals :-) Je vidět, že nedělám (denně) v PHP, mohlo mě to napadnout.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.