La communauté ALL HTML c'est 60442 membres à ce jour dont 0 inscrits aujourd'hui et 5 depuis une semaine.

  • imprimer
  • aide

Forum de discussions « PHP - SQL »

Retrouvez les publications relatives à ces discussions dans nos rubriques PHP, SQL.

Décompte en jours à partir de dates

liste des forums liste des discussions Participer à la discussion

Photo de davredom Message publié le lundi 23 juin 2008 à 12 h 17 par davredom. [;-))] .:: Dom ::.
Bonjour à tous,
J'ai une table comprenant les enregistrements suivants :

evenement_1 | 01-08-2008
evenement_2 | 10-08-2008
evenement_3 | 07-09-2008
etc...

J'aimerais afficher sur ma page un truc du style :

Jour J-x avant evenement_correspondant.

x est bien sûr la différence en jours entre la date du jour, et la date enregistrée la plus proche (mais non dépassée évidemment).

Comment faire svp ?

------------------------
Merci d'avance pour votre aide
Photo de AdrienVH Message publié le lundi 23 juin 2008 à 12 h 43 par AdrienVH. http://www.adrienvanhamme.fr/
Salut !

J'ai deja fait ca pour un site...

Voila ma fonction magique...

<?php function CompteReboursAvant($day, $month, $year) { // secondes entre le 1er janv. 1970 et la date du concert : $concert = (mktime(23,59,59,$month,$day,$year)); // secondes entre le 1er janv. 1970 et aujourd'hui : $date = time(void); // secondes entre aujourd'hui et le concert : $days = $concert - $date; // on divise pour avoir en jour : $days = $days / 86400; // on arrondi à l'entier : $days = (int)$days; // on teste $days : if($days >= 0 AND $days <=20) return $days; } echo CompteReboursAvant(29, 06, 2008);
A toi de manipuler tout ça pour que ça gère ton format de date en utilisant explode par exemple :)

$tonjour = '01-08-2008'; $tonjour = explode('-', $tonjour); echo CompteReboursAvant($tonjour[0], $tonjour[1], $tonjour[2]); ?>
Je sais pas si ca marche mais faut essayer ^^

Bon courage !

Adrien
Photo de sprayart Message publié le lundi 23 juin 2008 à 20 h 35 par sprayart.
Bonjour,
la fonction TO_DAYS(date) te donne le nombre de jours entre la date et la date 0 ,
cette fonction est utilisable dans le select ( si ta base est mysql ) et dans ce cas tu peux faire une soustraction entre tes deux dates et récupérer tes informations souhaitées. A+
Photo de AdrienVH Message publié le lundi 23 juin 2008 à 22 h 05 par AdrienVH. http://www.adrienvanhamme.fr/
Bonsoir, je reviens poster car ma solution était pleine de fautes !!

<?php function CompteReboursAvant($evenement) { $evenement = explode('-', $evenement); // secondes entre le 1er janv. 1970 et la date de l'evenement $evenement = (mktime(23,59,59,$evenement[1],$evenement[0],$evenement[2])); // secondes entre le 1er janv. 1970 et aujourd'hui $aujourdhui = time(void); // secondes entre aujourd'hui et l'evenement $secondes = $evenement - $aujourdhui; // on divise pour avoir en jour(s) $jours = $secondes / 86400; // on arrondi à l'entier inferieur $jours = floor($jours); // valeur de retour de la fonction return $jours; } $nbre_de_jours = CompteReboursAvant('23-07-2008'); echo 'Il reste '.$nbre_de_jours.' jour(s) avant le 23 juillet 2008'; ?>
Exemple :
http://www.adrienvanhamme.com/ALLHTML/Davredom/

Je connaissais pas la soluce de sprayart, je vais regarder ca en détail ^^

Adrien

liste des forums liste des discussions Participer à la discussion

Vous devez obligatoirement vous identifier en tant que membre pour participer à cette discussion.

ACCÉS COMMUNAUTÉ

Rejoignez ALL HTML

Publiez vos articles, actualités, communiqués ... Donnez votre avis, partagez votre réseau, rencontrez d'autres membres et participez à la vie de la communauté.

Les 5 dernières discussions