PHP - temps entre 2 date : TIMEDIFF ?

Fermé
Anonyme - 10 juil. 2009 à 15:18
 mady - 20 déc. 2010 à 12:14
Bonjour,

Je cherche à récupuerer le temps entre deux dates.
Par ex : '26 June 2009 17:00:04' et '26 June 2009 16:59:46'

Pour cela j'essai d'utiliser la fonction sql TIMEDIFF, mais cela me retourne 00:00:00.

Mon code :

$sql_temps = mysql_query("SELECT TIMEDIFF('".$data_user_detail['date_fin']."','".$data_user_detail['date_first']."')");
$tempsTotal = mysql_fetch_array($sql_temps);

echo $tempsTotal[0];


Auriez vous une idée sur le problème ?

Merci d'avance
A voir également:

9 réponses

Archeus01 Messages postés 1567 Date d'inscription mercredi 3 octobre 2007 Statut Membre Dernière intervention 9 juin 2022 447
10 juil. 2009 à 16:26
"TIMEDIFF(expr,expr2)

TIMEDIFF() retourne la durée entre l'heure de début expr et l'heure de fin expr2. expr et expr2 sont des expressions de type TIME ou DATETIME, et doivent être de même type.

mysql> SELECT TIMEDIFF('2000:01:01 00:00:00', '2000:01:01 00:00:00.000001');
-> '-00:00:00.000001'
mysql> SELECT TIMEDIFF('1997-12-31 23:59:59.000001','1997-12-30 01:01:01.000002');
-> '46:58:57.999999'

TIMEDIFF() a été ajoutée en MySQL 4.1.1. "
extrait de http://dev.mysql.com/doc/refman/5.0/fr/date-and-time-functions.html

Tes dates ne sont tous simplement pas bien formaté. Une date écrit comme "26 June 2009 17:00:04" n'est pas du type DATETIME (cf :http://dev.mysql.com/doc/refman/5.0/fr/date-and-time-types.html)
2
merci c'est cool, timediff marche nikel sur mysql
0
Archeus01 Messages postés 1567 Date d'inscription mercredi 3 octobre 2007 Statut Membre Dernière intervention 9 juin 2022 447
10 juil. 2009 à 15:22
Bonjour,
tu peux convertir les deux premières dates en timestamp, faire la soustraction et reconvertir en qqchose de lisible?
1
Utilisateur anonyme
10 juil. 2009 à 15:23
Je ne connais pas cette fonction, mais ne devrais tu pas mettre :'26 June 2009 16:59:46' et '26 June 2009 17:00:04' au lieu de : 26 June 2009 17:00:04' et '26 June 2009 16:59:46'
???
0
Bonjour,

Je te propose d'aller regarder le manuel de PHP qui propose des fonctions pour les types dates :

- https://www.php.net/manual/fr/function.date.php
- https://www.php.net/manual/fr/function.mktime.php

En espèrant que ça t'aide.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Alors voila, j'ai essayer de convertir d'abords avec timestamp, mais ca ne focntionne pas.

Faut dire que ce que je rentre dans mon TIMEDIFF sont des temps au format datetime (généré en php).

Merci Thamior pour les liens.
0
du 04 juillet 2007 00h au 27 décembre 2011 8h
0
Je vais essayer ca!
-1
Lucas34, tu veux dire inverser les deux dates ?
non parceque sinon j'aurais un temps négatif, je fais une soustraction.
-1
Je vois...

Dans ce cas je vais essayer de m'y prendre autrement.

Merci pour les réponses.
-1