PHP : problème sur opération avec des dates

NBO -  
 NBO -
Bonjour à tous,
J'ai un soucis lorsque je veux faire des opérations avec les dates, je fais :

$date=date("d/m/y", strtotime($row['dateenreg']));
$datejour = date("d/m/y");

$diff = $datejour - $date

et diff ne me donne pas la vrai différence en jour, quelqun aurait une idée, ou verrait mon erreur.

Merci à tous

4 réponses

  1. NBO
     
    Avec toutes vos infos j'ai fais un truc du style :

    $datej = date("d", strtotime($row['dateenreg']));
    $datem = date("m", strtotime($row['dateenreg']));
    $datey = date("y", strtotime($row['dateenreg']));
    $debut = gmmktime ( 0, 0, 0, $datem, $datej, $datey );
    $now = time();

    $diff = $now - $debut;

    Et ça marche!
    Merci à tous.
    NBO
    1
  2. primal Messages postés 495 Date d'inscription   Statut Membre 97
     
    Salut,

    truc tout bête (on ne sait jamais): la date est antérieure ou pas à la date actuelle? Sinon c'est:

    $diff = $date - $datejour

    ++
    0
    1. kalamit
       
      Hum...
      12/03/2002 - 10/03/2002 = 2 ????

      Je crois pas, non...

      Kalamit,
      La nuit, tous les chats sont gris. Pas les poulets ! :@)
      0
      1. primal Messages postés 495 Date d'inscription   Statut Membre 97 > kalamit
         
        peu probable mais comme je n'ai jamais essayé...
        0
      2. kalamit > primal Messages postés 495 Date d'inscription   Statut Membre
         
        C'est meme sur que c'est non ! Arf ! Ca serait une héresie mathematique !

        Kalamit,
        La nuit, tous les chats sont gris. Pas les poulets ! :@)
        0
  3. kalamit
     
    Ah bah ouais, tu m'etonnes...
    Deux solutions: soit tu reprends le 'd' et tu fais la difference, soit tu convertis ca en nb de jours depuis 1970 (timestamp UNIX je crois) et tu compares.
    La seconde solution est mieux... :-)

    Kalamit,
    La nuit, tous les chats sont gris. Pas les poulets ! :@)
    0
    1. primal Messages postés 495 Date d'inscription   Statut Membre 97
       
      soit tu convertis ca en nb de jours depuis 1970 (timestamp UNIX je crois) et tu compares. : pourquoi 1970 et pas sa premiere date? la fonction marche à partir de cette date?Je ne comprend pas.
      (je risque d'en avoir besoin moi aussi,autant se renseigner maintenant)
      0