Форум программистов, компьютерный форум, киберфорум
Наши страницы
PHP для начинающих
Войти
Регистрация
Восстановить пароль
 
pixel
18 / 11 / 4
Регистрация: 19.05.2009
Сообщений: 1,663
#1

Покажите пример кода PHP с использованием сессий. - PHP

05.02.2014, 15:49. Просмотров 964. Ответов 12
Метки нет (Все метки)

Приветствую.
Подскажите, плиз, простой пример сессии для использования на страницах сайта для ввода и отображения данных в/из БД. Т.е. Планирую секцию авторизации, и если все ок, должна запускаться сессия, но что в нее вносить и как? как потом проверять? и сколько сессия будет длиться?
http://www.cyberforum.ru/php-beginners/thread484674.html
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.02.2014, 15:49
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Покажите пример кода PHP с использованием сессий. (PHP):

Перевести пример кода на PHP
Здравствуйте! Только стал изучать данный язык, никак не могу понять работу с...

Пример кода для обучения PHP
Могу немного наглеть,но просто просьба,кому не жалко написанный код(не...

Подскажите пример кода для реализации следущего (php)
Нужно чтобы при выборе позиции из выпадающего списка, из БД брался текст...

Отсчет времени с использованием сессий
Подсобите пожалуйста! Мне нужно с помощью сессий написать секундомер отсчета...

Простые задания с использованием сессий
Задание 1. Спросите имя пользователя с помощью формы и сохраните его в сессии....

12
CloudS
8 / 8 / 6
Регистрация: 29.01.2014
Сообщений: 61
05.02.2014, 23:15 #2
PHP
1
2
3
4
session_start();// на каждой странице, где будет задействована сессия
//после чего доступен глобальный ассоциативный массив  $_SESSION. В него можно сохранять данные из кук (для авторизации)
$_SESSION['login'] // можно создавать там свои ячейки и заполнять их, а потом использовать
$_SESSION['login'] = $_COOKIE['login'];
Добавлено через 9 минут
Вот пример авторизации:
PHP
1
2
3
4
5
6
7
8
9
//когда пользователь залогинился ставим ему куки
setcookie("login", $_POST["login"], time()+9999999);
setcookie("password", $_POST["password"], time()+9999999);
setcookie("id", $myrow['id'], time()+9999999);
// а когда он снова пытается войти записываем это в сессию
$_SESSION['password']=$_COOKIE['password']; 
$_SESSION['login']=$_COOKIE['login'];
$_SESSION['id']=$_COOKIE['id'];
// и пользуемся этим для входа
Добавлено через 1 минуту
А длительность сессии прописывается в настройках сервера!
1
pixel
18 / 11 / 4
Регистрация: 19.05.2009
Сообщений: 1,663
05.02.2014, 23:41  [ТС] #3
а насколько это безопасно?
0
CloudS
8 / 8 / 6
Регистрация: 29.01.2014
Сообщений: 61
06.02.2014, 11:19 #4
Достаточно безопасно, если вы про сессию. А вот куки не совсем безопасны)
0
pixel
18 / 11 / 4
Регистрация: 19.05.2009
Сообщений: 1,663
08.02.2014, 08:50  [ТС] #5
а как поведет себя сайт, если у пользователя запрещены куки?

Добавлено через 18 часов 59 минут
думаю делать без куков - только сессией. но как на страницах проверять авторизацию? только лишь наличие переменной в массиве сессии или каждый раз сверять с БД?
0
ads
364 / 371 / 89
Регистрация: 01.12.2013
Сообщений: 1,629
08.02.2014, 09:36 #6
Цитата Сообщение от pixel Посмотреть сообщение
как поведет себя сайт, если у пользователя запрещены куки?
нормально поведет, id сессий будет в ссылке

Не по теме:

а в каком музее можно найти пользователя с запрещенными куками?

0
pixel
18 / 11 / 4
Регистрация: 19.05.2009
Сообщений: 1,663
08.02.2014, 21:49  [ТС] #7
Цитата Сообщение от ads Посмотреть сообщение

Не по теме:

а в каком музее можно найти пользователя с запрещенными куками?

ну параноики еще встречаются
0
pixel
18 / 11 / 4
Регистрация: 19.05.2009
Сообщений: 1,663
12.02.2014, 21:23  [ТС] #8
повторю вопрос: "как на страницах проверять пройденную авторизацию? только лишь наличие переменной в массиве сессии или каждый раз сверять с БД? "
0
ads
364 / 371 / 89
Регистрация: 01.12.2013
Сообщений: 1,629
12.02.2014, 21:31 #9
Цитата Сообщение от pixel Посмотреть сообщение
только лишь наличие переменной в массиве сессии или каждый раз сверять с БД? "
если вы в реальном времени захотите кого-нибудь забанить или вообще исключить из системы, тогда проверки флага в сессии недостаточно - придется сверятся с базой. При проверке по переменной удаленный чел будет продолжать обладать разрешениями..
0
pixel
18 / 11 / 4
Регистрация: 19.05.2009
Сообщений: 1,663
12.02.2014, 21:39  [ТС] #10
у меня не настолько грандиозный проект. просто не хочу, что бы не реганый юзер имел доступ к данным. Соответственно, что бы посторонний чел не попал к этим данным и хочу использовать авторизацию, но пока что не понимаю всей картины. чел проходит авторизацию, происходит сверка данных с БД и ... что дальше? вешать в переменные сессии логин и пароль в открытом виде и на каждой странице сверять с БД?
0
ads
364 / 371 / 89
Регистрация: 01.12.2013
Сообщений: 1,629
12.02.2014, 21:51 #11
Цитата Сообщение от pixel Посмотреть сообщение
вешать в переменные сессии логин и пароль
сохранять логин и хэш например md5 пароля.. а не пароль. если неохота сверять каждый раз с базой - сохранять при авторизации что-то типа :
PHP
1
$_SESSION['authorized']=true;
в защищенных страницах писать такой говнокод
PHP
1
2
3
 if(empty($_SESSION['authorized'])){
  die('by');
}
0
pixel
18 / 11 / 4
Регистрация: 19.05.2009
Сообщений: 1,663
12.02.2014, 22:51  [ТС] #12
ну а подменить эту переменную посторонний чел не сможет? и опять же, я так понял что старт сессии будет с файла, в котором происходит запрос в БД. соответственно, если авторизация прошла - вешаем переменную и переходим к файлу с данными, а если авторизация не удачная? сессия то уже запущена будет - это не критично?
0
ads
364 / 371 / 89
Регистрация: 01.12.2013
Сообщений: 1,629
12.02.2014, 23:17 #13
Цитата Сообщение от pixel Посмотреть сообщение
сессия то уже запущена будет - это не критично?
ну и пусть себе стартует, на скорость не влияет.
Цитата Сообщение от pixel Посмотреть сообщение
ну а подменить эту переменную посторонний чел не сможет?
как ее подменишь,она на сервере хранится. теоретически подменить можно id сессии, но живет он недолго, так что шансов исчезающе мало..
1
12.02.2014, 23:17
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.02.2014, 23:17
Привет! Вот еще темы с решениями:

Срок сессий в PHP
Интересно, что происходит с сессиями после того, как пользователь не заходил...

Использование сессий в php
Всем привет. Я написал код регистрации, авторизации на php с использованием...

Работа сессий в php
Доброго времени суток! Учусь использовать сессии. Сначала открываю её: ...

Готовые примеры PHP сессий
Кто-нить занимался на PHP сессиями, очень буду благодарен за примеры )


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru