Upss. Chicos ayudenme ya no se que hacer para que esto me funcione. El código es este:
Código PHP:
function UsersBirthday(){
$fechaactual = date("Y-m-d");
$sql_query = "SELECT * FROM reynierpm_usuarios";
$result = mysql_query($sql_query) or die("No se ha podido ejecutar la consulta: ".$sql_query.". MySQL ha dicho: ".mysql_error());
$fetchrow = mysql_fetch_assoc($result);
if(mysql_num_rows($result)!=0){
$sql = "SELECT DATEDIFF(".$fechaactual.",".$fetchrow['fecha_nacimiento'].") as years";
$res = mysql_query($sql) or die("No se ha podido ejecutar la consulta: ".$sql.". MySQL ha dicho: ".mysql_error());
$fetch = mysql_fetch_assoc($res);
$bool = true;
}else{
if(($fechaactual = $fetchrow['fecha_nacimiento'])&&($bool)){
echo wordwrap("FELICIDADES ".$fetchrow['nombre'].". Hoy cumples ".$fetch['years']." años",20);
}else{
echo "No hay usuarios que cumplan año en esta fecha o no tenemos usuarios registrados";
}
}
}
La cosa es que quiero calcular la edad del usuario. Ya he corrido mi código paso a paso y todas las variables toman bien su valor. Me he chequeado el uso del DATEDIFF de MySQL y creo que esta bien. El error en cuestión es este:
Cita: No se ha podido ejecutar la consulta: SELECT DATEDIFF(2004-05-09,1980-09-05) as years. MySQL ha dicho: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '(2004-05-09,1980-09-05) as years' at line 1
si se dan cuenta estan las dos fechas así que no se porque no calcula. Ahhh mi versión de MySQL es 4.0.18 porque estuve leyendo que DATEDIFF se adiciono a partir de la versión 4.0.11
¿Qué estoy haciendo mal? porque ya me hecha humo la cabeza
Salu2