Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] $_SESSION a klasa
Salve
post
Post #1





Grupa: Zarejestrowani
Postów: 11
Pomógł: 1
Dołączył: 7.06.2008

Ostrzeżenie: (0%)
-----


Witam!

Mam kolejny problem przesyłam sobie tablicę $_SESSION do klasy jednak ta nie działa jak powinna.

Zmienne w tablicy są bo dodanie
  1. <?php
  2. Print_R($_SESSION);
  3. ?>
w pliku index.php wyświetla ładnie dane.

plik index.php
  1. <?php
  2. include_once('config.php');
  3. include_once('klasa.php');
  4.  
  5. $user = new user($_SESSION);
  6.  
  7. if( $user->logged == true )
  8. {
  9. // kod
  10. }
  11. elseif( $user->logged == false )
  12. {
  13. // kod
  14. }
  15. ?>


plik klasa.php
  1. <?php
  2. class user
  3. {
  4.    private $_aSession;
  5.    private $_isLogged = false;
  6.  
  7.    public function __consturct($aSession)
  8.    {
  9.        $this->_aSession = $aSession;
  10.    }
  11.  
  12.    public function logged()
  13.    {
  14.        ( $this->_aSession['logged'] == 1 ) ? $this->_isLogged = true : $this->_isLogged = false;
  15.        return $this->_isLogged;
  16.    }
  17. }
  18. ?>


W klasie user tablica się traci. Jakieś pomysły ?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
Fifi209
post
Post #2





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

Ostrzeżenie: (0%)
-----


$_SESSION to zmienna (super) globalna, co oznacza że jest dostępna w kodzie z każdego miejsca, tak więc nie musisz jej przekazywać jako parametr do klasy.

Poza tym kod:
  1. <?php
  2. private $_isLogged = false;
  3. ?>


WTF? smile.gif

Ten post edytował fifi209 20.07.2009, 11:01:57


--------------------
Zainteresowania: C#, PHP, JS, SQL, AJAX, XML, C dla AVR
Chętnie pomogę, lecz zanim napiszesz: Wujek Google , Manual PHP
Go to the top of the page
+Quote Post
antyqjon
post
Post #3





Grupa: Zarejestrowani
Postów: 77
Pomógł: 27
Dołączył: 24.03.2002
Skąd: Tarnów

Ostrzeżenie: (0%)
-----


Literówka w nazwie konstruktora.


--------------------
Zbyszek 'antyqjon' Siciarz

siciarz.net | Aquila DSP C++
Go to the top of the page
+Quote Post
Salve
post
Post #4





Grupa: Zarejestrowani
Postów: 11
Pomógł: 1
Dołączył: 7.06.2008

Ostrzeżenie: (0%)
-----


Wiem, że $_SESSION jest zmienną superglobalną, co jest źle w
  1. <?php
  2. private $_isLogged = false;
  3. ?>
Go to the top of the page
+Quote Post
Fifi209
post
Post #5





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

Ostrzeżenie: (0%)
-----


Cytat(Salve @ 20.07.2009, 11:11:54 ) *
Wiem, że $_SESSION jest zmienną superglobalną

Więc po jaką cholerę ją pchasz do tego konstruktora i w konsekwencji do tworzonego obiektu?

Cytat(Salve @ 20.07.2009, 11:11:54 ) *
co jest źle w
  1. <?php
  2. private $_isLogged = false;
  3. ?>

Jest bez sensu bo i tak podczas tworzenia obiektu przypisujesz inną wartość.


--------------------
Zainteresowania: C#, PHP, JS, SQL, AJAX, XML, C dla AVR
Chętnie pomogę, lecz zanim napiszesz: Wujek Google , Manual PHP
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 09:41