Как проверять сессию

Userpic

Новичок
Как проверять сессию

Доброго времени всем.
Пара глупых вопросов, но все же прояснить для себя.
как правильно проверять сессионную переменную в PHP 4.3:
if(isset($_SESSION['auth']))
или
if($_SESSION['auth']=='admin')
или
if(session_is_registered('auth'))
читая http://www.php.net/session_is_registered

Note: If $_SESSION (or $HTTP_SESSION_VARS for PHP 4.0.6 or less) is used, use isset() to check a variable is registered in $_SESSION.
и совсем не понятен Cauton
If you are using $_SESSION (or $HTTP_SESSION_VARS), do not use session_register(), session_is_registered() and session_unregister().
я немного не понял смысл. Если я использую $_SESSION но проверять только isset() ?
а если использую проверку session_is_registered то как работать с переменными?
Объясните пожалуйста, как грамотно использовать проверку.

еще вопрос про Session_start();
его нужно применять для чтения в скрипте переменных сессии,а при установке нужно вызывать?

Просто использовал не задумываясь, а тут хочется научиться грамотно использовать.

Спасибо.
 

kruglov

Новичок
>use isset() to check a variable is registered in $_SESSION
Вам с английского перевести? "Для проверки, что переменная вообще существует в $_SESSION, используйте isset"

>и совсем не понятен Cauton
Все эти session_register, session_is_registered устарели и о них надо забыть.

session_start() нужно вызывать перед любой работой с сессией.
 

Фанат

oncle terrible
Команда форума
вообще-то
if(isset($_SESSION['auth']))
и
if($_SESSION['auth']=='admin')
это РАЗНЫЕ проверки.
определись, что именно ты хочешь проверить. И к механизму сессий это отношения не имеет.
если вместо SESSION написать GET - ничего не изменится.
 
Сверху