Pagina 1 din 1

inlocuire nereusita variabile $_SESSION

Scris: Sâm Aug 14, 2004 6:15 pm
de saschart
Salut,

Doresc sa inlocuiesc varabilele dintr-o sesiune:

session_start();

if ($delsetting=="yes") {
// am incercat si session_destroy(); session_start();
$_SESSION['username']=$username;
$_SESSION['*']=$*;
$_SESSION['mybgcolor']=$mybgcolor;
$_SESSION['flwidth']=$flwidth;
}


if ($_SESSION) {
$username=$_SESSION['username'];
$*=$_SESSION['*'];
$mybgcolor=$_SESSION['mybgcolor'];
$flwidth=$_SESSION['flwidth'];
}


Deci cand dau valoarea "yes" variabilei delsetting as vrea sa se schimbe valorile din $_SESSION cu cele noi.

De ce nu merge ?

Scris: Dum Aug 15, 2004 12:00 am
de ExcalIbvr

Re: inlocuire nereusita variabile $_SESSION

Scris: Mar Sep 21, 2004 4:09 pm
de deltiq

Scris: Mie Oct 06, 2004 1:27 pm
de saschart
Merge intr-adevar ambele metode daca dau session_destroy(); dar problema e ca am nevoie de celelalte variabile din sesiune si session_destroy(); mi le distruge pe toate.

Nu primesc nici o eroare, variabila delsetting este yes si in plus mai vreau sa folosesc la schimbarea limbii inlocuirea variabilelor si la fel nu merge decat cu destroy

Scris: Vin Oct 08, 2004 10:41 am
de saschart

Scris: Vin Oct 08, 2004 11:53 am
de Troto
$_SESSION['o_variabila'] = '';

Scris: Vin Oct 08, 2004 1:46 pm
de saschart
Daca mergea $_SESSION['o_variabila'] = "''; mergea si inlocuirea. Dau codul de schimbare limbi:


session_start();
if ($lang) {
unset($_SESSION['lang']);// daca vrei $_SESSION['lang']="";
$_SESSION['lang']=$lang;
}
else {
if ($_SESSION['lang']) {
$lang=$_SESSION['lang'];
}
}
if (!$lang) {
$lang="en";//default
}

Dupa ce setez o limba (sa zicem $lang="en") ramane asa chiar daca schimb variabila $lang

Sa fie din php.ini (eu testez codurile pe phptriad in windows) ?

Scris: Vin Oct 08, 2004 10:57 pm
de un_guru
nu prea are sens codul tau ...

daca e definit $lang atunci il inregistrezi in session, daca nu il iei din session?! dar daca $lang nu e ... nici $_SESSION[lang] nu poate fi...

da-ne mai multe detalii te rog
ps.
variabilele din session pot fi suprascrise fara unset() prealabil.

Scris: Sâm Oct 09, 2004 11:15 am
de saschart
Am rezolvat, iata si codul corect:

if ($_GET['lang']) {
$_SESSION['lang']=$_GET['lang'];
setcookie('lang', $_GET['lang'], time() + 60*60*24*30);
}
else {
if ($_COOKIE['lang']) {
$lang=$_COOKIE['lang'];
}
else {
$lang=$_SESSION['lang'];
}
}
if (!$lang) {
$lang="en";
}

Cu linkuri ?lang=en si ?lang=fr