Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Доступ к CMS
 
 автор: multiBrain   (04.10.2005 в 08:39)   письмо автору
 
 

Втала задача не пускать к работе с CMS более одного пользователя одновременно. Пологаю это можно реализовать с помощью сессий. Т.е. при попытке входа скрипт будет узновать есть ли уже установленныая кем-то сессия, и если да, то не пускать юзера. Подскажите как на пхп посмотреть установленна ли любая сессия. И если кто знает еще способы ограничения входа, тоже подскажите. (Я так понимаю, что функциональность "Кто в OnLine" основана на тех же принципах).

   
 
 автор: Loki   (04.10.2005 в 11:04)   письмо автору
 
   для: multiBrain   (04.10.2005 в 08:39)
 

А у имеющих доступ к CMS один логин для всех?
А то это может быть черевато: закрыл броузер - и 20-30 минут вас в админку не пускает - еще живет старая сессия.
В любом случае, как я понимаю, надо использовать БД и там хранить либо идентификатор сессии, либо флаг о залогиненности юзера.

   
 
 автор: cheops   (04.10.2005 в 13:30)   письмо автору
 
   для: multiBrain   (04.10.2005 в 08:39)
 

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

   
 
 автор: multiBrain   (11.10.2005 в 13:46)   письмо автору
 
   для: cheops   (04.10.2005 в 13:30)
 

А если просматривать /tmp на придмет наличия временного файла сессии?
И как получить SID?

   
 
 автор: cheops   (11.10.2005 в 14:34)   письмо автору
 
   для: multiBrain   (11.10.2005 в 13:46)
 

1) Не всегда будет доступна директория /tmp и от сервера к серверу сесссии в разных директориях храняться - кто как настроит...
2) SID можно получить обратившись к функции session_id()
<?php
  
echo session_id();
?>

   
 
 автор: multiBrain   (11.10.2005 в 15:24)   письмо автору
 
   для: cheops   (11.10.2005 в 14:34)
 

А если все таки хостер гарантирует что временные файлы храняться в определенном месте?
Почему может быть не доступна?
И глупый вопрос: а где на localhost находится /tmp, чего-то не могу найти.

   
 
 автор: cheops   (11.10.2005 в 15:28)   письмо автору
 
   для: multiBrain   (11.10.2005 в 15:24)
 

1) Ну если не собираетесь от хостера перезжать - можно и на директорию tmp ориентироваться...
2) /tmp - нет, вместо него нужно прописать что-то вроде C:/tmp - подробности в теме по ссылке.

http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=415

   
 
 автор: multiBrain   (12.10.2005 в 08:23)   письмо автору
 
   для: cheops   (11.10.2005 в 15:28)
 

Не большое недопонимание? Если записывать сид или флаг скажем в файл, то как его удалять если юзер вместо выхода просто закроет браузер?

   
 
 автор: Loki   (12.10.2005 в 12:01)   письмо автору
 
   для: multiBrain   (12.10.2005 в 08:23)
 

Можно по крону, а можно при каждом вызове скрипта удалять записи старше получаса.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования