Сессии...подскажите.

Mouse

Новичок
Сессии...подскажите.

Доброго времени суток всем.
У меня вопрос подскажите правильно я делаю или нет.
Есть четыре файла.
В первом я ввожу в форму логин и пароль, он передаёт это всё во второй файл.
Второй файл создаёд сессию и записывает её ид в БД, и открывает два фрейма.
Файл первого фрейма получает переменную $PHPSESSID и проверяет сходится ли ид с тем что в бд записан.
А для чего я всё это намутил для того чтобы нельзя было открыть фрейм просто так а только после входа со странички входа...
Практически уверен что это сильно накручено и есть способ лучьше, или это вообще не будет работать так как надо, ну ввобщем как умею так и пишу.
Зарание спасибо... :)
 

ThomLee

Новичок
меня фрейм не смущает, наверное что-то в духе phpMyAdmin
мне не понятно, зачем нужно записывать в БД?
SID ведь передается по ссылке в фрейм, или я что-то не догоняю, зачем его сравнивать? Если вопрос в том, чтобы проверить наличие фрейма, объяви переменную массивом
$frames=array(
'first_frame'=>false,
'second_frame'=>false,
);
Когда фрейм грузится он меняет false на true
потом проверяется если все true, тогда показывать страницу, если нет, пинать на главную.

-~{}~ 09.07.06 00:28:

имеется ввиду переменную сессии
 

SelenIT

IT-лунатик :)
В начале каждого скрипта проверять, авторизован ли юзер. Если все ок - грузить скрипт, если нет - редиректить на форму авторизации, и после ее успешного прохождения грузить фреймсет.
 

Mouse

Новичок
А как проверить авторизирован он или нет?
А на счёт записи в бд я думал так:
Когда пользователь заходит в его учётной записи в поле sesid записовается номер сессии. А когда он переходит на какую либо страницу страничка сверяет плученый ид сессии и тот что был записан в бд на данный логин. типо так я думал. Это неверно? (((
 

SelenIT

IT-лунатик :)
Проще всего - проверить наличие соотв. флага в сессии.
 

Фанат

oncle terrible
Команда форума
Mouse
в сессию пишется переменная.
ВОТ ЕЁ И ПРОВЕРИТЬ

после проверки логина и пароля пишешь
session_start();
$_SESSION['auth']=1;

в том скрипте, в котором надо проверять авторизацию, пишешь
session_start();
if (empty($_SESSION['auth'])) exit;

ЧТО НЕПОНЯТНО?
 

Mouse

Новичок
Теперь всё понял спасибо. Хотя есть один глупый вопрос:
Не сочтите тупым но можите обяснить что делает empty?
Читал мануал но там енгл а переводчик выдаёт всё по отстою.
 

Фанат

oncle terrible
Команда форума
какой молодец. всё понял.
скажи, а то же самое по ссылке, что я дал, ты прочесть не мог?
 

leeroy

Новичок
if (empty($_SESSION['auth'])) - если переменная $_SESSION['auth'] "пуста" то ....
 
Сверху