calculer le nombre de mois e ntre 2 dates

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : calculer le nombre de mois e ntre 2 dates

Re: calculer le nombre de mois e ntre 2 dates

par xzena » 07 juin 2012, 18:48

si tu as une date dans une table des visites :
select year(taDate), month(taDate), count(*) from taTableVisite where taDate betwen '2012-01-01' and '2012-05-01' group by year(taDate), month(taDate)


Ca peux répondre à ta question... mais attention au format de la date pour la sélection.
Merci beaucoup,elle réponds bien :)

Re: calculer le nombre de mois e ntre 2 dates

par Mazarini » 07 juin 2012, 16:27

si tu as une date dans une table des visites :
select year(taDate), month(taDate), count(*) from taTableVisite where taDate betwen '2012-01-01' and '2012-05-01' group by year(taDate), month(taDate)


Ca peux répondre à ta question... mais attention au format de la date pour la sélection.

Re: calculer le nombre de mois e ntre 2 dates

par xTG » 07 juin 2012, 15:21

Il y a quoi dans $date1 et $date2 ?

Re: calculer le nombre de mois e ntre 2 dates

par xzena » 07 juin 2012, 14:52

lol mais j'ai déjà indiqué que ce que j'ai testé ça marche pas!
c'est pas grave je recopie :
function datediff($a,$b){
$date1 = intval(substr($a,0,4))*12+intval(substr($a,4,2));
$date2 = intval(substr($b,0,4))*12+intval(substr($b,4,2));
return $date1-$date2;
//echo datediff; 
}
echo datediff("$date1","$date2");

Re: calculer le nombre de mois e ntre 2 dates

par xTG » 07 juin 2012, 14:20

Tu n'es pas capable de tester et de vérifier que le résultat est correct par toi même ?

Re: calculer le nombre de mois e ntre 2 dates

par xzena » 07 juin 2012, 13:08

merci pour vos feedback,
mais j'ai bien aimé que quelqu’un peut me corriger ou me confirmer si la méthode adaptée en haut si'elle est ok ou non!
sinon j'ai perdu le fil vraiment :/

Re: calculer le nombre de mois e ntre 2 dates

par moogli » 07 juin 2012, 12:07

salut,

pour en revenir au sujet de départ Datetime::Diff

qui retourne un DateInterval qui te fournira la valeur que tu souhaite.

le tout en 3 lignes.

mais nécessite PHP > 5.3

@+

Re: calculer le nombre de mois e ntre 2 dates

par xTG » 07 juin 2012, 11:45

Explication de ton problème :
$test = 'world';
echo 'hello $test'; // hello $test
echo "hello $test"; // hello world
echo 'hello '. $test; // hello world
Pour des exemples de strtotime() il y en a une flopée dans la documentation de la fonction. :)

Re: calculer le nombre de mois e ntre 2 dates

par xzena » 07 juin 2012, 11:43

Regardes du côté de la fonction strtotime().
Son premier argument est très intéressant pour ce que tu veux.
Cela te permettra d'incrémenter un timestamp par mois.
Ensuite une petite boucle pour arriver jusqu'à la date voulue et tu auras eu une itération par mois. ;)
sorry décalage ..
pour la fonction strtotime() y a t il un exemple simple pour comprendre d'abord ?
sinon ce que j'ai proposé en haut ça va en mon cas ?

Re: calculer le nombre de mois e ntre 2 dates

par xzena » 07 juin 2012, 11:40

re!
bon j'ai trouvé une fonction qui marche bien avec des valeurs bidon:
function datediff($a,$b){
$date1 = intval(substr($a,0,4))*12+intval(substr($a,4,2));
$date2 = intval(substr($b,0,4))*12+intval(substr($b,4,2));
return $date1-$date2;
}
datediff('200402','200312');
Mais quand j'ai essayé d'exploiter ça en utilisant mes vars :$date_debut et $date_fin ça marché pas!
j'ai remplacé les deux derniers lignes par :
return $date_fin-$date_debut;
}
datediff('$date_debut','$date_fin'); 
j’espère quelqu’un peut me corriger ça

Re: calculer le nombre de mois e ntre 2 dates

par xTG » 07 juin 2012, 11:35

Regardes du côté de la fonction strtotime().
Son premier argument est très intéressant pour ce que tu veux.
Cela te permettra d'incrémenter un timestamp par mois.
Ensuite une petite boucle pour arriver jusqu'à la date voulue et tu auras eu une itération par mois. ;)

calculer le nombre de mois e ntre 2 dates

par xzena » 07 juin 2012, 11:06

salut,
je retourne vers vous pour un problème qu'après des recherches j'ai pas encore réussi à résoudre.
Donc je cherche une fonction s'il existe sur PHP pour calculer ENTRE deux dates sélectionnées le nombre de visite pour chaque MOIS !
par exemple:DU 2012-01-01 AU 2012-05-01,comment calculer et savoir les mois existants entre ces deux dates?
j'ai pensé à http://www.timestamp.fr/ mais j'ai trouvé que c'est pas le cas!

merci d'avance pour toute idée qui peut me guider à résoudre ce problème.