Page 1 of 1

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

Posted: Mon May 07, 2018 12:53 pm
by nanera
Здравейте,

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

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

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

Posted: Tue May 08, 2018 10:36 am
by anonimen
Такъв брояч на някакъв сървър ли ще работи?
Всеки ден да изважда по 25 единици (приблизително), като за 24 часа да се изваждат в различно време по 2-5 единици произволно (ако е възможно).
За да синхронизираш резултата при всички потребители, ще трябва да пазиш текущата стойност на някакъв сървър. Иначе няма как намаляването да става хем произволно, хем да няма разминаване.

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

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

Posted: Tue May 08, 2018 12:22 pm
by nanera
Да, явно стойността ще трябва да се съхранява някъде. Имам хостинг може там да го направи. Мислех, че javascript също може да съхранява стойността и да не се губи при рефрешване. Сега като се замисля явно ще трябва да го вържа с накаква таблица в SQL базата.

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

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

Posted: Tue May 08, 2018 1:58 pm
by anonimen
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 и да извадиш от първоначалната стойност, за да получиш резултата в точки.

Posted: Tue May 08, 2018 2:48 pm
by nanera
Това май няма да ми свърши работа. Тези две дати, които задавам ми дават като резултат едно число. Аз числото го имам. По скоро ако може да се направи така, че Javascript да взема текущата дата и изважда от нея статична такава. Така според текущата дата ще се генерира всеки ден различно число. Ако се усложни може и по часове да се направи. Но не знам точно как.

Posted: Tue May 08, 2018 3:58 pm
by anonimen
nanera wrote:Това май няма да ми свърши работа. Тези две дати, които задавам ми дават като резултат едно число. Аз числото го имам. По скоро ако може да се направи така, че Javascript да взема текущата дата и изважда от нея статична такава. Така според текущата дата ще се генерира всеки ден различно число. Ако се усложни може и по часове да се направи. Но не знам точно как.
new Date(), без подадени аргументи, ти дава текущата дата.

Posted: Thu May 10, 2018 8:34 pm
by nanera
Опитах с това, но всеки ден ми е едно число и някак си не успявам да измисля алгуритама.
anonimen wrote: Ако при теб от 100 единици страницата извади 3, то при мен може да извади 5, и тогава ще имаме различни стойности. Така броячът ще свърши по различно време за двамата.
Има ли начин да е така, че просто веднъж на ден да се изважда някакво произволно число в диапазон или от списъл с числа.

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