PHP - Sacar la edad por medio de la fecha

 
Vista:
Imágen de perfil de nayely

Sacar la edad por medio de la fecha

Publicado por nayely (8 intervenciones) el 24/11/2016 09:16:50
Hola buenas noches, me gustaría convertir esta función:

1
2
3
SELECT `paciente`.`p_nombre`, YEAR(CURDATE())-YEAR(`paciente`.`p_fecha_nac`) +
	IF(DATE_FORMAT(CURDATE(),'%m-%d') > DATE_FORMAT(`paciente`.`p_fecha_nac`,'%m-%d'), 0, -1) AS `EDAD_ACTUAL`
FROM `paciente` WHERE `paciente`.`p_nombre`='Luisas' and `p_apellido_pat`= 'Ramirez' and `p_apellido_mat`= 'Perez';

en una función de codeigniter, tengo esto, pero me manda error en el IF

1
2
3
4
5
function Calcula_edad($nombre,$ap_pat,$ap_mat){
	$cal_edad = $this->db->select(`paciente`.`p_nombre`, YEAR(CURDATE())-YEAR(`paciente`.`p_fecha_nac`) +
	IF(DATE_FORMAT(CURDATE(),'%m-%d') > DATE_FORMAT(`paciente`.`p_fecha_nac`,'%m-%d'), 0, -1)
    AS `EDAD_ACTUAL`)->from('paciente p')->where('p.p_nombre',$nombre)->where('p_apellido_pat',$ap_pat)->where('p_apellido_mat',$ap_mat)->get()->result();
}

Por favor, si me pudieran ayudar, se los agradecería enormemente.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de kip
Val: 2.325
Plata
Ha disminuido 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

Sacar la edad por medio de la fecha

Publicado por kip (877 intervenciones) el 25/11/2016 03:32:21
Hola, en lugar de usar el query builder que proporciona CI, intentalo colocando la query directamente. algo asi:

1
2
3
4
5
6
7
function Calcula_edad($nombre, $ap_pat, $ap_mat){
	$sql = "SELECT `paciente`.`p_nombre`, YEAR(CURDATE())-YEAR(`paciente`.`p_fecha_nac`) +
		IF(DATE_FORMAT(CURDATE(),'%m-%d') > DATE_FORMAT(`paciente`.`p_fecha_nac`,'%m-%d'), 0, -1) AS `EDAD_ACTUAL`
	FROM `paciente` WHERE `paciente`.`p_nombre`= ? and `p_apellido_pat`= ? and `p_apellido_mat`= ? ";
	$query = $this->db->query($sql, array($nombre, $ap_pat, $ap_mat));
	return $query->result();
}

Prueba y nos cuentas.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Nayely

Sacar la edad por medio de la fecha

Publicado por Nayely (8 intervenciones) el 01/12/2016 21:41:27
Un poco tarde pero muchas gracias si me sirvió mucho
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar