Числов брояч за време с начало и край

Post Reply
User avatar
nanera
Нов
Нов
Posts: 29
Joined: Mon Feb 05, 2007 7:42 pm

Числов брояч за време с начало и край

Post by nanera » Mon May 07, 2018 12:53 pm

Здравейте,

Търсих в интернет това, което искам да направя, но не успях да намеря решение. Искам да направя виртуален брояч. Искам за период от 2 месеца да отброи от 1800 до 300. Всеки ден да изважда по 25 единици (приблизително), като за 24 часа да се изваждат в различно време по 2-5 единици произволно (ако е възможно).
Може да не е съвсем точен, плюс минус една-две единици не е проблем.

Ако има вече готово решение на моето питане, кажете как да го търся. Може би не задавам ключовите думи както трябва. В нета повечето броячаи са за време (дни, часове, минути) и онлайн посетители или посещения. Точно такъв, който да отброява единици за време наобратно не съм намерил.

Благодаря за отделеното време.

User avatar
anonimen
Web-tourist
Web-tourist
Posts: 1562
Joined: Mon Jun 11, 2012 6:07 pm
Answers: 163
Location: Parse error: unexpected "}" in /home/index.php on line 26

Post by anonimen » Tue May 08, 2018 10:36 am

Такъв брояч на някакъв сървър ли ще работи?
Всеки ден да изважда по 25 единици (приблизително), като за 24 часа да се изваждат в различно време по 2-5 единици произволно (ако е възможно).
За да синхронизираш резултата при всички потребители, ще трябва да пазиш текущата стойност на някакъв сървър. Иначе няма как намаляването да става хем произволно, хем да няма разминаване.

Но понеже темата е в раздел html/css/javascript, някакси не се връзва да питаш за сървърно решение.

Би ли пояснил къде си представяш този брояч да седи, какво да вижда потребителя, какво да стане при рефреш на страницата и т.н.?

User avatar
nanera
Нов
Нов
Posts: 29
Joined: Mon Feb 05, 2007 7:42 pm

Post by nanera » Tue May 08, 2018 12:22 pm

Да, явно стойността ще трябва да се съхранява някъде. Имам хостинг може там да го направи. Мислех, че javascript също може да съхранява стойността и да не се губи при рефрешване. Сега като се замисля явно ще трябва да го вържа с накаква таблица в SQL базата.

Да помоля тогава администратора да премести темата в PHP MySQL ASP.NET .

Принципно си мислех, че може да стане като обикновен countdown javascript, но вместо обратно отброяване на часове, минути и секунди да отброява единици. Ако може по някакъв начин така да се направи мисля, че ще ми свърши работа.

User avatar
anonimen
Web-tourist
Web-tourist
Posts: 1562
Joined: Mon Jun 11, 2012 6:07 pm
Answers: 163
Location: Parse error: unexpected "}" in /home/index.php on line 26

Post by anonimen » Tue May 08, 2018 1:58 pm

nanera wrote:Да, явно стойността ще трябва да се съхранява някъде. Имам хостинг може там да го направи. Мислех, че javascript също може да съхранява стойността и да не се губи при рефрешване. Сега като се замисля явно ще трябва да го вържа с накаква таблица в SQL базата
Javascript може да пази стойности без да се губят при рефреш (localstorage), но въпреки това как ще синхронизираш 'произволната' промяна?

Ако при теб от 100 единици страницата извади 3, то при мен може да извади 5, и тогава ще имаме различни стойности. Така броячът ще свърши по различно време за двамата.

Ако не ти трябва произволност, можеш да го направиш по-лесно:

[js]var oneDay = 24*60*60*1000; // hours*minutes*seconds*milliseconds
var firstDate = new Date(2008,01,12);
var secondDate = new Date(2008,01,22);

var diffDays = Math.round(Math.abs((firstDate.getTime() - secondDate.getTime())/(oneDay)));[/js]

https://stackoverflow.com/a/2627493

Настройваш firstDate и secondDate и го показваш на страницата.

Това ще ти даде разликата в дни, която ще трябва да умножиш по 25 и да извадиш от първоначалната стойност, за да получиш резултата в точки.

User avatar
nanera
Нов
Нов
Posts: 29
Joined: Mon Feb 05, 2007 7:42 pm

Post by nanera » Tue May 08, 2018 2:48 pm

Това май няма да ми свърши работа. Тези две дати, които задавам ми дават като резултат едно число. Аз числото го имам. По скоро ако може да се направи така, че Javascript да взема текущата дата и изважда от нея статична такава. Така според текущата дата ще се генерира всеки ден различно число. Ако се усложни може и по часове да се направи. Но не знам точно как.

User avatar
anonimen
Web-tourist
Web-tourist
Posts: 1562
Joined: Mon Jun 11, 2012 6:07 pm
Answers: 163
Location: Parse error: unexpected "}" in /home/index.php on line 26

Post by anonimen » Tue May 08, 2018 3:58 pm

nanera wrote:Това май няма да ми свърши работа. Тези две дати, които задавам ми дават като резултат едно число. Аз числото го имам. По скоро ако може да се направи така, че Javascript да взема текущата дата и изважда от нея статична такава. Така според текущата дата ще се генерира всеки ден различно число. Ако се усложни може и по часове да се направи. Но не знам точно как.
new Date(), без подадени аргументи, ти дава текущата дата.

User avatar
nanera
Нов
Нов
Posts: 29
Joined: Mon Feb 05, 2007 7:42 pm

Post by nanera » Thu May 10, 2018 8:34 pm

Опитах с това, но всеки ден ми е едно число и някак си не успявам да измисля алгуритама.
anonimen wrote: Ако при теб от 100 единици страницата извади 3, то при мен може да извади 5, и тогава ще имаме различни стойности. Така броячът ще свърши по различно време за двамата.
Има ли начин да е така, че просто веднъж на ден да се изважда някакво произволно число в диапазон или от списъл с числа.

Това, че за мен и за теб ще завърши по-различен наин не ме притесява. Идеята ми е от числото 1800, да се извадят за два месеца произвони числа всеки ден обшо около 1500 единици и след този период спират да се изваждат, като остават някъде около 300.

Post Reply