Une variable qui se vide en 48 heures
Résolu/Fermé
big-boss-taha
Messages postés
6
Date d'inscription
mercredi 4 septembre 2013
Statut
Membre
Dernière intervention
11 octobre 2013
-
8 oct. 2013 à 18:47
big-boss-taha Messages postés 6 Date d'inscription mercredi 4 septembre 2013 Statut Membre Dernière intervention 11 octobre 2013 - 11 oct. 2013 à 21:35
big-boss-taha Messages postés 6 Date d'inscription mercredi 4 septembre 2013 Statut Membre Dernière intervention 11 octobre 2013 - 11 oct. 2013 à 21:35
A voir également:
- Une variable qui se vide en 48 heures
- Coeur vide ✓ - Forum Facebook
- Supprimer une page vide word - Guide
- Vba range avec variable ✓ - Forum VB / VBA
- Coeur vide ✓ - Forum Facebook
- Raccourci coeur blanc - Forum Facebook
4 réponses
Pitet
Messages postés
2826
Date d'inscription
lundi 11 février 2013
Statut
Membre
Dernière intervention
21 juillet 2022
524
Modifié par Pitet le 9/10/2013 à 11:34
Modifié par Pitet le 9/10/2013 à 11:34
Salut,
La réponse t'as déjà été donné sur un autre forum ;)
Je répète donc la solution proposé par Genova :
Tu commence par déterminer combien de vie perdue pour 1 seconde :
Lors de la prochaine connexion, tu regardes combien de différence en seconde il y a entre le moment présent et la dernière date d'enregistrement, puis tu multiplies ce nombre de secondes par le cout de vie par seconde :
Bonne journée
La réponse t'as déjà été donné sur un autre forum ;)
Je répète donc la solution proposé par Genova :
Tu commence par déterminer combien de vie perdue pour 1 seconde :
$tempsMax = 48 * 3600; // 48 heures en secondes
$vieParSeconde = 100 / $tempsMax; // Tu divises ta vie (100) par 48h (en secondes) afin de savoir combien de vie disparait par seconde
Lors de la prochaine connexion, tu regardes combien de différence en seconde il y a entre le moment présent et la dernière date d'enregistrement, puis tu multiplies ce nombre de secondes par le cout de vie par seconde :
$dernierTemps = ...; // Ici tu dois récupérer la dernière date de mise à jour
$tempsActuel = time(); // Moment actuel
$tempsEcoule = $tempsActuel - $dernierTemps; // Nombre de secondes écoulées depuis la dernière mise à jour
$viePerdue = $vieParSeconde * $tempsEcoule;
$vie = $vie - $viePerdue;
Bonne journée
big-boss-taha
Messages postés
6
Date d'inscription
mercredi 4 septembre 2013
Statut
Membre
Dernière intervention
11 octobre 2013
Modifié par big-boss-taha le 11/10/2013 à 16:23
Modifié par big-boss-taha le 11/10/2013 à 16:23
Ouais mddr, j'ai pensé ne jamais avoir la réponse sur l'autre forum !
Bon, euuuh je sais maintenant comment faire mais j'ai eu certains problèmes !
Je pense que je suis tout prés du but, d'abord voici le code que j'utilise :
$date = new DateTime('2012-09-01 12:00:00');
$dateNow = new \DateTime('now');
$interval = $date->diff($dateNow);
$interval = $interval->format('%s seconds');
$interval/1728;
$vie = $vie - $interval/1728;
print "<br>vie: $vie <br>";
print "<br>interval: $interval <br>";
Le résultat :
vie: 99.970486111111
interval: 51 seconds
Puis la vie commence à se vider petite à petit ! Mais quand le temps et à 60 secondes, puis reviens à 0, la vie reviens à 100 aussi et redescend petite à petit !! Ainsi de suite !
Aussi, si j'utilise :
<?php
{
echo "".$donnees['sante']."";
}
?>
Pour afficher la variable au membre, ça reste 100 même si en print "<br>vie: $vie <br>"; deviens 99 ou moins ! Même aussi sur la bd ça change pas :'(
Merci d'avance !
Bon, euuuh je sais maintenant comment faire mais j'ai eu certains problèmes !
Je pense que je suis tout prés du but, d'abord voici le code que j'utilise :
$date = new DateTime('2012-09-01 12:00:00');
$dateNow = new \DateTime('now');
$interval = $date->diff($dateNow);
$interval = $interval->format('%s seconds');
$interval/1728;
$vie = $vie - $interval/1728;
print "<br>vie: $vie <br>";
print "<br>interval: $interval <br>";
Le résultat :
vie: 99.970486111111
interval: 51 seconds
Puis la vie commence à se vider petite à petit ! Mais quand le temps et à 60 secondes, puis reviens à 0, la vie reviens à 100 aussi et redescend petite à petit !! Ainsi de suite !
Aussi, si j'utilise :
<?php
{
echo "".$donnees['sante']."";
}
?>
Pour afficher la variable au membre, ça reste 100 même si en print "<br>vie: $vie <br>"; deviens 99 ou moins ! Même aussi sur la bd ça change pas :'(
Merci d'avance !
Pitet
Messages postés
2826
Date d'inscription
lundi 11 février 2013
Statut
Membre
Dernière intervention
21 juillet 2022
524
11 oct. 2013 à 17:09
11 oct. 2013 à 17:09
Tu pensais ne jamais avoir la réponse mais as tu vérifié ??
Tu as encore eu une réponse ce matin concernant ce deuxième message :
tu dois enregistrer la date initiale dans un fichier ou en base de données.
Premièrement la 5ème ligne de ton code ne sert à rien :
Le calcul de ton intervalle n'est pas correct, voici un exemple de correction :
On arrive donc à environ -20 000 point de vie à l'heure actuelle, c'est normal puisque le délais de 48h est largement dépassé (2012-09-01, soit plus d'un an).
Ici la date initiale (2012-09-01) est codé en dur. Comme il t'a été répondu sur l'autre forum, il faudrait définir cette date en fonction de la première connexion du visiteur et l'enregistrer dans un fichier ou en base de données.
Bonne journée
Tu as encore eu une réponse ce matin concernant ce deuxième message :
tu dois enregistrer la date initiale dans un fichier ou en base de données.
Premièrement la 5ème ligne de ton code ne sert à rien :
$interval/1728;Tu ne récupère pas le résultat de ton opération, tu peux donc supprimer cette ligne.
Le calcul de ton intervalle n'est pas correct, voici un exemple de correction :
$vie = 100;
$date = new DateTime('2012-09-01 12:00:00');
$dateNow = new DateTime('now');
$interval = $dateNow->getTimestamp() - $date->getTimestamp();
$vie = $vie - $interval/1728;
print "<br>vie: $vie <br>";
print "<br>interval: $interval <br>";
On arrive donc à environ -20 000 point de vie à l'heure actuelle, c'est normal puisque le délais de 48h est largement dépassé (2012-09-01, soit plus d'un an).
Ici la date initiale (2012-09-01) est codé en dur. Comme il t'a été répondu sur l'autre forum, il faudrait définir cette date en fonction de la première connexion du visiteur et l'enregistrer dans un fichier ou en base de données.
Bonne journée
big-boss-taha
Messages postés
6
Date d'inscription
mercredi 4 septembre 2013
Statut
Membre
Dernière intervention
11 octobre 2013
11 oct. 2013 à 21:35
11 oct. 2013 à 21:35
Je te remercie, ton code marche à merveille, j'avais pas trop compris se qu'il voulais dire sur l'autre forum, merci du fond du coeur ;)