Форум программистов, компьютерный форум CyberForum.ru Форум программистов | Компьютерный форум | Форум web-программистов | Форум по электронике и бытовой технике | Форум о софте | Научный форум | Карьера и бизнес
CyberForum.ru - форум программистов и сисадминов > Форум Форум web-программистов > Форум PHP > Форум PHP для начинающих
Восстановить пароль Регистрация

Ответ Создать новую тему
 
30.11.2012, 21:07   #1
nepster
Форумчанин
Регистрация: 19.09.2009
Сообщений: 823
Репутация: 58 (58)
Лучшие ответы: 1
Группа пользователей в реальном времени / PHP для начинающих

Получается есть у пользователей группа. Она определяется в реальном времени.

Тоесть к примеру есть 2 группы. Активный и Не активный.

Активный, это тот кто за 16 дней сделал хоть 1 регистрацию.
Неактивный, кто за 16 дней не сделал ничего.

Группа определяется функцией. И возникла необходимость вывести всех активных и неактивных отдельно. Пользователей много, поэтому нужно пагинация.

Тут возникает проблема, брать например 100 пользователей, отсеивать всех активных к примеру и показывать 40 неактивных и так на каждой странице будет разное число пользователей.


Либо сделать в базе поле group и каждые 20 минут cron заданием проверять группу ?

Подскажите пожалуйста как поступить эффективнее всего ?

(есть момент. Если пользователь неактивный и в любой момент сделает регистрацию, тоесть пригласит кого-то, он сразу становится активным. Вот почему в реальном времени определяется группа.)
30.11.2012, 21:07
AdAgent
Объявления
30.11.2012, 23:47   #2
fa2m
Форумчанин
Регистрация: 27.08.2012
Сообщений: 853
Репутация: 350 (274)
Лучшие ответы: 3
Группа пользователей в реальном времени

Сделайте по cron раз в сутки проверку. Я не знаю как там у Вас построен алгоритм, поэтому больше добавить не могу, но дополнительное поле активный/неактивный нужно добавить.
Другие темы раздела
Как timestamp перевести в дату? PHP
Вечер добрый. Допустим я хочу узнать какое время было 999.999 секунд назад. Из "данномоментной" метки вычитаю 999.999 и получаю метку того времени, а как её перевести в дату со временем? ...мне понятное дело, нужна григорианская дата.
filesize() пишет stat failed for имя_файла PHP
$i = 0; $handle = opendir('files'); echo "<table border='1'><tr><th>№</th><th>Имя файла</th><th>Размер файла</th></tr>"; while ($file = readdir($handle)) { if ($file !='.' && $file!='..') { $func = $file; echo "<tr><th>$i</th><th>$func</th><th>".filesize($func) ."</th></tr>"; $i++;
03.12.2012, 02:33  [ТС]   #3
nepster
Форумчанин
Регистрация: 19.09.2009
Сообщений: 823
Репутация: 58 (58)
Лучшие ответы: 1
Группа пользователей в реальном времени

Смотрите есть 3 группы пользователей.

Активный, не активный, и хитрожопый (будем так его называть).

есть условие, в течении 15 дней пригласить 1 реферала.

активный:
- не истек таймер
- набрал больше 3 очков рейтинга

не активный
- истек таймер, при этом рейтинг меньше 3 очков (пригласил меньше 3) 3 - условие компании

хитрожопый
- пригласил 3 человек (выполнил условие по рейтингу), но эти никого не пригласили и у них истек таймер. (тоесть он вместо рефералов сам себе зарегал аккаунты)

В данный момент группы определяются в реальном времени, тоесть id пользователя проходит через функцию, функция проверяет даты, таймеры, проверяет гео приглашенных, приглашенных и так далее. Тоесть не много тормозят систему.


Я думаю создать поле group в базе и файлик, который бы работал примерно так:

- берем всех пользователей, прогоняем по циклу
- пропускаем каждого через функцию, получаем группу
- обновляем поле в базе с группой


и файлик запускается каждые 10 - 20 минут.


Так как отталкиваясь от групп пользователи видят определенные вещи на сайте.


Что думаете ?
03.12.2012, 02:54   #4
fa2m
Форумчанин
Регистрация: 27.08.2012
Сообщений: 853
Репутация: 350 (274)
Лучшие ответы: 3
Группа пользователей в реальном времени

У Вас откровенно коммерческий проект, а хотите бесплатную консультацию! Я думаю что в третью группу нужно вписать Вас (без обид)
03.12.2012, 02:54
AdAgent
Объявления
03.12.2012, 02:59   #5
DrobyshevAlex
Форумчанин
Регистрация: 31.05.2012
Сообщений: 2,956
Репутация: 1132 (1082)
Лучшие ответы: 14
Группа пользователей в реальном времени

А что мешает проверять дату прям в запросе?
Ну или добавить поле в таблицу юзеров, last_active типа timestams и писать туда дату последней активности.
то етсь пришел реферал, зарегистрировался, мы обновили юзеру дату на текущую.
03.12.2012, 20:50  [ТС]   #6
nepster
Форумчанин
Регистрация: 19.09.2009
Сообщений: 823
Репутация: 58 (58)
Лучшие ответы: 1
Группа пользователей в реальном времени

DrobyshevAlex

В данный момент так и есть

Добавлено через 13 минут
fa2m

я не прошу готовое решение. Я просто спрашиваю как лучше сделать. Если у вас в магазине девушка спросил, какая кофточка ей больше идет, тоже вмз запросите ?
03.12.2012, 21:19   #7
fa2m
Форумчанин
Регистрация: 27.08.2012
Сообщений: 853
Репутация: 350 (274)
Лучшие ответы: 3
Группа пользователей в реальном времени / PHP для начинающих

Цитата Сообщение от nepster Посмотреть сообщение

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

Не по теме:

Конечно, 5 WMZ! Примерить? 10 WMZ!

03.12.2012, 21:19
Yandex
Объявления
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать новую тему

Похожие темы
Тема Раздел Автор Дата
SQL Server: Группа пользователей
Подскажите, пожалуйста, можно ли создать в MS SQL Server 2008 группу пользователей, и если да, то как. Заранее спасибо.
Microsoft SQL Server Resaf 25.05.2014 12:07
Delphi: Поиск в реальном времени
Приветствую. Хочу написать следующую программку. Небольшая база данных. Записываться будет в текстовый файл. При запуске программы - выводятся сразу все строки. Под таблицей - поле для ввода. И тут самое главное. При любом изменении поля для ввода - остаются ТОЛЬКО те строки, в которых...
Delphi для начинающих strob 25.04.2014 20:29
ActionScript: AS 3.0 Игра в реальном времени
Как реализовать в ac3 перемешение в реальном времени, при это чтоб все сохранялась на сервере и другие игроки могли видить это перемешение?
ActionScript preparir 25.04.2012 09:26
Turbo Pascal: Задание:Смоделировать систему, указанную в варианте, в реальном времени (или, по желанию, и в реальном, и при помощи квантования времени) и провести
Turbo pascal Универсальный магазин Рассматриваются кассовые аппараты универсама. Каждый покупатель, имеющий непустую кошелку, отправляется к кассам и занимает очередь. Время обработки покупателя кассой зависит от объема кошелки и определяется функцией. Время отдыха кассирши между обработкой...
Turbo Pascal Zainap 18.04.2012 21:40
Turbo Pascal: Смоделировать систему, указанную в варианте, в реальном времени (или, по желанию, и в реальном, и при помощи квантования времени
Тещины блины - Теща печет блины, укладывая их в глубокие кастрюли. Зять с отменным аппетитом эти блины из кастрюли вытаскивает и съедает. Время поедания блина выражается функцией, зависящей от толщины блина. Время отдыха между съеданием блинов также определяется функцией. Глубина кастрюли может...
Turbo Pascal Zainap 18.04.2012 21:13
Опции темы

Текущее время: 16:59. Часовой пояс GMT +4.

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.7 PL3
Copyright ©2000 - 2014, vBulletin Solutions, Inc.