Portál AbcLinuxu, 13. července 2025 16:48
//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'];
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']?
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....
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
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".
Mneto
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?
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
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.