Foros del Web » Programando para Internet » PHP »

Comparar hora almacenada en bd contra 60 minutos

Estas en el tema de Comparar hora almacenada en bd contra 60 minutos en el foro de PHP en Foros del Web. Hola a todos, tengo almacenado en un campo DATETIME la hora de la que se mandó un mensaje. Necesito que se pueda enviar cierta cantidad ...
  #1 (permalink)  
Antiguo 27/07/2011, 22:07
 
Fecha de Ingreso: octubre-2009
Mensajes: 107
Antigüedad: 15 años, 1 mes
Puntos: 2
Comparar hora almacenada en bd contra 60 minutos

Hola a todos, tengo almacenado en un campo DATETIME la hora de la que se mandó un mensaje. Necesito que se pueda enviar cierta cantidad por hora. Con lo almacenado le hago esto para que me de la diferencia entre lo de la base de datos y la hora actual:
Código:
SELECT DATEDIFF('NOW()','$fecha') from mensajes
.
Esto me devuelve algo en el formato HH:MM:SS, supongamos que lo guardo en $diferencia.
Lo que yo quiero es poder saber si ese tiempo que tengo en $diferencia es menor a 60 minutos (1 hora), por lo que en tal caso quiere decir que no ha pasado una hora desde que se envió el último mensaje.
He hecho algo como:
Código PHP:
if($diferencia "00:60:00"){
    echo 
"no se puede seguir";
}else{echo 
"se puede seguir enviando mensajes porque ya pasó una hora desde el último envio";} 
Esto del "00:60:00" no me lo entiende aparentemente. Busqué un montón sobre esto y no encuentro nada que solucione. Parece una comparación tan sencilla y sin embargo sigo en lo mismo
Agradezco desde ya su ayuda!
Saludos!
  #2 (permalink)  
Antiguo 27/07/2011, 22:19
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: Comparar hora almacenada en bd contra 60 minutos

PHP no compara fechas como strings, para poder hacer comparaciones de ese tipo debes usar las funciones de fecha y hora.

Te invito a consulta el manual:
http://www.php.net/manual/es/book.datetime.php
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 29/07/2011, 22:07
 
Fecha de Ingreso: octubre-2009
Mensajes: 107
Antigüedad: 15 años, 1 mes
Puntos: 2
Respuesta: Comparar hora almacenada en bd contra 60 minutos

Cita:
Iniciado por pateketrueke Ver Mensaje
PHP no compara fechas como strings, para poder hacer comparaciones de ese tipo debes usar las funciones de fecha y hora.

Te invito a consulta el manual:
http://www.php.net/manual/es/book.datetime.php
Hola pateketrueke, muchas gracias por la pronta respuesta! Resolví mi tema con
Código:
$diferencia=mysql_query("SELECT TIMEDIFF('$fecha1','$fecha2') from mensajes");
Que me dió la diferencia de tiempos entre las fechas que le pasé.

Luego con
Código:
$var=mysql_query("SELECT TIME_TO_SEC('$diferencia]')");
obtuve ese tiempo en segundos y lo comparo con 1 hora en segundos (3600 seg) y así logro lo que quería.

No se si será medio rebuscado o no, pero he probado varios script que encontré, varias funciones, etc y ninguna me mostraba los resultados exactos que necesitaba.

Bueno, quizás a alguien más le sirva también.
Saludos!

Etiquetas: bd, contra, minutos, almacenadas
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 16:24.