xactise
Messages postés507Date d'inscriptionmardi 18 février 2003StatutMembreDernière intervention22 juin 2012
-
14 sept. 2006 à 17:54
xactise
Messages postés507Date d'inscriptionmardi 18 février 2003StatutMembreDernière intervention22 juin 2012
-
18 sept. 2006 à 13:34
Bonjours a tous et merci de voter attention
Voila j'ai une question , j'aimerai savoir si c'est possible (et si oui comment - une tite source ou un exemple serai le bienvenue)
C'est assez compliquer donc je vais prendre un exemple :
je veux par exemple qu'il y ai un chronos qui se decompte de 29 min a 0 min
le truc c'est que quand on reload la page faut pas que sa reprenne a 29 min
par exemple si on reload la page a 4min35 faut que sa reprenne a 4min33 (en comptant 2sec de reload de page)
j'espere avoir été claire...
D'avance merci
L0rD...
Je n'ai pas fait le décompte en flash, a toi de faire, c'est facile tu regardes dans l'aide à setInterval().
Sinon y'a surement des source qui le font. Et faudra que tu stoppes ton "jeu" à la fin du chrono.
xactise
Messages postés507Date d'inscriptionmardi 18 février 2003StatutMembreDernière intervention22 juin 20122 17 sept. 2006 à 21:37
comme je t'ai dit j'y ai aussi réfléchi je ne demande pas a quelqu'un sans y reflechir aussi par moi même et j'ai je pense abouti a une solution
je te l'expose pourrait tu me dire si sa te semble probable et si oui quel solution est la meilleur
Voici mon idée :
On prend une date de depart de jeu (en timestamp)
exemple 1 000 000
quand l'internaute arrive sur la page on recupere l'heure du serveur
exemple 1 010 000
on soustrait 1 010 000 - 1 000 000 soit 10 000
on le divise par notre temps de jeu (ici 29 minute soit 1740 seconde)
10 000 / 1740 = 5.7 (environ)
on recupere le 0.7 qu'on multiplit par 29 soit environ 20minute
ce qui nous donne au total 29-20 = 9 donc 9 minute restante
kingcobra
Messages postés316Date d'inscriptionvendredi 23 mai 2003StatutMembreDernière intervention19 septembre 2012 14 sept. 2006 à 18:32
Oui c'est faisable facilement.
tu chopes le temps, (le nb de millisecondes écoulées depuis 19chépucombien) : ça le départ du chrono. (a stoquer dans fichier ou bdd)
Tu fais le decremente avec un setInterval par exemple. Une fois le chrono démarré, il te faut stoquer une variable qui dira par exemple chrono=0 ou chrono=1 suivant si le chrono est arreter ou démarré. (ou un cookie)
Et lors du reload tu interroges la-dite variable pour savoir ce qu'il en ai du chrono. Si chrono=0 il demarre, tu stockes le départ et chrono=1, si chrono=1, tu affiches le temps restant.
Attention, si plusieurs utilisateurs peuvent etre connectés en meme temps il te faut autant de chrono que d'IP (si je puis dire) et donc autant de "date" de départ.
Le php me parait inévitable, je te conseille de faire le max de calcul en php.
Essai d'aller dans ce sens, si vraiment tu y arrives pas (mais cherche stp), je veux bien prendre qques minutes pour te faires une source. (faudra alors que tu me dises si c'est multi-user)
kingcobra
Messages postés316Date d'inscriptionvendredi 23 mai 2003StatutMembreDernière intervention19 septembre 2012 18 sept. 2006 à 10:49
Peut etre qu'on s'est pas compris sur un point : y'a t il un chrono pour plusieur utilisateur, ou un chrono pour chacun ?
Mon programme permet les 2 aisément, tu remplaces la construction de nom de fichier par un noms unique, genre "chrono.txt" si tu souhaite qu'il y'ait un chrono pour tous les utilisateurs.
En ce qui concerne ta méthode, je vois pas ce que t'a voulu faire.
Suivant ton raisonnement il s'est écoulé 10000 secondes, ce qui fait en realié 10000/60=166 minutes et des brouettes.
La seule chose que peut éventuellement te donner ta division est un facteur qui s'il est superieur ( ou = ) à 1 te dis que le chrono est terminé.
selon ton raisonnement quand l'internaute arrive sur la page il reste 9 minutes.
Selon le mien le chrono est fini depuis 166-29 = 137 minutes
De plus si il y'a bien un chrono par user, en aucun cas tu peux supprimer la création d'un fichier par ip.
En revanche tu peux tres facilement adapter à une base de donnée.
xactise
Messages postés507Date d'inscriptionmardi 18 février 2003StatutMembreDernière intervention22 juin 20122 18 sept. 2006 à 11:07
oui j'ai oublier de presisez un petit truc en effet
pour repondre a ta premier question c un chronos GLOBAL pour TOUS les internaute
et pour repondre a ta 2eme interogation
en faite tous les 29minute quelque chose s'affiche pendant 1 minute
puis sa recommence
29minute
1minute
29minute
1minute
etc... c'est pas un chronos qui va servir une fois mais a vie...
D'ou ma division etc..
Maintenant ma tu compris ? et avec ces nouvelle information est ce que mon raisonement du dessus te semble correct ?
D'avance merci pour ton aide
kingcobra
Messages postés316Date d'inscriptionvendredi 23 mai 2003StatutMembreDernière intervention19 septembre 2012 18 sept. 2006 à 12:18
OK cette fois tout a fait d'accord. cela te donne bien une boucle.
Maintenant si tu stoques le départ dans un fichier ou même dans flash (en timestamp) tu peux alors tout faire en flash facilement.
Si en revanche ce départ doit pouvoir être modifier dynamiquement, php est obligatoire.