Ver Mensaje Individual
  #9 (permalink)  
Antiguo 09/08/2004, 20:10
Avatar de Escoffie
Escoffie
 
Fecha de Ingreso: abril-2003
Ubicación: Mérida, Yucatán
Mensajes: 242
Antigüedad: 21 años, 10 meses
Puntos: 9
Hola,

Probé la función de Maycol y me funcionó muy bien y a la primera, sin embargo, hoy 9 de agosto de 2004, puse un registro fechado el 17 de Marzo de 1953 (1953-03-17 en un campo date de mysql) y el fulano debiera tener 51 años. No obstante, marca 34.

Cualquier registro anterior a 1970 que ponga seguirá teniendo 34 (ojalá así pasara en la vida real :D)

¿Alguna idea de qué pasa?

El código es el siguiente:

Código PHP:
//Para la función

function edad($stamp){ 
    
$stamp strtotime($stamp);
    
$c date("Y",$stamp); 
    
$b date("m",$stamp); 
    
$a date("d",$stamp); 
    
    
$anos date("Y")-$c
    
    if(
date("m")-$b 0){ 
    }elseif(
date("m")-$b == 0){ 
        if(
date("d")-$a 0){ 
            
$anos $anos-1
        } 
    }else{ 
        
$anos $anos-1
    } 
    return 
$anos



//El valor en la DB está en formato YYYY-MM-DD
//Pero como le añadí a la función la línea: $stamp = strtotime($stamp); 
//le pasa el valor en el formato correcto

//la uso así:
fecha($recordset['fecha']); 
Cualquier ayuda se agradece.

Saludos!

PD. Según www.php.net/strtotime están soportadas las fechas desde 13 de dic. de 1901 hasta el 19 de enero de 2038... así que por ahí no debe ser la cosa