Необходимо иметь представление, для чего вы можете использовать сессии, а где их использовать не стоит.Для начала усвойте, что сессии можно применять только в тех случаях, когда они необходимы самому пользователю, а не для того, чтобы осложнять ему действия. Ведь пользователь всегда сможет избавится от идентификатора.
Допустим, чтобы произвести проверку на то, что форма заполняется именно человеком, а не скриптом, у самого пользователя появляется заинтересованность в том, чтобы сессия корректно работала, т.к. в противном случае он не сможет отправить форму.
Но вот чтобы ограничить к-во запросов к скрипту использовать сессию уже не стоит, т.к. скрипт со злым намерением просто напросто не будет отсылать идентификатор.
Еще одно очень важно помнить, что сессия – это сеанс при работе с сайтом. Зашли, поработали, закрыли браузер и все… на этом сессия заканчивается. Это подобие сеанса в кино. Хотите посмотреть еще раз или другое кино – купите новый билет. Так и здесь, нужно запускать новый сеанс.
Для этого есть и техническое объяснение. Гарантия работы сессии существует только до момента закрытия браузера пользователем. Ведь у пользователей может быть отключены cookies, в следствие чего, все ссылки, дополненные идентификатором исчезнут пои закрытии браузера.
Но сессия будет пропадать и не только после закрытия браузера. Механизм сессий сам не в состоянии определить момент, когда был закрыт браузер. Для этого был введен таймаут – заранее установленное время, через которое в результате неактивности считается что пользователь покинул сайт. По умолчанию это значение равно 24 мин.