![]() |
|
Модераторы: Sardar, Aliance |
![]()
|
|
| JAYBE |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 220 Регистрация: 27.3.2008 Репутация: нет Всего: 0 |
Добрый день.
Необходимо реализовать такую "штуку": есть страниа, если эта страниу отркыл один сотрудник, то для друго она заблокирована. Если её закрыл первйы сотрудник, то она становистя свободна. И так далее циклически. Как это логически реализовать через кэш? |
|||
|
||||
| ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: 84 Всего: 386 |
Через сервер. Javascript без поддержки сервера не пойдет. -------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! |
|||
|
||||
| $дмитрий |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1037 Регистрация: 19.6.2004 Репутация: 2 Всего: 45 |
Ставь метку на сервере
|
|||
|
||||
| JAYBE |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 220 Регистрация: 27.3.2008 Репутация: нет Всего: 0 |
Что вы имеете ввиду? |
|||
|
||||
| $дмитрий |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1037 Регистрация: 19.6.2004 Репутация: 2 Всего: 45 |
При заходе на страницу прописываешь в файл/бд/куда угодно, что страница занята. При выходе затираешь метку |
|||
|
||||
| JAYBE |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 220 Регистрация: 27.3.2008 Репутация: нет Всего: 0 |
А как я определю что юзер ушёл со страницы?
Тоесть например: закрыл окно, ушёл по другой ссылке или вообще у него сгорел компьютер и пора освободить страницу для других юзеров |
|||
|
||||
| ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: 84 Всего: 386 |
По времени. Каждое действе зарегистрированного сотрудника оттягивает таймер. 10 минут простоя - считаются попыткой к бегству. Расстрел на месте без предупреждения -------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! |
|||
|
||||
| JAYBE |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 220 Регистрация: 27.3.2008 Репутация: нет Всего: 0 |
Впринципе так я и сделал. Но поулчается ситуация:
2 юзера хотят редить кое-что на одной странице. Первый отредил и закрыл... но предполагается ещё минут 5 страничка будет занята. Второй знает что первый уже закрыл и недопопнимает почему страница занята если она закрыта... |
|||
|
||||
| ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: 84 Всего: 386 |
У того, кто редактировал - кнопка - "страничка свободна". Ее разумно совместить с кнопкой "логаут" или "Выход". Сервер будет хранить имя текущего "редактора" и в случае, если он вышел, сразу освобождаем страницу. В случае, если у него сгорел комп на работе - выйти он не сможет и страничка освободится по времени. Неплохо бы прикрутить что-нибудь чат-подобное, чтобы сразу информировать ожидающего своей очереди редактора.
-------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! |
|||
|
||||
| iff |
|
||||
![]() Администратор ![]() ![]() Профиль Группа: Участник Сообщений: 949 Регистрация: 23.3.2007 Репутация: 3 Всего: 16 |
На странице сайта располагаем такой код:
и при этом на этой странице расположен скрипт, который читает файл mark.txt, и если записанное в нем время отличается от текущего менее чем на 5 секунд, то страница не выводится, а выводится сообщение, что страница занаята. timer.php должен выводить такой код:
и записывать в mark.txt текущее время. основная страница тоже, в принципе может записывать в mark.txt текущее время. <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="refresh" content="5; timer.php"> это можно выводить скриптом в http-заголовках И нужно проверить, если <meta http-equiv="pragma" content="no-cache"> не помогает против кэширования, то скриптом нужно выводить вместо "timer.php" - "timer.php?cash=qwdwdqw", где qwdwdqw - случайная строка Также нужно проверить, не будут ли пользователи взаимно блокироваться. И нужно придумать защиту: а то кто-нибудь зайдет на сайт, и оставит его на вкладке в браузере, т.е. что-бы ограничить "сессию" 30 минутами например и выдавать сообщения об ее окончании. -------------------- DOS... Синей пеленой экран заполнил чистый DOS Мышь... Стала вдруг квадратной, потеряла форму мышь... Я разбил окно, девяностопятое мастдайное окно, И поставил DOS, и тогда увидел: Это счастье, — вот оно. |
||||
|
|||||
![]()
|
| Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | JavaScript: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |