Retrouver l'age à partir d'une date? - PHP - Programmation
Marsh Posté le 13-09-2004 à 10:16:21
ben oui mais
Citation : Warning: date(): Windows does not support dates prior to midnight (00:00:00), January 1, 1970 in |
et j'ai pas mal de date de naissance < 1970
Marsh Posté le 13-09-2004 à 10:26:17
je sais je sais
mais je doit le combiner avec date nan?
j'ai fait
Code :
|
mon MKtime est bon, sauf pour les valeur < 1970 egalement
Warning: mktime(): Windows does not support negative values for this function in c:\work\mylove\pages\index.php on line 697
Marsh Posté le 13-09-2004 à 10:33:52
chacal_one333 a écrit : je sais je sais
|
fais un "+100" sur les années, et basta!
Marsh Posté le 13-09-2004 à 10:35:12
"Therefore the range of valid years includes only 1970 through 2038."
date_naiss = 1960
+100 = 2060
BANG
Marsh Posté le 13-09-2004 à 10:39:37
chacal_one333 a écrit : "Therefore the range of valid years includes only 1970 through 2038." |
Putain c'est short...
Fais tes calculs à la main, c'est trop naze...
Marsh Posté le 13-09-2004 à 10:43:57
pfff moi pareil et pourtant
Citation : year peut prendre deux ou quatre chiffres, avec les valeurs entre 0-69 qui correspondent à 2000-2069 et 70-99 à 1970-1999 (sur les systèmes où time_t sont sur des entiers 32bit signés, comme cela se fait le plus souvent de nos jours, year est valide dans l'intervalle 1901 et 2038. |
Marsh Posté le 13-09-2004 à 10:45:24
wai ben linux rulaiz sur ce coup
a moins d'avoir des personnes née avant 1901, ca dont je doute
Marsh Posté le 13-09-2004 à 14:18:23
Utilises les fonctions de calendrier pour manipuler des jours juliens. Ensuite il reste plus qu'à faire les calculs, vu qu'il n'y a pas de fonctions pour ça :
Exemple http://www.surleau.com/test/age.php
Marsh Posté le 13-09-2004 à 14:56:10
Bien sûr y'a beaucoup plus simple
C'était juste pour montrer l'existance des fonctions de calendrier...
Marsh Posté le 13-09-2004 à 14:57:41
ah ben si ya plus simple jveut bien hein
suis pas encore sous nunux, donc en attendant si tu a une fonction magique que je connait pas et qui se limite pas à 1970...
Marsh Posté le 13-09-2004 à 15:07:41
Ben comme le timestamp est limité, on ne peux pas l'utiliser.
Donc on a :
$JN = Jour de naissance,
$MN = Mois de naissance,
$AN = Année de naissance,
$JA = Jour d'aujourd'hui,
$MA = Mois d'aujourd'hui,
$AA = Année d'aujourd'hui.
Donc $Age = $AA-$AN.
// 1 an de moins si l'anniversaire n'est pas passé :
Si( $AA > $AN et ( $MA < $MN ou ( $MA == $MN et $JA < $JN ) ) )
{
$Age--;
}
Marsh Posté le 13-09-2004 à 15:09:00
ah bha oui forcement comme ca, c'est tout con.
Je voyait pas comment resoudre le probleme de l'année pas passé, mais je voit qu'avec les bonnes vieilles methode bien crade c'est faisable
Marsh Posté le 13-09-2004 à 15:15:10
http://www.surleau.com/test/age1.php
Marsh Posté le 13-09-2004 à 18:19:51
c competement hs
mis tu fe commetn pour afficher avec cette belle colo syntaxique
Marsh Posté le 13-09-2004 à 22:36:34
Ben mets tes lunettes et regardes la dernière instruction
Marsh Posté le 13-09-2004 à 09:49:40
j'ai du mal a trouver comment retrouver un age à partir d'une date de naissance (Y-m-d)
j'ai fait une soustraction de date
genre
ou $sear->date_naiss = "1984-05-05"
ca me donne bien 20 ans.
Le probleme c'est qu'en placant la date du serveur sur "2004-05-04" ca me sort toujours 20 ans
comment je pourrait faire?