Другие языки программирования и технологии
Хранение данных
Хочу сделать свою базу пользователей. Где хранить данные о том, что пользователь вошел? Что бы ему постоянно на каждой странице не входить по новой. Момент регистрации и входа пользователя легко осуществить, а чтобы он оставался в системе где то нужно хранить данные о его входе (куки, сессии) . Но куки можно хранить и с помощью js и с помощью php, соответственно на сервере или клиенте ( но вроде всегда хранят на клиенте..) , а сессии вообще скидываются после закрытия браузера. Дак вот, где хранить? И с помощью чего? (js,php)
Лучше в сессиях =) Сессии находятся на сервере и с помощью XSS их нельзя украсть =)После успешной авторизации создайте сессионную переменную какую нибудь например $_SESSION['entered'] = 1
Потом в остальных частях сайта где есть контент который доступен только авторизованным юзерам, сделайте проверку на существование сессии об успешной авторизации... Если сессия есть значит юзер авторизован и он видит скрытый контент.. в противном случии можете сделать редирект на страницу авторизации или что то еще =)Время жизни сессии по умолчанию 15 минут.. то есть если пользователь авторизовался и не обновлял страницу 15 минут то сессия уничтожается и пользователь снова должен войти.. Время можно увеличить или уменьшить с помощью htaccess ..На счёт автологина.. обычно делают чекбокс "запомнить меня" а потом в обработчике проводят проверку поставил галочку юзер или нет? Если поставил то ему отправляют куки где например хранят его айди.. потом когда юзер закрывает браузер и снова приходит на сайт то скрипт проверяет есть ли куки.. проверяется это с помощью глобального массива $_COOKIE..то есть что то подобное
if(isset($_COOKIE['id'])) //Если куки есть сделать что то
Если есть то из БД вытаскивают логин и пароль того пользователя айди которого хранится в куках.. а потом тупо создают сессию об успешной авторизации и делают редирект на страничку юзера или куда то еще... Как то так =)
Итог
1)При успешной авторизации создайте сессию об успешной авторизации.. еще не забудьте проверить поставлена ли галочка в чекбоксе.. если поставлена отправьте куки
2)На тех страницах где контент доступен после авторизации проверьте существование сессии об успешной авторизации.. если сессия существует то пустить юзера в противном случии показать форму авторизации. .
Я знаю что ниасилил многа букф, но так получилось)) гг
Потом в остальных частях сайта где есть контент который доступен только авторизованным юзерам, сделайте проверку на существование сессии об успешной авторизации... Если сессия есть значит юзер авторизован и он видит скрытый контент.. в противном случии можете сделать редирект на страницу авторизации или что то еще =)Время жизни сессии по умолчанию 15 минут.. то есть если пользователь авторизовался и не обновлял страницу 15 минут то сессия уничтожается и пользователь снова должен войти.. Время можно увеличить или уменьшить с помощью htaccess ..На счёт автологина.. обычно делают чекбокс "запомнить меня" а потом в обработчике проводят проверку поставил галочку юзер или нет? Если поставил то ему отправляют куки где например хранят его айди.. потом когда юзер закрывает браузер и снова приходит на сайт то скрипт проверяет есть ли куки.. проверяется это с помощью глобального массива $_COOKIE..то есть что то подобное
if(isset($_COOKIE['id'])) //Если куки есть сделать что то
Если есть то из БД вытаскивают логин и пароль того пользователя айди которого хранится в куках.. а потом тупо создают сессию об успешной авторизации и делают редирект на страничку юзера или куда то еще... Как то так =)
Итог
1)При успешной авторизации создайте сессию об успешной авторизации.. еще не забудьте проверить поставлена ли галочка в чекбоксе.. если поставлена отправьте куки
2)На тех страницах где контент доступен после авторизации проверьте существование сессии об успешной авторизации.. если сессия существует то пустить юзера в противном случии показать форму авторизации. .
Я знаю что ниасилил многа букф, но так получилось)) гг
обычно в сессиях хранят, да она сбрасывается через какое то время неактивности но так оно и правильно. А еще чтобы сохранялось навсегда обычно клиенту вешают куку соотвественно если он их не почистил и заходит на сайт то проверяют если такая кука у него стоит то автоматически входят
Геннадий Морозов
но куки на клиенте хранить можно только через javascript, и как мне тогда вытащить эти куки с помощью php?
данные о входе ххранить в $_SESSION. Если хочется сохранять "залогиненность" между сессиями открытия/закрытия браузера (что само по себе не хорошо с точки зрения обеспечения безопасности). , то ставить куки и проверять $_COOKIE.
Похожие вопросы
- Насколько безопасно хранение данных на флешке?? Я храню все резервные данные с моего ноута на флешке 32 гб!
- Паскаль Структура хранения и ведения следующих данных
- Хранение 10 млн строк данных (бд или нечто другое) [c#]
- ООП это когда данные управляют кодом а функциональное когда код данными?
- Обмен данными между datagrid viewи базой данных
- В 1 байте 8 бит....Байт - единица хранения и обработки цифровой информации.
- Скажите что лучше использовать для хранения-диск или флешку?
- Как вы считаете, сколько могут стоить данные дизайны сайтов, и какой дизайн вам нравится больше? :))
- помогите разобраться с выводом данных из массива PHP
- Помогите с проблемой,Есть ли или существует метод-способ востоновить данные,файлы с карты памяти телефона.