4 / 4 / 1
Регистрация: 28.03.2015
Сообщений: 155

Создать таймер обратного отсчета без привязки к клиенту

26.10.2015, 21:46. Показов 4965. Ответов 35
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здраствуйте

задача создать/найти таймер

который не будет привязан к браузеру пользевателя время уменьшалось даже когда сайт не открыт ни у кого

идея: рандомный победитель на побобе как в ВК
-пользеватель нажимает на кнопку участвовать, добавляется в список, когда учасников 2+ начинается отсчет(от 120 сек), рандомно выбирается победитель, и опять заново сколько участвует

спс за помощ
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
26.10.2015, 21:46
Ответы с готовыми решениями:

Таймер обратного отсчета
У меня проблема, хочу создать таймер обратного отсчета, лично у меня все получилось, создаю таймер не по заданному таймингу, а через базу...

Таймер обратного отсчета
Стоит такая задача есть несколько ссылок у которых необходимо задать разное время их показа к примеру у одно ссылке один раз через каждые...

Таймер обратного отсчета на PHP
Здравствуйте, почитал различные темы на форуме, но ответа для своего случая так и не нашел. Отсюда вопросик: Есть дата наступления...

35
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
30.10.2015, 08:37
Студворк — интернет-сервис помощи студентам
Poznakomlus, так скрипт же должен быть без привязки к какому-то пользователю, причем тут id юзера?
0
4 / 4 / 1
Регистрация: 28.03.2015
Сообщений: 155
30.10.2015, 14:25  [ТС]
Цитата Сообщение от Poznakomlus Посмотреть сообщение
UNIX_TIMESTAMP вместо NOW()
делаем
поле TIMESTAMP
так поехало:
PHP
1
2
$query44 = "INSERT INTO `timer` SET `time` = UNIX_TIMESTAMP() + INTERVAL 2 MINUTE";
$result44 = mysql_query($query44);
Цитата Сообщение от KOPOJI Посмотреть сообщение
Заносить время надо по условию, а не каждый раз заново.
заношу по условию когда больше 2х

Добавлено через 18 минут
Цитата Сообщение от Poznakomlus Посмотреть сообщение
поле TIMESTAMP и по умолчанию CURRENT_TIMESTAMP проверять
тоесть сделать еще 1 строку с типом TIMESTAMP
и от текщего+120 отнимать ее?
Цитата Сообщение от Poznakomlus Посмотреть сообщение
UNIX_TIMESTAMP() - fields > 120
не понял что и к чему
0
Эксперт PHP
 Аватар для Fedor Vlasenko
936 / 693 / 236
Регистрация: 01.02.2015
Сообщений: 1,848
30.10.2015, 21:28
Цитата Сообщение от KOPOJI Посмотреть сообщение
так скрипт же должен быть без привязки к какому-то пользователю
Цитата Сообщение от 228 Посмотреть сообщение
пользеватель нажимает на кнопку участвовать, добавляется в список
228, с логикой разберитесь
на бумаге на листике напишите, что надо
Примерно
1. Пользователь авторизовался запрос в базу создание нового таймера+user id
2. Запрос на выборку есть ли таймера где меньше 2 минут и есть пользователь( и другие)
3. Как вариант процедура которая будет чистить старые записи
И т. д.
0
4 / 4 / 1
Регистрация: 28.03.2015
Сообщений: 155
31.10.2015, 17:14  [ТС]
Poznakomlus, KOPOJI,
с логикой разобрался но вот не знаю верна ли реализация

а вот как по окончанию таймера чтото делать,

ведь сечйчас при перезагрузке страници отпр. запрос который скрипту указывает сколько до конца и скрипт отсчитывает
скрипт то в клиенте а мне бы на сервере по окончанию чтото делать
можно впринципе делать отсчет в пхп но тогда же прийдется обновлять часть страници каждую секунду и когда переменная равна значению делать рандом(напр когда текущее время равно занесенному в бд), но это же не оптимально
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
31.10.2015, 17:36
что мешает отправить запрос серверу, когда остается одна секунда?
0
4 / 4 / 1
Регистрация: 28.03.2015
Сообщений: 155
31.10.2015, 17:55  [ТС]
Цитата Сообщение от KOPOJI Посмотреть сообщение
что мешает отправить запрос серверу, когда остается одна секунда?
переменная ж в php изменяетяс только при перезагрузке
запрос с JS? - ну а если все пользеватели закроют страницы
так же вроди
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
31.10.2015, 17:58
Цитата Сообщение от 228 Посмотреть сообщение
запрос с JS?
да.
Цитата Сообщение от 228 Посмотреть сообщение
ну а если все пользеватели закроют страницы
тогда при их заходе выполнится проверка, не критично. Ну а вообще вместо "если то, если это", лучше почитать какую-нибудь литературу, вопрос-то пустяковый..
0
4 / 4 / 1
Регистрация: 28.03.2015
Сообщений: 155
31.10.2015, 21:34  [ТС]
Цитата Сообщение от Poznakomlus Посмотреть сообщение
на бумаге на листике напишите, что надо
идея:
1. пользователь нажимает участвовать и добавляется в список
2. когда в списке 2 уникальных польз. то начинается отсчет
3. по окончанию отсчета все крутится вертится и победитель выбирается
что у меня сейчассплош запросы к бд)
1. пользователь наживает участвовать и добавляется в таблицу
2. когда в таблице 2 уникальных польз. то начинается отсчет(в бд летит время+120сек, на странице -1 делает JS, идет сравнение с текущим)
3. по окончанию отсчета рандомно с таблици победитель выбирается(в таблице пользователей в поле sum +1)
все запросами с БД и обновление части страници каждую секу, некоторые даже каждую секу(напр проверка сколько сейчас учасников)
планы на ближайшее будущее:оптимизация/переделка уменьшение запросов к бд, зменение архитектуры саой(пока на правильный путь не вышел, в первой теме привязался к БД и так и щёл)
визуализировать "крутилку/барабан/лототрон/лотерею/рулетку"
0
Эксперт PHP
 Аватар для Fedor Vlasenko
936 / 693 / 236
Регистрация: 01.02.2015
Сообщений: 1,848
01.11.2015, 01:16
По задаче.
Легче решить было ее с помощью Node js и использованием сокетов, туры бы свои в массиве в ноде хранили, но как я понимаю знаний нет.
В php опять же можно сокеты. Они нужны для того чтоб не трогать базу лишними запросами.
Если уж совсем плохо то в базу и таблицу типа Memory, чтоб запросы в памяти к таблице отрабатывались.
Добавляете в турнир игрока. Пишем триггер в mysql, который при игроках больше 2 ставит флаг какой-то в турнире. Проверяем есть ли флаг запросами.
Далее вводите меня игрока. Пишите так, чтобы 70% выигрыша выпадало на меня, глядишь и профит
0
4 / 4 / 1
Регистрация: 28.03.2015
Сообщений: 155
01.11.2015, 13:41  [ТС]
Цитата Сообщение от Poznakomlus Посмотреть сообщение
Легче решить было ее с помощью Node js и использованием сокетов, туры бы свои в массиве в ноде хранили, но как я понимаю знаний нет.
-слышал на node пишут ботов для сайтов розыграшей
-на счет сокетов начал разбиратся
-ну просто так знания же не появляются)
Цитата Сообщение от Poznakomlus Посмотреть сообщение
В php опять же можно сокеты. Они нужны для того чтоб не трогать базу лишними запросами.
В начале я по-незнанию лиш выдвинул предположение с исп. БД - тогда еще не знал что есть варианты так и шёл...Да разбираясь вчера с примером рулетки увидел сокеты(не просто так они там)
Цитата Сообщение от Poznakomlus Посмотреть сообщение
Если уж совсем плохо то в базу и таблицу типа Memory, чтоб запросы в памяти к таблице отрабатывались.
как я понимаю Memory всеравно хуже чем сокеты
Цитата Сообщение от Poznakomlus Посмотреть сообщение
Добавляете в турнир игрока. Пишем триггер в mysql, который при игроках больше 2 ставит флаг какой-то в турнире. Проверяем есть ли флаг запросами.
сейчас запросом проверяю не флаг а кол-во уникальных логинов, в конце очищаю всь таблицу, с флагом дело идет ефективнее?всеравно же запрос напр.каждую 1сек.
Цитата Сообщение от Poznakomlus Посмотреть сообщение
Далее вводите меня игрока. Пишите так, чтобы 70% выигрыша выпадало на меня, глядишь и профит
Все чесно, такой задачи пока не стоит(хотя бы с этим сделать), сейчас немного решил изменить задание чтобы было похоже на те ставки с шансом,хотя встречал уже тему
0
Эксперт PHP
 Аватар для Fedor Vlasenko
936 / 693 / 236
Регистрация: 01.02.2015
Сообщений: 1,848
01.11.2015, 13:55
Цитата Сообщение от 228 Посмотреть сообщение
с флагом дело идет ефективнее
флаг может быть индексом
0
4 / 4 / 1
Регистрация: 28.03.2015
Сообщений: 155
02.11.2015, 17:40  [ТС]
Poznakomlus,
1.пускай я оставлю структуру с таблицами с типом Memory и запросами к ним
каким образом(простота приоритет) можно будет реализовать(куда копать)-опишу полностью(юзер жмякает участвовать и без перезагрузки страници он и все кто наблюдает увидели что в списке +1(какбы динамически подгрузились),когда их 2 и больше пошло время напр.120..119..10..(до этого времени не было видно) по окончанию запросом выбирается победитель(и появляется та самая крутилка,которая укажет на виннера),на какоето время он задержится на екране, потом все исчезает и снова можно нажимать участвовать,видеть список...)
так понимаю средствами аякса?
Кликните здесь для просмотра всего текста
встретил в коде рулетки
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
function reloadinfo() {
    $.ajax({
        type: "GET",
        url: "currentgame.php",
        success: function(msg){
            $("#gameid").text("#"+msg);
        }
    });
    $.ajax({
        type: "GET",
        url: "currentchance.php",
        success: function(msg){
            $("#mychance").text(msg);
        }
    });
    $.ajax({
        type: "GET",
        url: "currentitems.php",
        success: function(msg){
            if(msg > 50) msg = 50;
            circle.animate(msg/50);
            $('.progressbar__label').text(msg+'/50');
        }
    });
    $.ajax({
        type: "GET",
        url: "currentbank.php",
        success: function(msg){
            $('#bank').text(msg+'');
        }
    });
    $.ajax({
        type: "GET",
        url: "timeleft.php",
        success: function(msg) {
            timeleft = msg;
        }
    });
    $.ajax({
        type: "GET",
        url: "items.php",
        success: function(msg){
            $('.rounditems').html(msg);
        }
    });
}

2.Так и не разобрался как сделать корректно чтобы по окончанию таймера начинался розыграш
сейчас чтобы начать рандомить каждую секунду сравниваю значение с таблици(то к которому +120) с текущим временем-запросом и если =0 то рандомлю
0
4 / 4 / 1
Регистрация: 28.03.2015
Сообщений: 155
10.11.2015, 17:59  [ТС]
Цитата Сообщение от Poznakomlus Посмотреть сообщение
По задаче.
Легче решить было ее с помощью Node js и использованием сокетов, туры бы свои в массиве в ноде хранили, но как я понимаю знаний нет.
В php опять же можно сокеты. Они нужны для того чтоб не трогать базу лишними запросами.
а можно подробнее:
-если на node.js+socket.io - то какая должна быть структура, что требуется от ноде на сервере, оставить ли php и БД?
-если на php+sockets - то те же запросы к БД остаются?
0
Эксперт PHP
 Аватар для Fedor Vlasenko
936 / 693 / 236
Регистрация: 01.02.2015
Сообщений: 1,848
10.11.2015, 19:15
228, в ноде самой объект можеш использовать как хранилище. Вам нужно запустить сервиc который работал в фоне и работал с сокетами при этом хранил в себе часть данных, запускал внутри себя таймер, работал с базой(это рассуждения, реализация на ваших плечах). Причем это может быть js, php, python ...
1
4 / 4 / 1
Регистрация: 28.03.2015
Сообщений: 155
10.11.2015, 21:36  [ТС]
Poznakomlus,
спс за ответы
Цитата Сообщение от Poznakomlus Посмотреть сообщение
сервиc который работал в фоне
как я понял если в фоне то node ж
Цитата Сообщение от Poznakomlus Посмотреть сообщение
запускал внутри себя таймер
вот на счет именно такого как мне нужен инфы не видел
Цитата Сообщение от Poznakomlus Посмотреть сообщение
js, php, python ...
с python,ruby не знаком..пока
ну самые популярные свяки которые встретил(чтото может есть еще):
-node.js+socket.io+mysql
-comet(ajax,long polling)+php+mysql
правда по ноду инфы маловато...
0
0 / 0 / 0
Регистрация: 16.08.2019
Сообщений: 3
16.08.2019, 12:57
Ребята помогите кто знает
Ищу скрипт

Таймер, выбрасывающий пользователя из игры по истечении заданного мной времени, если он не привязан по своему ID из игры к моему сайту.
То есть я делаю моды для игры танки и мне когда то сделали такой таймер и когда человек заходил в игру то у него в ангаре появлялось сообщениие что мод не актевирован и ему нужно пройти по ссылке для его активации и оплаты и когда пользователь нажимал на текст то его выбрасывало на мою группу для танков и он писал мне сообщение в ЛС. А в связи с тем что человека который мне этот скрипт давал больше нет и я не могу теперь сменить ссылку которая перебрасывала пользователя с ангара ко мне в ЛС так как исходник закрыт . Что еще хочу добавить у меня два файла один который лежит на моем сайте и в формате json
в котором прописано так:

{
"NotCheck": true,
"BanCheck": false,
"Callback": 1000,
"NotCheckID": [91843929,225885, 882313581, 28488760, 40175597, 1879624, 32697714], тут я пользователя ID вписываю
"BanCheckID": [522885, 2555, 3554, 26550, 4555, 4553]
}

А вот что и как прописано в файле pyc я не знаю. Я его ложу просто в папку с модом по пути который так же прописан в данном скрипте
Вопрос: что должно быть написано в скрипте, который получает пользователь с моим модом для игры, который будет храниться у него в соответствующей папке по пути, который я пропишу в данном скрипте? Ну и, соответственно, сама связь должна быть между данным скриптом и файлом, который я держу у себя на сайте. Вот нужен пример или скрипт.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
16.08.2019, 12:57
Помогаю со студенческими работами здесь

Таймер обратного отсчета с cookie
Ребята весь интернет перелопатил и ничего не нашёл. Последняя надежда на вас) Я хочу научиться реализовать таймер обратного отсчета на...

Таймер обратного отсчета с редактированием времени
Здравствуйте, пробую написать код таймера на ХТМЛ и ПХП, что бы таймер допустим шел от 3 дней 12 часов и 17 сек до нуля. Но пока он...

Таймер обратного отсчета минуты синхронизация с временем сервера
Добрый вечер! Нужен таймер обратного отсчета, который выводил бы в реал тайме сколько секунд осталось до завершения минуты, отталкиваясь от...

Таймер обратного отсчета с добавлением времени когда угодно
Здарвствуйте, пробую написать код таймера на ХТМЛ и ПХП, что бы таймер допустим шел от 3 дней 12 часов и 17 сек до нуля. Но пока он...

Таймер обратного отсчета с перенаправлением на другой сайт(нужно, чтобы открывался в новой вкладке)
Здравствуйте. Хочу сделать веб страничку, где бы меня перенаправляли на браузерные игры по истечение какого-то времени. Дело в том, что код...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
36
Ответ Создать тему
Опции темы

Новые блоги и статьи
[golang] Двоичная куча, min-heap
alhaos 20.05.2026
Двоичная куча Двоичная куча — структура данных, которая всегда держит самый важный элемент наготове. Представьте очередь к хилеру в игре, и очередь из игроков в приоритете те у кого меньше. . .
[golang] Breadth-First Search
alhaos 19.05.2026
BFS (Breadth-First Search) — это базовый алгоритм обхода графа в ширину, который поуровнево исследует все связанные вершины. Он начинает с выбранной точки и проверяет всех соседей, прежде чем. . .
[golang] Алгоритм «Хак Госпера»
alhaos 17.05.2026
Алгоритм «Хак Госпера» Хак Госпера (Gosper's Hack) — алгоритм нахождения следующего по величине числа с тем же количеством установленных бит. Придуман Биллом Госпером в 1970-х, опубликован в. . .
Рисование бинарного древа до 6-го колена на js, svg.
russiannick 17.05.2026
<svg width="335" height="240" viewBox="0 0 335 240" fill="#e5e1bb"> <style> <!]> </ style> <g id="bush"> </ g> </ svg> function fn(){ let rost;/ / высота древа let xx=165,yy=210,w=256;
FSharp: interface of module
DevAlt 16.05.2026
Интерфейс модуля F# позволяет управлять доступностью членов, содержащихся в реализации модуля. По-умолчанию все члены модуля доступны: module Foo let x = 10 let boo () = printfn "boo" . . .
Хитросплетение родственных связей пантеона греческих богов.
russiannick 14.05.2026
Однооконник, позволяющий узреть и изучить отдельных героев древней Греции. <!DOCTYPE html> <html lang="ru"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible". . .
[golang] Угол между стрелками часов
alhaos 12.05.2026
По заданным значениям часа и минуты необходимо определить значение меньшего угла между стрелками аналогового циферблата часов. import "math" func angleClock(hour int, minutes int) float64 { . . .
Debian 13: Установка Lazarus QT5
ВитГо 09.05.2026
Эта инструкция моя компиляция инструкций volvo https:/ / www. cyberforum. ru/ blogs/ 203668/ 10753. html и его же старой инструкции по установке Lazarus с gtk2. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru