IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

différence entre deux champs datetime [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre habitué
    Inscrit en
    Novembre 2006
    Messages
    262
    Points
    163
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 262
    Points : 163
    Par défaut différence entre deux champs datetime
    Bonjour,

    je voudrais savoir s'il vous plait comment calculer en heure la différence entre deux champs DateTime, et arrondir le résultat a l'heur supérieure, en PHP/MySQL.

    Merci.

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Points
    44 155
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155

  3. #3
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 693
    Points
    20 247
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 693
    Points : 20 247
    Par défaut
    Avec DateTime::diff

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $dt1 = new datetime('2013-06-05 12:00:00');
    $dt2 = new datetime('2013-06-08 16:20:00');
     
    $diff = $dt1->diff($dt2);
     
    $total = $diff->days * 24 + $diff->h;

  4. #4
    Membre habitué
    Inscrit en
    Novembre 2006
    Messages
    262
    Points
    163
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 262
    Points : 163
    Par défaut
    bonjour, et Merci pour vos réponse,
    au fait, je voudrais récupérer la différence a partir d'une requête sql et transformer le résultat en heure , un truc dans le genre :
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    select  time_to_sec(timediff(dateDebut, dateFin))/60 from maTable where timediff(dateDebut, dateFin) is not null and val=valeur;

    Merci.

  5. #5
    Membre habitué
    Inscrit en
    Novembre 2006
    Messages
    262
    Points
    163
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 262
    Points : 163
    Par défaut
    bonsoir,

    j'ai essayé ça, ça a l'air de plutot bien marcher
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    $sql="SELECT (TIME_TO_SEC(TIMEDIFF(DateFin,DateDebut))/3600) as hour FROM parking 
            where timediff(DateFin, DateDebut) is not null and val='".$valeur."';" ;
     
    $result = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error()); 
     
      while ($data = mysql_fetch_array($result) )
    	{ 
    		$hour = $data['hour'];
    		$hour = ceil($hour);
     
    		echo'<tr><td><p>'.$hour.'</p></td>';
    Qu'en pensez vous ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 23/07/2014, 16h49
  2. Réponses: 7
    Dernier message: 29/11/2010, 13h26
  3. [Noobie]Calcul entre deux champs datetime
    Par bigltnt dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 30/07/2007, 11h37
  4. Réponses: 2
    Dernier message: 13/03/2007, 17h57
  5. [access] différence entre deux champs
    Par loutente dans le forum Langage SQL
    Réponses: 1
    Dernier message: 17/08/2005, 16h57

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo