Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Kolejny problem z sesjami...
Forum PHP.pl > Forum > PHP
MajeS
Mam dziwny problem z sesjami, mimo to ze sa one poprawnie rejestrowane to pozniej pojawia sie problem z ich odczytem i wyswietleniem na stronie...

Oto kod:

Kod
// poczatkowa czesc kodu



if($e == "usr_log_in") // jesli uzytkownik sie loguje to wykonaj nastepujace akcje

{

// tutaj pobierane sa dane z bazy MySQL



  $_SESSION   = "1";

  $_ID        = $user[id];

  $_USERNAME  = $user[username];

  $_PASSWORD  = $user[password];

  $_EMAIL     = $user[email];

  $_WWW       = $user[www];

  $_SIGNATURE = $user[signature];

  $_IP        = $user[ip];



  session_start();



  session_register('_SESSION');

  session_register('_ID');

  session_register('_USERNAME');

  session_register('_PASSWORD');

  session_register('_EMAIL');

  session_register('_WWW');

  session_register('_SIGNATURE');

  session_register('_IP');





  header("Location: $PATH_INFO");

  die;

    }



// tutaj dalsza czesc kodu...



Problem w tym ze nie dziala ani echo "$_USERNAME";, ani poprzez $_SESSION['_USERNAME'] ani w zaden inny sposob... po prostu tak jakby te zmienne byly puste a nie powinny byc bo w /php/sessiondata mam pliczek sesji z wszelkimi danymi w srodku...

php 4.3.1
Apache 2.0.39
generalnie to jest FoxServ 3.0 na win xp smile.gif

aha register_globals = On w php.ini

Jakies pomysly? smile.gif Bede wdzieczny za Re
KaMeLeOn
Wcale się nie dziwię, zaglądałeś do dokumentacji ?
1.
[php:1:7faf1fb0b9]$_SESSION = "1";[/php:1:7faf1fb0b9]
Nazwę $_SESSION ma tablica superglobalna zawierająca dane zarejestowane w sesji... Nazwij to inaczej np. $_SESS
2.
[php:1:7faf1fb0b9]session_register('_ID');[/php:1:7faf1fb0b9]
Nie stosuje się już session_register()...
Wystarczy stworzyć:
[php:1:7faf1fb0b9]$_SESSION['_ID'] = '';
// lub w odpowiednim momencie
$_SESSION['_ID'] = 'wartosc';[/php:1:7faf1fb0b9]
3.
Kod
register_globals = On

Wyłączyć, na serwerze na pewno nie jest ON...
MajeS
hmm wiec teraz jest tak:

Kod
  session_start();



  $_SESSION["_SESS"]      = "1";

  $_SESSION["_ID"]        = $user[id];

  $_SESSION["_USERNAME"]  = $user[username];

  $_SESSION["_PASSWORD"]  = $user[password];

  $_SESSION["_EMAIL"]     = $user[email];

  $_SESSION["_WWW"]       = $user[www];

  $_SESSION["_SIGNATURE"] = $user[signature];

  $_SESSION["_IP"]        = $user[ip];


i dalej to samo... co dziwne nie dziala nawet wywolanie session_destroy(), dostaje komunikat ze zadna sesja nie istnieje i nie ma co usuwac... a sesja chyba jednak jest bo tak jak mowilem tworzy sie jej pliczek w /foxserv/sessiondata

btw jak usunac sesje kiedy uzytkownik po prostu zamknie przegladarke bez uzycia session_destroy() (nawet jesli by dzialalo smile.gif)?
MajeS
ok juz sobie poradzilem, dzieki za pomoc i sorry za spam...

zamknijcie ten topic czy cos smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.