Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [CodeIgniter] Klasa do obsługi natywnej sesji
modic
post
Post #1





Grupa: Zarejestrowani
Postów: 64
Pomógł: 0
Dołączył: 18.07.2008

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


Ponieważ spotkałem sie z problemami w Ci z obsługą sesji w IE (po prostu czasem nie dziła), napisałem taką małą klase do obsługi natywnej sesji w CI, bez ciastek.

Aby jej użyć w katalowu system\application\libraries robimy plik my_session.php z kodem poniżej, a w pliku autoload.php umieszczamy:

$autoload['libraries'] = array('my_session');

używa się tego prawie tak samo jak sesji wbudowanej w CI, z tym że zamiast, np:
$this -> session -> userdata('admin')
należy wpisać
$this -> my_session -> userdata('admin')

i dalej:
$this -> my_session -> set_userdata(array( 'admin'=> 'administratorek'));
itd...


Pewnie ocenicie to jako dziadostwo i lamerstwo, ale mniejsz z tym, dość łatwo tego użyć, wieć się moze komuś mniej obeznanemu z php i CI przyda, dodam że niezbyt dokładnie ją testowałem (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Pozdrawiam



CODE


class my_session

{



/*

|*********************************

| Start session

|*********************************

*/

function start_session()

{

session_start();

}





function stop_session()

{

session_unset(); // Usuwamy zmienne

session_destroy(); // Usuwamy sesję

}





function set_userdata($newdata = array(), $newval = '')

{

if (is_string($newdata))

{

$newdata = array($newdata => $newval);

}



if (count($newdata) > 0)

{

foreach ($newdata as $key => $val)

{

session_register($key);

$_SESSION[$key] = $val;

}

}

}





function unset_userdata($zmienna)

{

session_unregister($zmienna);

}





function userdata($zmienna)

{

return $_SESSION[$zmienna];

}





function isset_userdata($zmienna)

{

if (isset($_SESSION[$zmienna]))

{

return true;

}

else

{

return false;

}

}





function empty_userdata($zmienna)

{

if (!empty($_SESSION[$zmienna]))

{

return true;

}

else

{

return false;

}

}





}





$sesion = $kid = new my_session();

$kid ->start_session();





?>



Ten post edytował modic 15.04.2009, 01:40:04
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 22.08.2025 - 17:01