Compte à rebours
Résolu
Kamal
-
albertdu93 Messages postés 32 Date d'inscription Statut Membre Dernière intervention -
albertdu93 Messages postés 32 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
je suis un jeune développeur Web , et j'essaie de créer une méthode pour indiquer à mes utilisateurs le temps restant.
Dans ma base de données Mysql , j'ai une table de type ( c'est un exemple seulement ) :
table Offre ( id , nom , date-depot)
date-depot : DateTime
id : int
nom : Varchar
Ma question :
Vue que la date est insérée automatiquement via mon code Php.
je veux récupérer la date de ma table ==> ça je peux le faire.
Puis afficher le temps restant entre ma date-depot et ma ( date-depot + 3 heure + 2 minutes )
Merci D'avance
je suis un jeune développeur Web , et j'essaie de créer une méthode pour indiquer à mes utilisateurs le temps restant.
Dans ma base de données Mysql , j'ai une table de type ( c'est un exemple seulement ) :
table Offre ( id , nom , date-depot)
date-depot : DateTime
id : int
nom : Varchar
Ma question :
Vue que la date est insérée automatiquement via mon code Php.
je veux récupérer la date de ma table ==> ça je peux le faire.
Puis afficher le temps restant entre ma date-depot et ma ( date-depot + 3 heure + 2 minutes )
Merci D'avance
A voir également:
- Compte à rebours
- Créer un compte google - Guide
- Installer windows 10 sans compte microsoft - Guide
- Créer un compte gmail - Guide
- Comment savoir qui regarde mon compte facebook - Guide
- Créer un compte instagram sur google - Guide
4 réponses
Je te donne le code php pour afficher le temps restant par contre oublie ton affichage dynamique (j'ai pas trop le temps d'écrire le code car là c'est en plus un peu plus technique ;)
le code qui suit marche très bien Si tu essaies d'intégréer ta date de la forme "jour-mois-année 9:45" où 9:45 désigne 9h du matin et 45 minutes (dis le moi si tu ne sais pas) par contre il y aura pas de secondes (c'est un peut superflus non ?!). Bref dans le code qui suit l'algorithme calcule le temps écoulé entre maintenant et le 2 fevrier 2012 à 4 heures du matin
(
le code qui suit marche très bien Si tu essaies d'intégréer ta date de la forme "jour-mois-année 9:45" où 9:45 désigne 9h du matin et 45 minutes (dis le moi si tu ne sais pas) par contre il y aura pas de secondes (c'est un peut superflus non ?!). Bref dans le code qui suit l'algorithme calcule le temps écoulé entre maintenant et le 2 fevrier 2012 à 4 heures du matin
(
$date = "02-02-2012 4:00";). A toi de remplacer cette date: par celle insérée dans la base de donnée
<?php function temps_ecoule($date,$type) { if($type == "timestamp") { $date2 = $date; // depuis cette date } elseif($type == "date") { $date2 = strtotime($date); // depuis cette date } else { return "Non reconnu"; exit(); } $date1 = date("U"); // à la date actuelle $return = ""; // ######## ANNEE ######## if((date('Y',$date1 - $date2)-1970) > 0) { if((date('Y',$date1 - $date2)-1970) > 1) { $echo_annee = (date('Y',$date1 - $date2)-1970)." Anneés"; $return = $echo_annee.", "; } else { $echo_annee = (date('Y',$date1 - $date2)-1970)." Année"; $return = $echo_annee.", "; } } else { $echo_annee = ""; $return = $return; } // ######## MOIS ######## if((date('m',$date1 - $date2)-1) > 0) { $echo_mois = (date('m',$date1 - $date2)-1)." Mois "; if(!empty($echo_annee)) { $return = $echo_annee." et ".$echo_mois; } else { $return = $echo_mois; } } else { $echo_mois = ""; $return = $return; } // ######## JOUR ######## if((date('d',$date1 - $date2)-1) > 0) { if((date('d',$date1 - $date2)-1) > 1) { $echo_jour = (date('d',$date1 - $date2)-1)." Jours"; if(!empty($echo_annee) OR !empty($echo_mois)) { $return = $return.$echo_mois." et ".$echo_jour; } else { $return = $return.$echo_mois.$echo_jour; } } else { $echo_jour = (date('d',$date1 - $date2)-1)." Jour"; if(!empty($echo_annee) OR !empty($echo_mois)) { $return = $return.$echo_mois." et ".$echo_jour; } else { $return = $return.$echo_mois.$echo_jour; } } } else { $echo_jour = ""; $return = $return; } // ######## HEURE ######## if((date('H',$date1 - $date2)-1) > 0) { if((date('H',$date1 - $date2)-1) > 1) { $echo_heure = (date('H',$date1 - $date2)-1)." Heures"; if(!empty($echo_annee) OR !empty($echo_mois) OR !empty($echo_jour)) { $return = $echo_annee.$echo_mois.$echo_jour." et ".$echo_heure; } else { $return = $echo_annee.$echo_mois.$echo_jour.$echo_heure; } } else { $echo_heure = (date('H',$date1 - $date2)-1)." Heure"; if(!empty($echo_annee) OR !empty($echo_mois) OR !empty($echo_jour)) { $return = $echo_annee.$echo_mois.$echo_jour." et ".$echo_heure; } else { $return = $echo_annee.$echo_mois.$echo_jour.$echo_heure; } } } else { $echo_heure = ""; $return = $return; } // ######## MINUTE ET SECONDE ######## $virgule_annee = ""; $virgule_mois = ""; $virgule_jour = ""; if(date('i',$date1 - $date2) > 0) { if(date('i',$date1 - $date2) > 1) { $echo_minute = round(date('i',$date1 - $date2))." Minutes"; if(!empty($echo_annee) OR !empty($echo_mois) OR !empty($echo_jour) OR !empty($echo_heure)) { if(!empty($echo_annee)) { if(!empty($echo_mois) OR !empty($echo_jour) OR !empty($echo_heure)) { $virgule_annee = ", "; } } if(!empty($echo_mois)) { if(!empty($echo_jour) OR !empty($echo_heure)) { $virgule_mois = ", "; } } if(!empty($echo_jour)) { if(!empty($echo_heure)) { $virgule_jour = ", "; } } $return = $echo_annee.$virgule_annee.$echo_mois.$virgule_mois.$echo_jour.$virgule_jour.$echo_heure." et ".$echo_minute; } else { $return = $echo_annee.$virgule_annee.$echo_mois.$virgule_mois.$echo_jour.$virgule_jour.$echo_heure.$echo_minute; } } else { $echo_minute = round(date('i',$date1 - $date2))." Minute"; if(!empty($echo_annee) OR !empty($echo_mois) OR !empty($echo_jour) OR !empty($echo_heure)) { if(!empty($echo_annee)) { if(!empty($echo_mois) OR !empty($echo_jour) OR !empty($echo_heure)) { $virgule_annee = ", "; } } if(!empty($echo_mois)) { if(!empty($echo_jour) OR !empty($echo_heure)) { $virgule_mois = ", "; } } if(!empty($echo_jour)) { if(!empty($echo_heure)) { $virgule_jour = ", "; } } $return = $echo_annee.$virgule_annee.$echo_mois.$virgule_mois.$echo_jour.$virgule_jour.$echo_heure." et ".$echo_minute; } else { $return = $echo_annee.$virgule_annee.$echo_mois.$virgule_mois.$echo_jour.$virgule_jour.$echo_heure.$echo_minute; } } } else { if(date('s',$date1 - $date2) > 1) { $echo_minute = round(date('s',$date1 - $date2))." Secondes"; if(!empty($echo_annee) OR !empty($echo_mois) OR !empty($echo_jour) OR !empty($echo_heure)) { if(!empty($echo_annee)) { if(!empty($echo_mois) OR !empty($echo_jour) OR !empty($echo_heure)) { $virgule_annee = ", "; } } if(!empty($echo_mois)) { if(!empty($echo_jour) OR !empty($echo_heure)) { $virgule_mois = ", "; } } if(!empty($echo_jour)) { if(!empty($echo_heure)) { $virgule_jour = ", "; } } $return = $echo_annee.$virgule_annee.$echo_mois.$virgule_mois.$echo_jour.$virgule_jour.$echo_heure." et ".$echo_minute; } else { $return = $echo_annee.$virgule_annee.$echo_mois.$virgule_mois.$echo_jour.$virgule_jour.$echo_heure.$echo_minute; } } else { if(!empty($echo_annee) OR !empty($echo_mois) OR !empty($echo_jour) OR !empty($echo_heure)) { if(!empty($echo_annee)) { if(!empty($echo_mois) OR !empty($echo_jour) OR !empty($echo_heure)) { $virgule_annee = ", "; } } if(!empty($echo_mois)) { if(!empty($echo_jour) OR !empty($echo_heure)) { $virgule_mois = ", "; } } if(!empty($echo_jour)) { if(!empty($echo_heure)) { $virgule_jour = ", "; } } $return = $echo_annee.$virgule_annee.$echo_mois.$virgule_mois.$echo_jour.$virgule_jour.$echo_heure." et ".$echo_minute; } else { $return = $echo_annee.$virgule_annee.$echo_mois.$virgule_mois.$echo_jour.$virgule_jour.$echo_heure.$echo_minute; } } } return "Il y a ".$return; } echo '<pre>'; $date = "02-02-2012 4:00"; echo temps_ecoule($date,"date")."\n"; ?>
J'oubliais il ya toujour moyen de mettre ta date sous la forme
"jour-mois-année H:m"
si tu a sous la forme "jour / mois / Année / Heure / Minutes / secondes"
Tu devrais utiliser une REGEX en l'occurence la REGEX preg_split ... tu connais non ?
si tu connais pas donne moi la structure exacte d'insertion de la date dans ta base de donnée (avec exemple si possible) car il n'y pas qu'une seule forme de Datetime et en plus celle que tu ma donnée plus haut m'a l'air douteuse : "( jour / mois / Année Heure / Minutes / secondes )" Tu ne sépares pas l'année et l'heure ?!!
"jour-mois-année H:m"
si tu a sous la forme "jour / mois / Année / Heure / Minutes / secondes"
Tu devrais utiliser une REGEX en l'occurence la REGEX preg_split ... tu connais non ?
si tu connais pas donne moi la structure exacte d'insertion de la date dans ta base de donnée (avec exemple si possible) car il n'y pas qu'une seule forme de Datetime et en plus celle que tu ma donnée plus haut m'a l'air douteuse : "( jour / mois / Année Heure / Minutes / secondes )" Tu ne sépares pas l'année et l'heure ?!!