Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Сесии или Куки вот в чём вопрос. Ошибка помогите разобраться

8.9K
23 апреля 2005 года
Ezik
7 / / 12.04.2005
Написал простую авторизацию на сайте:
acter.best-host.ru
Это база данных актёров на ней человек может изскать любого актёра по параметрам, а вот если входишь на сайт под админом, то можешь:
- Создавать актёров и контактных лиц к нему
- Изменять
- Удалять
И как бы это может делать только админ и это надо закрыть от других пользователей.
У меня конечно с безопасностью проблемы, я сделал так: человек вводить \пароль логин\ и если совпадает с данных в БД, то появляется под основным меню (Главная, вход, форум, гостевая) появляется менюшка, которая в общем то и даёт доступ к этим файлам а точнее ссылки к неми, но если подумать моя менюшка то всё равно без определённого значения переменной user_level не выпадет, но доступ к файлам то есть, обидно. Знаю
это не разумно набрал в url и зашёл, но пока умнее ничего не придумал, может посоветуете?
И пробовал два способа:
1.Сессии - так вот открываю сессию если он зашёл, точнее она уже открыта просто перменной присваю другой user level. И он заходит, переменную хранит всё хорошо, казалось бы, а вот когда хочу организовать ВЫХОД, так он мне мол сессия удаляется, а переменные и значению в них сессионные не удаляются, вот. Это раз прб
2.Куки - так я тоже если всё совпало и введено верно, то я просто записываю в куки так же переменню user и так ей и пользуюсь, для появлению выше указанного меню. Но он мне в ответ ошибку:
Warning: Cannot modify header information - headers already sent by (output started at w:\home\acter\www\top.inc.php:3) in w:\home\acter\www\login.php on line 60
Я про неё почитал, ну мол заголовок уже записан, так я до заголовка пытался всё это дело делать, всё равно пишет хоть убей, поможите чем сможите.
Извиняюсь, наверное много и не понятно объяснено, просто уже ночи две промучался, а хочется проектитк добить. СПасибо :)
2.2K
23 апреля 2005 года
Web-master
113 / / 23.12.2004
Цитата:
Originally posted by Ezik
Написал простую авторизацию на сайте:
acter.best-host.ru
Это база данных актёров на ней человек может изскать любого актёра по параметрам, а вот если входишь на сайт под админом, то можешь:
- Создавать актёров и контактных лиц к нему
- Изменять
- Удалять
И как бы это может делать только админ и это надо закрыть от других пользователей.
У меня конечно с безопасностью проблемы, я сделал так: человек вводить \пароль логин\ и если совпадает с данных в БД, то появляется под основным меню (Главная, вход, форум, гостевая) появляется менюшка, которая в общем то и даёт доступ к этим файлам а точнее ссылки к неми, но если подумать моя менюшка то всё равно без определённого значения переменной user_level не выпадет, но доступ к файлам то есть, обидно. Знаю
это не разумно набрал в url и зашёл, но пока умнее ничего не придумал, может посоветуете?
И пробовал два способа:
1.Сессии - так вот открываю сессию если он зашёл, точнее она уже открыта просто перменной присваю другой user level. И он заходит, переменную хранит всё хорошо, казалось бы, а вот когда хочу организовать ВЫХОД, так он мне мол сессия удаляется, а переменные и значению в них сессионные не удаляются, вот. Это раз прб
2.Куки - так я тоже если всё совпало и введено верно, то я просто записываю в куки так же переменню user и так ей и пользуюсь, для появлению выше указанного меню. Но он мне в ответ ошибку:
Warning: Cannot modify header information - headers already sent by (output started at w:\home\acter\www\top.inc.php:3) in w:\home\acter\www\login.php on line 60
Я про неё почитал, ну мол заголовок уже записан, так я до заголовка пытался всё это дело делать, всё равно пишет хоть убей, поможите чем сможите.
Извиняюсь, наверное много и не понятно объяснено, просто уже ночи две промучался, а хочется проектитк добить. СПасибо :)


Я тоже много мучался с сессиями и куками, в общем session_start() и session_register() нужно расположить как можно выше к началу файла, и главное чтобы до session_start() и session_register() ничего не выводилось !
Если что кидай код сюда.

1.8K
25 апреля 2005 года
MishaSt
170 / / 11.08.2003
Цитата:
Originally posted by Web-master
Я тоже много мучался с сессиями и куками, в общем session_start() и session_register() нужно расположить как можно выше к началу файла, и главное чтобы до session_start() и session_register() ничего не выводилось !
Если что кидай код сюда.


Прочитайте про ob_start():
Очень полезная штука!

287
28 апреля 2005 года
Shiizoo
958 / / 14.03.2004
А кто как считает, что юзабельнее, session_ набор или самодельный класс с хранением добра в бд?

к примеру не совсем понимаю, как сделать "Сейчас в онлайне..." и т.п. по php'шным сессионным файлам. Юзабельно-ли это. Вроде как формат у них простейший, но возиться впадлу:)) Есть какой готовый вариант поиска по "полям" в session_ сессиях??
287
28 апреля 2005 года
Shiizoo
958 / / 14.03.2004
О, вспомнил. Вроде так было. Хостилси где-то, там стоял апач и запускался под отличным от моего gid'ом. И следовательно, 0711,0644 и т.п. права доступа не подходили, потому как просто-напросто не мог работать с сессиями в этой папочке (стояло isapi php). А поставь другие, так еще какая обезьяна это все затрет. Вроде нестрашно, но показывать содержимое своих папок кому бы то ни было совсем нехотелось. Вот. Теперь я вспомнил почему я отвернулся от session_ набора php ^^

В принципе, если б php было и cgi, но под тем же gid'ом проблема была б такой же.

Поправьте если неправ, соннИиЙ:D
1.8K
28 апреля 2005 года
MishaSt
170 / / 11.08.2003
Цитата:
Originally posted by Shiizoo
А кто как считает, что юзабельнее, session_ набор или самодельный класс с хранением добра в бд?



Сессию хранят в БД по причине, что возможно поставить веб-приложение на Веб-ферму.

Цитата:

к примеру не совсем понимаю, как сделать "Сейчас в онлайне..."


Клиент обращается к серверу, только когда ему что-то нужно. Поэтому определить в онлайне он или нет можно только пропинговав его. IP-то
его мы знаем. Но на самом деле это не очень - пинговать каждого известного пользователя сайта. Да и вообще не всегда хорошо пинговать клиента. Поэтому просто вывести пользователей, которые за прошедшие 10мин обращались к серверу. Каждый раз при обращении к серверу мы записываем в базу, что последнее время визита такое-то,

287
28 апреля 2005 года
Shiizoo
958 / / 14.03.2004
Хы=) то есть не вчера родился;) хотя все-равно непонимаю, почему веб-ферма не может работать с теми же файлами?:) все реализуемо, интересн пример. естесна в "свободных" движках более серьезные решения не встретишь, вот и задался вопросом посреди чужого треда;)

про онлайн то же самое, тому меня учить не нужно=)) пинговать клиента непреемлимо, если речь идет об общении с ним в рамках http и не более того, и без всяких примороч, наподобие jshttprequest, выталкивания страниц и прочего. опять же вопрос был подвязан с первым - список онлайн по session_access_time при условии что сесси работают непосредственно на базе сессионых файлов/ php session_.

думаю просто попробую реализовать и сравню результат с аналогом при юзании бд. вообще после рассказов mike'а так хочется вырваться из рамок бд :D кто-нить какую лит-ру может посоветовать по устройству и организации бинарных деревье, построению индексов и т.п.;) жуть как интересно.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог