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

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

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

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

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

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

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


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

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

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

Сделайте по 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
Форумчанин
58 / 58 / 1
Регистрация: 19.09.2009
Сообщений: 825
Группа пользователей в реальном времени

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

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

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

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

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

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

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


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

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


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


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


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

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

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

DrobyshevAlex

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

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

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

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

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

Не по теме:

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

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

Похожие темы
Тема Раздел Автор Дата
PHP Переменная в реальном времени
Нужно, когда пользователь набрал данные в форму нажал на кнопку и переменная вывелась в div Например, у нас уравнение ax2 + bx + c = 0 3 формы: A: В: С: Нужно, после того как он ввёл данные, нажал на кнопку, данные вписанные в форму получила переменная. После вывела в div. <input...
PHP для начинающих matriza008 11.12.2013 17:24
PHP php, ведение лога и просмотр в реальном времени
есть скрипт, он постоянно работает, у него нет интерфейса, делает работу и ведет лог (log.txt) и теперь мне нужен еще один скрипт, чтобы смотреть лог. то есть необходимо мониторить файл log.txt и выводить данные на экран в реальном времени, без Javascript, такое возможно?
PHP для начинающих Leksar 17.10.2013 00:30
Turbo Pascal Задание:Смоделировать систему, указанную в варианте, в реальном времени (или, по желанию, и в реальном, и при помощи квантования времени) и провести
Turbo pascal Универсальный магазин Рассматриваются кассовые аппараты универсама. Каждый покупатель, имеющий непустую кошелку, отправляется к кассам и занимает очередь. Время обработки покупателя кассой зависит от объема кошелки и определяется функцией. Время отдыха кассирши между обработкой...
Turbo Pascal Zainap 18.04.2012 21:40
Turbo Pascal Смоделировать систему, указанную в варианте, в реальном времени (или, по желанию, и в реальном, и при помощи квантования времени
Тещины блины - Теща печет блины, укладывая их в глубокие кастрюли. Зять с отменным аппетитом эти блины из кастрюли вытаскивает и съедает. Время поедания блина выражается функцией, зависящей от толщины блина. Время отдыха между съеданием блинов также определяется функцией. Глубина кастрюли может...
Turbo Pascal Zainap 18.04.2012 21:13
PHP Как сделать чат в реальном времени?
Основной вопрос: как сделать чат в реальном времени? Причем я подразумеваю не тот чат, который обновляется раз в 3 секунды, а тот, что моментально возвращает поступившее на сервер сообщение и при этом не использует апплеты и прочие навороты. Такое можно достигнуть путем поточного HTML, т.е. когда...
PHP для начинающих Dark Angel 22.08.2008 23:28
Опции темы

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

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