Идентефикация пользоветеля

Vano_php

Новичок
Идентефикация пользоветеля

Добрый день.
Прошу помощи в реализации задуманной вещи. Есть идентификация, сделанная при помощи сессий, водятся логин и пароль. В запароленной части сайта, структура страницы отличается от всеобщедоступных (а точнее при входе в аккаунт, меняется верхняя часть страницы – выводится меню пользователя). Как сделать так, что бы эта верхняя часть страницы (доступная только для активированных пользователей) выводилась для него на всех страницах сайта?
Начальная мысль такая, что нужно зарегистрировать две глобальных переменных при вводе логина и пароля, и затем делать по ним проверку на всеобщедоступных страницах.
Попутешествовав по форуму пришел к выводу, что нужно использовать Куки. Нужна замена верхней части только на один заход пользователя, т.е. после ухода сайта при следующем его посещении пользователь не видел запароленной части.
Мои рассуждени текут в нужном русле?

З.Ы: просьба не отправлять на англоязычные ресурсы :(
 

Sky_Flex

Новичок
Re: Идентефикация пользоветеля

Автор оригинала: Vano_php
Есть идентификация, сделанная при помощи сессий, водятся логин и пароль.
ну и какие тогда вопросы?

как проверешь зашел пользователь или нет? наверно по переменной которую выставляеш при авторизации:
PHP:
if (isset($_SESSION['login'])) { ... }
точно также и при формированиии Html смори - если пользователеь - один код, если нет - другой...
 

Vano_php

Новичок
Просто мне нужно было одобренее свыше ;)
Так как катострафически мало времени. Сегодня буду пробовать осуществлять выше сказанное и если что, спрашивать совета
 

Фанат

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

Vano_php

Новичок
Автор оригинала: Фанат
она уже есть, или только планируется?
Идентефикация уже есть.
если есть, то при чем тут вообще какие-то глобальные переменные и куки?
Спомощью куков хочу решить свою проблему. Если есть другие мысли по этому поводу, буду только благодарен, для того я и здесь, что бы разобраться!

-~{}~ 18.03.07 11:04:

Автор оригинала: Sky_Flex
ну и какие тогда вопросы?

как проверешь зашел пользователь или нет? наверно по переменной которую выставляеш при авторизации:
PHP:
if (isset($_SESSION['login'])) { ... }
точно также и при формированиии Html смори - если пользователеь - один код, если нет - другой...
У меня сесси включены только на запароленных страницах, во всеобщедоступных их нет и они восприниматься не будут.
 

Фанат

oncle terrible
Команда форума
вот и разберись с сессиями, которые у тебя уже есть.

Ты сам делал эту идентификацию? Ты хоть одну строчку-то понял в своей идентификации - как она работает, и зачем?

-~{}~ 18.03.07 11:08:

всеобщедоступных их нет и они восприниматься не будут
ты хорошо подумал перед тем, как это писать?
 

Vano_php

Новичок
Ну как бы да!
Но ведь сесси не будут работать там где нет session_start, а у меня этого и нет на всеобщедоступных страницах

-~{}~ 18.03.07 11:10:

Автор оригинала: Vano_php
Ну как бы да!
Но ведь сесси не будут работать там где нет session_start, а у меня этого и нет на всеобщедоступных страницах
ты хорошо подумал перед тем, как это писать?
Наверно нет, раз ты так говоришь... сейчас попробую

-~{}~ 18.03.07 11:16:

ОК,
если прописать session_start на всех всеобщедоступных страницах, то тогда они воспринимаются!
Спасибо

Есть еще вопрос по поводу md5, я вот не помню, помоему нет функции что бы расшифровать строчку зашифрованную в md5 или я ошибаюсь?
 

Фанат

oncle terrible
Команда форума
нет, не ошибаешься.

Наверно нет, раз ты так говоришь... сейчас попробую
надо не пробовать.
Надо думать ГОЛОВОЙ. используя ЛОГИКУ.

у нас есть два положения.
1. авторизованным пользователям надо выводить особый контент.
2. факт авторизованности можно определить только стартовав сессию.
НЕУЖЕЛИ так сложно сделать ВЫВОД?

если прописать session_start на всех всеобщедоступных страницах, то тогда они воспринимаются
а теперь иди, читай на phpfaq.ru про сессии, как сделать правильно
 

Vano_php

Новичок
Автор оригинала: Фанат
нет, не ошибаешься.

надо не пробовать.
Надо думать ГОЛОВОЙ. используя ЛОГИКУ.

у нас есть два положения.
1. авторизованным пользователям надо выводить особый контент.
2. факт авторизованности можно определить только стартовав сессию.
НЕУЖЕЛИ так сложно сделать ВЫВОД?


а теперь иди, читай на phpfaq.ru про сессии, как сделать правильно
А правильно сделать вот так:
if (isset($_REQUEST[session_name()]))
session_start();
Спасибо!

У меня в базе хранятся логины и пароли пользователей в зашифрованном види md5. Такая ситуация: Пользователь забыл свои логи и пароль и мне по его требованию нужно отправить его логин и пароль взятый из базы. Как выйти из этой ситуации если нет функции для расшифровки.
Помниться мне были какие то классы для расшифровки md5, но они объемны и тяжелы для понимания.
 

Фанат

oncle terrible
Команда форума
гордись.
ты первый, кому пришло в голову хранить хэш от логина пользователя. так что тебе первому и придумывать, как быть в такой ситуации.

хэширование md5 к шифрованию не имеет никакого отношения.

никакаих классов, разумеется, не существует. теебе неправильно неграмотно "помнитЬЬЬЬся".
 

Sky_Flex

Новичок
Vano_php

md5 - необратимое шифрование, это раз.
как востановить логин/пасс юзеру? в поиск!, это два.
и три... почитай все таки фак, ФАНАТ не просто так написал же.
Ты просто не понимаешь смысл сессий, потому и проблемы твои.

P.S.:сесию стартуй без всяких условий.
при атворизации выставляй "некую" сесионную переменную, а по ней уже смотри что кому выводить.
 

Vano_php

Новичок
Засада!
Т.е. пароли в БД можно без страха для риска хранить в чистом виде? Ну тогда придется переписывать всееее запросы.... обидно...
 

Sky_Flex

Новичок
Автор оригинала: Vano_php
Засада!
Т.е. пароли в БД можно без страха для риска хранить в чистом виде? Ну тогда придется переписывать всееее запросы.... обидно...
кто это сказал?!?

я тебе написал же - "в поиск"!

пароли храни как и раньше зашифрованными - а если забыл - то по логину или мылу - высылай на е-майл новые, рандомно сгенеренные.
 

Vano_php

Новичок
Автор оригинала: Sky_Flex
кто это сказал?!?

я тебе написал же - "в поиск"!

пароли храни как и раньше зашифрованными - а если забыл - то по логину или мылу - высылай на е-майл новые, рандомно сгенеренные.
Дико извеняюсь не увидел твое сообщение! Уже ищу...

-~{}~ 18.03.07 13:49:

Спасибо большое за помощь, все затронутые вопросы решил, все исправил!

Пока есть возможность задать вопрос, спрошу. Я работаю на локальном сервере денвер (в домашних условиях). Одна вещь, с каторой я уже сжился, но которая не дает мне покоя - это куки. Проверяя работоспособность написанного каждый раз приходиться чистить куки которые сохраняет эксплорер (повторюсь, работаю на локальной машине)! Обнавление страницы не помогают, пробывал на другом ПК, на том же самом денвере, тоже самое куки не позволяют нормально работать (в интернете не тестировалось). Из-за чего это? может быть это из-за сессий?
 

Фанат

oncle terrible
Команда форума
Мы знаем всё на свете.
Мы можем ответить на любой вопрос.
Но только скажи пожалуйста, что - "ЭТО"???
 

Sky_Flex

Новичок
Автор оригинала: Vano_php
но которая не дает мне покоя - это куки. Проверяя работоспособность написанного каждый раз приходиться чистить куки которые сохраняет эксплорер (повторюсь, работаю на локальной машине)! Обнавление страницы не помогают, пробывал на другом ПК, на том же самом денвере, тоже самое куки не позволяют нормально работать (в интернете не тестировалось). Из-за чего это? может быть это из-за сессий?
ты точно док про Сессии прочитал?

сесия сохраняется за счет идентификатора в ГЕТЕ или куках.
сессия на то и сесия чтобы сохранять пользователя авторизированным на сайте (в данном случае).

просто напиши еще кнопочку "выход" юзера - удаление сесионных переменных по которым ты его авторизируешь.

P.S.: такое ощущение что ты просто не понимаешь чего хотел добиться - и что у тебя получилось...
иди еще разок перечитай фак.
 

Dreammaker

***=Ф=***
Автор оригинала: Sky_Flex
Vano_php

P.S.:сесию стартуй без всяких условий.
при атворизации выставляй "некую" сесионную переменную, а по ней уже смотри что кому выводить.
А если подумать? В phpfaq.ru дан правильный вариант - запускать сессию, когда в суперглобале $_REQUEST есть идентификатор сессии.

Если же стартовать без условий, то индекс поисковой машиной будет забит кучей копий одних и тех же страниц сайта, адрес которых будет отличаться только идентификатором сессии. Это в лучшем случае замедлит индексацию, а в худшем - может привести к санкциям к сайту..

[skip] ... вместо редактирования цитату нажал.. )
 

Фанат

oncle terrible
Команда форума
топик за 20 дефолтных сообщений на странице перевалил штоле?
 
Сверху