Decompter un chiffre sur un durée

Decompter un chiffre sur un durée - HTML/CSS - Programmation

Marsh Posté le 26-09-2014 à 14:09:45    

Bonjour,  
 
Je cherche a faire une page html (possible inclusion php/javascript) pour faire un compteur.
 
Ce compteur devrait faire un decompte où, a chaques secondes, il retirerai une certaine somme suivant une date a venir.
 
Par exemple :  
 
Si je dois payer 100 000 € dans un mois alors (100000/(3600*30) ou (100000/(3600*24*31) retranchera cette somme par seconde passée.
 
Auriez vous une idée d'un point de depart ?  
 
Je ne sais pas par où commencer bien que j'ai deja un prototype de page en tete ^^
 
La page comporterai au moins une compte a rebours de jours ainsi que le decompte des €€€ :)
 
Merci de votre aide
 
Ibrahim


---------------
Betaserie | Site Perso | YouTube | D3 | PS4
Reply

Marsh Posté le 26-09-2014 à 14:09:45   

Reply

Marsh Posté le 26-09-2014 à 15:31:27    

HTML + javascript si tu comptes laisser la page affichée en permanence, en PHP/HTML/javascript si tu veux que le décompte reprenne à la bonne valeur d'argent et de temps au cas où la page n'aurait pas été affichée en permanence (ex : tu lances le décomptes, laisse, la page affiché qq minutes puis la ferme et tu reviens dessus qq jours plus tard, le décompte ne reprend pas du début mais tient compte du temps écoulé depuis la fermeture de la page et reprendre le décompte).
 
Vu que tu m'as l'air d'être un débutant, je te recommande d'abord d'aller voir qq tutos sur le html et javascript pour faire la version qui reprend depuis le début dans un premier temps (t'auras besoin de 2 champs, un pour saisir une somme, l'autre pour saisir une date et de la fonction setinterval() pour effectuer le décompte).
 
Dans un 2ème temps, tu vas voir qq tutos sur PHP (en particulier les sessions et les fichiers, en effet, faudra stocker la dernière date/heure et montant où ton script en était resté) ainsi que sur ajax.


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
Reply

Marsh Posté le 26-09-2014 à 19:34:19    

Bonjour,  
 
tout d'abord, merci pour votre réponse rempli d’élément utiles ^^
 
Pour tout dire, ça fait 7 ans (environ) que je m’intéresse et fait du html a plus ou moins grand échelle avec plusieurs projets perso fini ou en cours. (ventardise exclue ^^)
 
Ce que j'aimerai faire c'est un truc dans ce gout la :  
 
http://nsa34.casimages.com/img/2014/09/26/14092607323813567.png
 
En voici le code source :
 

Code :
  1. <!DOCTYPE html>
  2. <head>
  3. <script language="Javascript" type="text/javascript" src="js/jquery-1.7.2.min.js"></script>
  4. <script language="Javascript" type="text/javascript" src="js/jquery.lwtCountdown-1.0.js"></script>
  5. <script language="Javascript" type="text/javascript" src="js/misc.js"></script>
  6. <script language="Javascript" type="text/javascript" src="js/carouFredSel.js"></script>
  7. <script language="Javascript" type="text/javascript" src="js/jquery.roundabout.min.js"></script>
  8. <link rel="Stylesheet" type="text/css" href="style/main.css"></link>
  9. <link rel="Stylesheet" type="text/css" href="style/style.css"></link>
  10. <link rel="Stylesheet" type="text/css" href="style/liquidcarousel.css"></link>
  11. <link rel="Stylesheet" type="text/css" href="style/jshowoff.css"></link>
  12. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
  13. <title>Game of Thrones</title>
  14. </head>
  15. <body>
  16.    <header>
  17.  <div id="titre_principale">
  18.        <a><img src="images/Banniere.jpg" alt="Banière Sys Dev Pc" width="900" height="100"/></a>
  19.     </div>
  20.    </header>
  21.  <section>
  22.  <div id="bandeau_header">
  23.      <h3>Winter is comming !!!</h3>
  24.   <a id="menu_header" href="contact.html">Nous contacter</a>
  25.    <a id="menu_header"> | </a>
  26.   <a id="menu_header" href="livres.html">Les Livres</a>
  27.    <a id="menu_header"> | </a>
  28.   <a id="menu_header" href="index.html">Accueil</a>
  29.  </div>
  30. <div id="container">
  31.  <!-- Countdown dashboard start -->
  32.  <div id="countdown_dashboard">
  33.   <div class="dash weeks_dash">
  34.    <span class="dash_title">Semaines</span>
  35.    <div class="digit">0</div>
  36.    <div class="digit">0</div>
  37.   </div>
  38.   <div class="dash days_dash">
  39.    <span class="dash_title">Jours</span>
  40.    <div class="digit">0</div>
  41.    <div class="digit">0</div>
  42.   </div>
  43.   <div class="dash hours_dash">
  44.    <span class="dash_title">Heures</span>
  45.    <div class="digit">0</div>
  46.    <div class="digit">0</div>
  47.   </div>
  48.   <div class="dash minutes_dash">
  49.    <span class="dash_title">Minutes</span>
  50.    <div class="digit">0</div>
  51.    <div class="digit">0</div>
  52.   </div>
  53.   <div class="dash seconds_dash">
  54.    <span class="dash_title">Secondes</span>
  55.    <div class="digit">0</div>
  56.    <div class="digit">0</div>
  57.   </div>
  58.  </div>
  59.  <!-- Countdown dashboard end -->
  60. <a id="annonce">Avant la prochaine saison...</a>
  61. <p><br /></p>
  62. <div id="carousel">
  63. <img src="images/Season_1.jpg" alt="image" width="187" height="310"/>
  64. <img src="images/Season_2.jpg" alt="image" width="187" height="310"/>
  65. <img src="images/Season_3.jpg" alt="image" width="187" height="310"/>
  66. <img src="images/Season_4.jpg" alt="image" width="187" height="310"/>
  67. </div>
  68. <ul id="carousel-descriptions">
  69. <li class="desc current">Saison 01</li>
  70. <li class="desc">Saison 02</li>
  71. <li class="desc">Saison 03</li>
  72. <li class="desc">Saison 04</li>
  73. </ul>
  74. <div id="carousel-controls">
  75. <span class="control current">1</span>
  76. <span class="control">2</span>
  77. <span class="control">3</span>
  78. <span class="control">4</span>
  79. </div>
  80.  <script language="javascript" type="text/javascript">
  81.    $('#countdown_dashboard').countDown({
  82.     targetDate: {
  83.      'day':   29,
  84.      'month':  03,
  85.      'year':  2015,
  86.      'hour':  0,
  87.      'min':   0,
  88.      'sec':   0
  89.     }
  90.    });
  91.  </script>
  92. <script type="text/javascript">
  93. (function($) {
  94. var $descriptions = $('#carousel-descriptions').children('li'),
  95. $controls = $('#carousel-controls').find('span'),
  96. $carousel = $('#carousel')
  97.  .roundabout({childSelector:"img", minOpacity:1, autoplay:true, autoplayDuration:5000, autoplayPauseOnHover:true })
  98.  .on('focus', 'img', function() {
  99.   var slideNum = $carousel.roundabout("getChildInFocus" );
  100.   $descriptions.add($controls).removeClass('current');
  101.   $($descriptions.get(slideNum)).addClass('current');
  102.   $($controls.get(slideNum)).addClass('current');
  103.  });
  104. $controls.on('click dblclick', function() {
  105. var slideNum = -1,
  106.  i = 0, len = $controls.length;
  107. for (; i<len; i++) {
  108.  if (this === $controls.get(i)) {
  109.   slideNum = i;
  110.   break;
  111.  }
  112. }
  113. if (slideNum >= 0) {
  114.  $controls.removeClass('current');
  115.  $(this).addClass('current');
  116.  $carousel.roundabout('animateToChild', slideNum);
  117. }
  118. });
  119. }(jQuery));
  120. </script>
  121. </div>
  122. <p><br /></p>
  123.  </section>
  124.  <footer>
  125.  </footer>
  126. </body>
  127. </html>


 
Et le javascript n'est autre qu'un jQuery ^^
 
Du coup je sais adapter les choses mais je manque encore de ressource.
 
Ce que j'ai déjà est un bon début non ?
 
Il serait pas mal je trouve de stocker les variables date et montant dans le code source de la page a mon sens sous cette forme :  
 
Date de début / Date de fin / montant total.
 
Le Js ferait alors le calcule suivant : (intervalle entre la date de début et de fin) / montant total.
 
C'est schématique, c'est encore en brouillant dans mon cerveau et les enfants hurles a coté de moi...
 
Nul doute que j'aurai plus d’élément en ma possession ce soir ^^
 
Ce projet est pour mon papa qui a besoin d'un compte a rebour pour son usage personnel. Ce pourrait egalement etre un bon outil pour la communauté ^^


---------------
Betaserie | Site Perso | YouTube | D3 | PS4
Reply

Marsh Posté le 27-09-2014 à 12:51:13    

Tu t'emmerdes pour pas grand chose...
 
https://github.com/sophilabs/jquery-counter
 
Utilise ca et basta. T'a la démo ici:
 
http://jquery-countdown.googlecode [...] index.html

Reply

Marsh Posté le 27-09-2014 à 14:27:05    

Bonjour et merci
 
ce ne sera pas suffisant dans mon cas. Car ce script utilise une donnée fixe a afficher
 
Si je met dans le code source 100000€ (par exemple) alors a chaque fois que la page sera rechargé ca repartira de 100000 :'(


---------------
Betaserie | Site Perso | YouTube | D3 | PS4
Reply

Marsh Posté le 27-09-2014 à 17:27:22    

Je sais pas vraiment ou tu en es côté programmation, mais sur du code client a part en utilisant des cookies/localstorage ou autre, tu n'auras aucun moyen de faire ca...
 
Il te faut passer côté serveur avec du PHP ou autre pour pouvoir faire que le timer ne 'redémarre' pas toujours, mais reprenne là ou le temps restant est actuellement...

Reply

Marsh Posté le 28-09-2014 à 21:12:14    

ibrahim54 a écrit :

Bonjour et merci
 
ce ne sera pas suffisant dans mon cas. Car ce script utilise une donnée fixe a afficher
 
Si je met dans le code source 100000€ (par exemple) alors a chaque fois que la page sera rechargé ca repartira de 100000 :'(


C'était mon point n°2 : passer par PHP et peut-être un fichier pour stocker qq données.


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed