Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Авторизация в в течение заданного количества дней подряд

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
dreamfactor
Отправлено: 05 Декабря, 2014 - 11:09:12
Post Id


Новичок


Покинул форум
Сообщений всего: 28
Дата рег-ции: Июнь 2013  


Помог: 0 раз(а)




Не могу правильно продумать как все реализовать.
Нужно сохранять пользователя в базе, если он допустим производил авторизацию на сайте 3 дня подряд. С чего начать вообще ?
p.s пишу на Phalcon фреймворке
 
 Top
Viper
Отправлено: 05 Декабря, 2014 - 11:17:00
Post Id



Активный участник


Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007  
Откуда: Симферополь


Помог: 98 раз(а)




dreamfactor пишет:
Нужно сохранять пользователя в базе, если он допустим производил авторизацию на сайте 3 дня подряд.
подробнее с этого места.
Если авторизация через сторонние системы, то в чем проблема? Считаем кол-во авторизаций юзера за нужный период и при превышении лимита(минимума) выполняем какие-то действия.

Если через собственную систему авторизации, то не понятно что нужно вообще.


-----
Список фильмов с описанием, блекджеком и... для Joomla? -> https://киноархив[dot]com
Демо нового движка для сайта php.su -> php[dot]su, проект на гитхабе
 
 Top
dreamfactor
Отправлено: 05 Декабря, 2014 - 11:28:46
Post Id


Новичок


Покинул форум
Сообщений всего: 28
Дата рег-ции: Июнь 2013  


Помог: 0 раз(а)




Viper пишет:
dreamfactor пишет:
Нужно сохранять пользователя в базе, если он допустим производил авторизацию на сайте 3 дня подряд.
подробнее с этого места.
Если авторизация через сторонние системы, то в чем проблема? Считаем кол-во авторизаций юзера за нужный период и при превышении лимита(минимума) выполняем какие-то действия.

Если через собственную систему авторизации, то не понятно что нужно вообще.


Нет, авторизация через собственную систему, то есть пользователь заходит на сайт 3 дня подряд и после этого только сможет принят участие в турнире ( то есть сохранить его в бд).
 
 Top
IGORtrue
Отправлено: 05 Декабря, 2014 - 11:34:14
Post Id



Частый гость


Покинул форум
Сообщений всего: 177
Дата рег-ции: Апр. 2012  


Помог: 0 раз(а)




Может записывать дату, например
22.12.2014
23.12.2014
24.12.2014
Каждый раз при заходе проверять даты (условие, если текущая и последняя совпадают, то не записываем), если три последние отличаются на один день, то
flag = 1

(Отредактировано автором: 05 Декабря, 2014 - 11:38:41)

 
 Top
dreamfactor
Отправлено: 05 Декабря, 2014 - 11:40:45
Post Id


Новичок


Покинул форум
Сообщений всего: 28
Дата рег-ции: Июнь 2013  


Помог: 0 раз(а)




IGORtrue пишет:
Может записывать дату, например
22.12.2014
23.12.2014
24.12.2014
Каждый раз при заходе проверять даты (условие, если текущая и последняя совпадают, то не записываем), если три последние отличаются на один день, то
flag = 1


а даты в базу чтоли записывать ? не вариант мне кажется
 
 Top
Viper
Отправлено: 05 Декабря, 2014 - 15:09:48
Post Id



Активный участник


Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007  
Откуда: Симферополь


Помог: 98 раз(а)




dreamfactor у вас есть id юзера. При первом заходе сохраняете когда он первый раз вошел(дату) и ставите счетчик +1. Далее сверяете если текущая дата равна "начальная +2" и счетчик равен 3, выполняете нужные действия.


-----
Список фильмов с описанием, блекджеком и... для Joomla? -> https://киноархив[dot]com
Демо нового движка для сайта php.su -> php[dot]su, проект на гитхабе
 
 Top
Dastor
Отправлено: 05 Декабря, 2014 - 15:20:03
Post Id


Гость


Покинул форум
Сообщений всего: 66
Дата рег-ции: Окт. 2014  


Помог: 3 раз(а)




dreamfactor, а логи авторизации не пишутся в бд?
 
 Top
dreamfactor
Отправлено: 05 Декабря, 2014 - 16:45:46
Post Id


Новичок


Покинул форум
Сообщений всего: 28
Дата рег-ции: Июнь 2013  


Помог: 0 раз(а)




Viper пишет:
dreamfactor у вас есть id юзера. При первом заходе сохраняете когда он первый раз вошел(дату) и ставите счетчик +1. Далее сверяете если текущая дата равна "начальная +2" и счетчик равен 3, выполняете нужные действия.


ок, это я понял, а как сделать если допустим у меня указывается дата там с 05.12.14 по 08.12.14 , то как тогда ? нужно именно в этот период считывать

(Отредактировано автором: 05 Декабря, 2014 - 16:46:25)

 
 Top
Viper
Отправлено: 05 Декабря, 2014 - 16:56:09
Post Id



Активный участник


Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007  
Откуда: Симферополь


Помог: 98 раз(а)




dreamfactor изначально вы спрашивали про 3 дня. А это константа.
То что вы хотите сделать сейчас(за период) без логирования будет сложновато. Ну или на SQL делать выборку за период по юзеру.


-----
Список фильмов с описанием, блекджеком и... для Joomla? -> https://киноархив[dot]com
Демо нового движка для сайта php.su -> php[dot]su, проект на гитхабе
 
 Top
IGORtrue
Отправлено: 05 Декабря, 2014 - 19:18:46
Post Id



Частый гость


Покинул форум
Сообщений всего: 177
Дата рег-ции: Апр. 2012  


Помог: 0 раз(а)




Viper пишет:
dreamfactor у вас есть id юзера. При первом заходе сохраняете когда он первый раз вошел(дату) и ставите счетчик +1. Далее сверяете если текущая дата равна "начальная +2" и счетчик равен 3, выполняете нужные действия.

Интересное решение, спасибку тыкнул.
 
 Top
dreamfactor
Отправлено: 05 Декабря, 2014 - 19:32:52
Post Id


Новичок


Покинул форум
Сообщений всего: 28
Дата рег-ции: Июнь 2013  


Помог: 0 раз(а)




Viper пишет:
dreamfactor изначально вы спрашивали про 3 дня. А это константа.
То что вы хотите сделать сейчас(за период) без логирования будет сложновато. Ну или на SQL делать выборку за период по юзеру.


можно поподробней ? Улыбка
 
 Top
Viper
Отправлено: 05 Декабря, 2014 - 20:42:22
Post Id



Активный участник


Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007  
Откуда: Симферополь


Помог: 98 раз(а)




dreamfactor
как пример:
CODE (SQL):
скопировать код в буфер обмена
  1. SELECT blabla
  2. FROM bloblo
  3. WHERE (bleble BETWEEN start_date AND end_date) AND counter = 3


-----
Список фильмов с описанием, блекджеком и... для Joomla? -> https://киноархив[dot]com
Демо нового движка для сайта php.su -> php[dot]su, проект на гитхабе
 
 Top
dreamfactor
Отправлено: 05 Декабря, 2014 - 22:22:25
Post Id


Новичок


Покинул форум
Сообщений всего: 28
Дата рег-ции: Июнь 2013  


Помог: 0 раз(а)




Viper пишет:
dreamfactor
как пример:
CODE (SQL):
скопировать код в буфер обмена
  1. SELECT blabla
  2. FROM bloblo
  3. WHERE (bleble BETWEEN start_date AND end_date) AND counter = 3


у меня есть таблица с событиями

CODE (SQL):
скопировать код в буфер обмена
  1. CREATE TABLE lucky (
  2.   id int(11) NOT NULL AUTO_INCREMENT,
  3.   start_date date NOT NULL,
  4.   end_date date NOT NULL,
  5.   winning text NOT NULL,
  6.   PRIMARY KEY (id)
  7. )


то есть есть только дата начала и дата окончания, как можно сделать учет авторизаций за этот промежуток ?
дата последнего посещения уже записывается в таблицу users.

(Отредактировано автором: 05 Декабря, 2014 - 22:23:17)

 
 Top
Viper
Отправлено: 05 Декабря, 2014 - 22:43:05
Post Id



Активный участник


Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007  
Откуда: Симферополь


Помог: 98 раз(а)




dreamfactor пишет:
у меня есть таблица с событиями
мне это ни о чем не говорит.

А зачем вы усложнили себе жизнь с полем end_date? Можно было 1-но поле, а уже в запросе прибавлять нужное кол-во дней(месяцев/недель/лет...).


-----
Список фильмов с описанием, блекджеком и... для Joomla? -> https://киноархив[dot]com
Демо нового движка для сайта php.su -> php[dot]su, проект на гитхабе
 
 Top
dreamfactor
Отправлено: 05 Декабря, 2014 - 22:51:52
Post Id


Новичок


Покинул форум
Сообщений всего: 28
Дата рег-ции: Июнь 2013  


Помог: 0 раз(а)




Viper пишет:
dreamfactor пишет:
у меня есть таблица с событиями
мне это ни о чем не говорит.

А зачем вы усложнили себе жизнь с полем end_date? Можно было 1-но поле, а уже в запросе прибавлять нужное кол-во дней(месяцев/недель/лет...).


так в тз указано Ниндзя
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB