Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

ECART EN JOURS ENTRE 2 DATES


Information sur la source

Catégorie :Date / Heure Niveau : Débutant Date de création : 22/11/2002 Date de mise à jour : 22/11/2002 01:59:35 Vu : 8 207

Note :
7,25 / 10 - par 4 personnes
7,25 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (9)
Ajouter un commentaire et/ou une note

Description

Voila, j'en avait besoin je l'ai réalisé ce soir, le code vous permetras de calculer l ecart entre 2 dates en jours, par exemple :
Date 1 = 15 novembre 2002, Date 2 = 22 novembre 2002 retournera 7 jours
Pour moi je l'ai adapté avec ma bdd SQL cela me permet de réalisé un robot et supprimer les infos de plus de 30 jours, pour vous je l'ai adapté simplement à vous d'en faire les modification necessaire
 

Source

  • <?php
  • // recupere les informations de la date dinscription -> Version simple
  • // Ici la date est le 15 Novembre 2002 -> Possibilité d'ajouté des infos SQL
  • // ----------------------------------------------------------
  • $mois_inscription = "11"; //recupere le mois
  • $jours_inscription = "15"; //recupere le jours
  • $annee_inscription = "2002"; //recupere l annee
  • // ----------------------------------------------------------
  • // fin recuperation des informations de la date daujourdhui
  • // ---------------------------------------------------------------------------------------------------------
  • // ---------------------------------------------------------------------------------------------------------
  • // ---------------------------------------------------------------------------------------------------------
  • // ---------------------------------------------------------------------------------------------------------
  • // recupere les informations de la date daujourdhui
  • // ----------------------------------------------------------
  • $temps = time();
  • $date = getdate($temps);
  • $mois_verification = $date[mon]; //recupere le mois
  • $jours_verification = $date[mday]; //recupere le jours
  • $annee_verification = $date[year]; //recupere l annee
  • // ----------------------------------------------------------
  • // fin recuperation des informations de la date daujourdhui
  • $Date_inscription = mktime( 0, 0, 0, $mois_inscription, $jours_inscription, $annee_inscription ); // retourne le timestamp UNIX de la date
  • $Date_verification = mktime( 0, 0, 0, $mois_verification, $jours_verification, $annee_verification ); // retourne le timestamp UNIX de la date
  • // ----------------------------------------------------------
  • $ecartjour = ($Date_verification - $Date_inscription) / (60*60*24); // Calcul les secondes, minutes et heures donc lecart en jours entre les 2 dates
  • // ----------------------------------------------------------
  • print "Date d inscription : $jours_inscription - $mois_inscription - $annee_inscription"; // Retourne la date daujourdhui
  • print "<br>"; // retourne 1 retour a la ligne
  • print "Date d aujourdhui : $jours_verification - $mois_verification - $annee_verification"; // Retourne la date daujourdhui
  • print "<br>"; // retourne 1 retour a la ligne
  • print "$ecartjour Jours d'inscription"; // Retourne le nombre de jours entre les 2 dates
  • ?>
<?php
// recupere les informations de la date dinscription -> Version simple
// Ici la date est le 15 Novembre 2002 -> Possibilité d'ajouté des infos SQL
// ----------------------------------------------------------
$mois_inscription = "11"; //recupere le mois
$jours_inscription = "15"; //recupere le jours
$annee_inscription = "2002"; //recupere l annee
// ----------------------------------------------------------
// fin recuperation des informations de la date daujourdhui

// ---------------------------------------------------------------------------------------------------------
// ---------------------------------------------------------------------------------------------------------
// ---------------------------------------------------------------------------------------------------------
// ---------------------------------------------------------------------------------------------------------

// recupere les informations de la date daujourdhui
// ----------------------------------------------------------
$temps = time();
$date = getdate($temps);

$mois_verification = $date[mon]; //recupere le mois
$jours_verification = $date[mday]; //recupere le jours
$annee_verification = $date[year]; //recupere l annee
// ----------------------------------------------------------
// fin recuperation des informations de la date daujourdhui

$Date_inscription = mktime( 0, 0, 0, $mois_inscription, $jours_inscription, $annee_inscription ); // retourne le timestamp UNIX de la date
$Date_verification = mktime( 0, 0, 0, $mois_verification, $jours_verification, $annee_verification ); // retourne le timestamp UNIX de la date

// ----------------------------------------------------------

$ecartjour = ($Date_verification - $Date_inscription) / (60*60*24); // Calcul les secondes, minutes et heures donc lecart en jours entre les 2 dates

// ----------------------------------------------------------

print "Date d inscription : $jours_inscription - $mois_inscription - $annee_inscription"; // Retourne la date daujourdhui
print "<br>"; // retourne 1 retour a la ligne
print "Date d aujourdhui : $jours_verification - $mois_verification - $annee_verification"; // Retourne la date daujourdhui
print "<br>"; // retourne 1 retour a la ligne
print "$ecartjour Jours d'inscription"; // Retourne le nombre de jours entre les 2 dates
?>

Conclusion

En esperant que ce code vous sera utile :)
Visité mon site c'est pour les webmasters :)

++
 

Commentaires et avis

signaler à un administrateur
Commentaire de Jejedev le 22/11/2002 16:43:14

Et les commentaires ? :-D
http://www.jejedev.net

signaler à un administrateur
Commentaire de apz le 30/04/2003 23:19:43

c un script bien fait mais j'aimerias bien avoir ce meme script mais qui peut calculer cet ecart en annee, mois, semaines, jours, heures, minutes et secondes [:)]

signaler à un administrateur
Commentaire de fabbb le 08/11/2003 14:53:59

Nickelllll
un pti script bien sympa..
Merci Jejedev

signaler à un administrateur
Commentaire de OphidiaN le 27/03/2004 22:17:32

arf MERCI dire ke je me suis fait chier avec les annees bisextiles et les mois à 31 et 29 jours et toute cette ***** alors ke une soustraction de dates marche lol :))

signaler à un administrateur
Commentaire de Wiggy le 15/05/2004 19:30:36

ton robot tu le lances manuellement tous les jours ou alors c'est vraiment automatique ?

signaler à un administrateur
Commentaire de 3xodius55 le 17/02/2005 10:18:06

petit robot tout  nickel !!!!

seul petit bemol, (je sais, c'est dit dans le titre) le resultat est en jour, il aurait été sympathique de l'avoir en jour et mois.


$mois_verification = $date[mon]; //recupere le mois
$jours_verification = $date[mday]; //recupere le jours
$annee_verification = $date[year]; //recupere l annee

pour cette partie, pensez à mettre des '' autour de mon,mday et year.

Coté note je te mets un 8, parce qu'il est quand même bien pratique ce code!!!

signaler à un administrateur
Commentaire de maxelpiratos le 27/06/2005 23:07:45

bonjour,

  est ce que tu pourais donner un exemple en utilisant une date que tu recuperes d une bdd parce que je n y arrive pas :(

je n arrive pas a recuperer chaque partie de la date

merci d avance!!

signaler à un administrateur
Commentaire de cyberbenfr le 28/06/2005 11:58:04

Juste une petit truc, dans MySQL tu as la fonction toute faite :

SELECT DATE_DIFF( date1, date2 ) FROM table;

Voila :)

Bye

signaler à un administrateur
Commentaire de ufufy le 16/08/2006 09:57:12

Tu ne gère pas le décalage qui peut etre causé par les changements d'heure (été/hiver). Pour cela il faut faire un round de $ecartjour. Sans cela tu rique de te retrouver avec des truc du type 1, 042 jour... (c'est à dire un jour et une heure)

Ajouter un commentaire



Nos sponsors

Sondage...

CalendriCode

Septembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
2930     

Consulter la suite du CalendriCode



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,27 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.