Foros del Web » Programando para Internet » PHP »

Obtener cantidad

Estas en el tema de Obtener cantidad en el foro de PHP en Foros del Web. Estoy tratando de calcular la diferencia entre dos fechas (creo yo) pero me da error. El código es este: Código PHP:  $fechaactual  =  date ( ...
  #1 (permalink)  
Antiguo 03/05/2004, 17:45
Avatar de Reynier  
Fecha de Ingreso: noviembre-2002
Ubicación: Por ahí en algún sitio
Mensajes: 1.844
Antigüedad: 21 años, 5 meses
Puntos: 1
Obtener cantidad

Estoy tratando de calcular la diferencia entre dos fechas (creo yo) pero me da error. El código es este:
Código PHP:
 $fechaactual date("Y-m-d");
              
$sql "SELECT CURDATE() AS actual";
              
$ssql mysql_query($sql) or die("No se ha podido ejecutar la consulta ".$query.". MySQL ha retornado el siguiente error: ".mysql_error());
              
$ress mysql_fetch_assoc($ssql);
              
$query "SELECT nombre,fechadenacimiento,DATE_FORMAT('%Y %m %d',fechadenacimiento) AS cant FROM usuario ORDER BY idusuario";
              
$result mysql_query($query) or die("No se ha podido ejecutar la consulta ".$query.". MySQL ha retornado el siguiente error: ".mysql_error());
              
$resss mysql_fetch_assoc($result);
              
$newsql "SELECT DATEDIFF(".$resss['cant'].",".$ress['actual'].") AS anos";
              
$sqlquery mysql_query($newsql) or die("No se ha podido ejecutar la consulta ".$query.". MySQL ha retornado el siguiente error: ".mysql_error()); 
pero me da este error:
Cita:
No se ha podido ejecutar la consulta SELECT nombre,fechadenacimiento,DATE_FORMAT('%Y %m %d',fechadenacimiento) AS cant FROM usuario ORDER BY idusuario. MySQL ha retornado el siguiente error: 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-03) AS anos' at line 1
es que hago algo mal?
Salu2
__________________
Ing. Reynier Pérez Mira
  #2 (permalink)  
Antiguo 04/05/2004, 05:42
 
Fecha de Ingreso: septiembre-2003
Ubicación: Madrid
Mensajes: 53
Antigüedad: 20 años, 7 meses
Puntos: 1
voy a mirar una cosilla y te cuento

Última edición por bomaye; 04/05/2004 a las 05:44
  #3 (permalink)  
Antiguo 04/05/2004, 05:51
 
Fecha de Ingreso: septiembre-2003
Ubicación: Madrid
Mensajes: 53
Antigüedad: 20 años, 7 meses
Puntos: 1
Mira a ver si te sirve algo de las funciones de tratamiento de fechas que tengo echas, no puedo ayudarte a ponerlo dentro de una sentencia sql, pero si te vale esto...

function DiferenciaEnSegundos ($inicio,$fin) {
// Calcula la diferecia en segundos entre 2 fechas
list($fecha1,$hora1)=explode(" ",$inicio);
list($fecha2,$hora2)=explode(" ",$fin);

list($a1,$me1,$d1)=explode("-",$fecha1);
list($a2,$me2,$d2)=explode("-",$fecha2);

list($h1,$m1,$s1)=explode(":",$hora1);
list($h2,$m2,$s2)=explode(":",$hora2);

$utime1=mktime($h1,$m1,$s1,$me1,$d1,$a1);
$utime2=mktime($h2,$m2,$s2,$me2,$d2,$a2);

return ($utime2-$utime1);
}

//---------------------------------------------

function MinutosSegundos ($segundos) {
// Pasa un nunero de segundos al formato mm:ss
$seg=$segundos%60;
$min=(int)$segundos/60;
$cadena=sprintf("%02d:%02d",$min,$seg);
return $cadena;
}


//---------------------------------------------

function HorasMinutosSegundos ($segundos) {
// Pasa un numero de segundos al formato hh:mm:ss
$seg=$segundos%60;
$min=((int)$segundos/60)%60;
$hor=(int)$segundos/3600;
$cadena=sprintf("%02d:%02d:%02d",$hor,$min,$seg);
return $cadena;
}

//---------------------------------------------

function HoraASegundos ($hora) {
// Recibe una hora del dia y devuelve el numero de segundos pasados
list($s,$m,$h)=explode(":",$hora);
return $s+$m*60+$h*3600;
}
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:32.