Foros del Web » Programando para Internet » PHP »

Hora y Fecha en web

Estas en el tema de Hora y Fecha en web en el foro de PHP en Foros del Web. Hola, tengo una duda la cual es la siguiente: Supongamos que hay que desarrollar un sitio web en la cual hay que registrar la Fecha ...
  #1 (permalink)  
Antiguo 29/05/2014, 13:45
Avatar de juan_14nob  
Fecha de Ingreso: abril-2010
Mensajes: 552
Antigüedad: 14 años
Puntos: 6
Hora y Fecha en web

Hola, tengo una duda la cual es la siguiente:

Supongamos que hay que desarrollar un sitio web en la cual hay que registrar la Fecha y hora en la cual los usuarios hacen login..

Como hacemos para que la hora sea "Universal" para todos, ya se un usuario que ingreso a las 16:00hs desde china y otro que ingreso a las 18hs desde Argentina.

Se me ocurre que podría resolverse, transformando la fecha y hora en una String Timestamp en la base de datos y luego transformar ese Timestamp, pero. ¿Es lo correcto eso ?

Otro ejemplo de lo que yo quiero hacer es el siguiente:


Supongamos que 2 usuarios de Facebook son amigos, y uno esta en el continente de America, y el otro en Asia.

¿Que info es la que guardaria Facebook en su base de datos para que esos 2 usuarios al hacer un post la diferencia horaria sea la correcta para ambos ?


Saludos!
  #2 (permalink)  
Antiguo 29/05/2014, 13:53
 
Fecha de Ingreso: noviembre-2012
Mensajes: 76
Antigüedad: 11 años, 5 meses
Puntos: 3
Respuesta: Hora y Fecha en web

yo creo que deberías usar la hora mundial (UTC o Tiempo Universal Coordinado)

prueba con esto:
Código PHP:
date_default_timezone_set("UTC");
echo 
date("Y-m-d H:i:s"time()); 
Saludos
  #3 (permalink)  
Antiguo 29/05/2014, 14:13
Avatar de juan_14nob  
Fecha de Ingreso: abril-2010
Mensajes: 552
Antigüedad: 14 años
Puntos: 6
Respuesta: Hora y Fecha en web

Cita:
Iniciado por cybervandal Ver Mensaje
yo creo que deberías usar la hora mundial (UTC o Tiempo Universal Coordinado)

prueba con esto:
Código PHP:
date_default_timezone_set("UTC");
echo 
date("Y-m-d H:i:s"time()); 
Saludos
Esta bien, pero como transformo la fecha y hora para un usuario que esta en china cuando quiera mostrarla?
  #4 (permalink)  
Antiguo 29/05/2014, 14:17
 
Fecha de Ingreso: mayo-2006
Ubicación: Bogotá
Mensajes: 2.061
Antigüedad: 18 años
Puntos: 50
Respuesta: Hora y Fecha en web

se que existen formas a través de la IP de establecer la zona horaria del usuario y asi poder generar la hora con PHP... otra opción es que la genere de lado del servidor con javascript aunque eso dependería de que el reloj del cliente este bien configurado.
  #5 (permalink)  
Antiguo 29/05/2014, 14:22
 
Fecha de Ingreso: noviembre-2012
Mensajes: 76
Antigüedad: 11 años, 5 meses
Puntos: 3
Respuesta: Hora y Fecha en web

Cita:
Iniciado por juan_14nob Ver Mensaje
Esta bien, pero como transformo la fecha y hora para un usuario que esta en china cuando quiera mostrarla?
No necesitas transformar... es universal
quiere decir que por ejemplo tu hora en España son las 15.00 pero en la hora UTM son las 12:00 (me he inventado la diferencia horaria, solo es un ejemplo)
en china quizás son las 21:00 pero son también las 12:00 utm
entiendes?
  #6 (permalink)  
Antiguo 29/05/2014, 14:24
Avatar de juan_14nob  
Fecha de Ingreso: abril-2010
Mensajes: 552
Antigüedad: 14 años
Puntos: 6
Respuesta: Hora y Fecha en web

Cita:
Iniciado por cybervandal Ver Mensaje
yo creo que deberías usar la hora mundial (UTC o Tiempo Universal Coordinado)

prueba con esto:
Código PHP:
date_default_timezone_set("UTC");
echo 
date("Y-m-d H:i:s"time()); 
Saludos
Cita:
Iniciado por helacer Ver Mensaje
se que existen formas a través de la IP de establecer la zona horaria del usuario y asi poder generar la hora con PHP... otra opción es que la genere de lado del servidor con javascript aunque eso dependería de que el reloj del cliente este bien configurado.
Hola , no lo veo conveniente, porque si es un web services? (donde no necesariamente debe ser un browser y no puedo obtener la fecha del cliente como hago)

Para mi caso, van a ser celulares lo que van a utilizar las peticiones del Web services...
  #7 (permalink)  
Antiguo 29/05/2014, 14:27
 
Fecha de Ingreso: mayo-2006
Ubicación: Bogotá
Mensajes: 2.061
Antigüedad: 18 años
Puntos: 50
Respuesta: Hora y Fecha en web

OK entonces lo correcto es la opción dada por Juan o sino ponerse a identificar zona horaria a través de IP y dependiendo eso generar hora
  #8 (permalink)  
Antiguo 29/05/2014, 14:42
Avatar de juan_14nob  
Fecha de Ingreso: abril-2010
Mensajes: 552
Antigüedad: 14 años
Puntos: 6
Respuesta: Hora y Fecha en web

Cita:
Iniciado por cybervandal Ver Mensaje
No necesitas transformar... es universal
quiere decir que por ejemplo tu hora en España son las 15.00 pero en la hora UTM son las 12:00 (me he inventado la diferencia horaria, solo es un ejemplo)
en china quizás son las 21:00 pero son también las 12:00 utm
entiendes?
Cybervandal

Entiendo lo que me estas diciendo, pero no del todo...

porque si yo hago esto:

Código PHP:
Ver original
  1. echo date("Y-m-d H:i:s", time());

En mi caso me muestra : 2014-05-29 20:38:33 Lo cual es correcto porque es el "UTM)

En mi caso que estoy en Argentina sin el formato UTM debería decirme que son las: 2014-05-29 17:38:33 (La hora REAL)

Ahora bien, si yo hubiese guardado la fecha y hora en formato UTM, y luego quiero ver ese valor, no me va a mostrar la hora a la cual yo estoy en este preciso momento..

Yo deberia ver: 2014-05-29 17:38:33 pero en realidad estaria guardado la otra.

No se si me explico... Se puede guardar el formato UTM y luego "transformarla" al horario del cliente ?

Saludos!
  #9 (permalink)  
Antiguo 29/05/2014, 15:22
 
Fecha de Ingreso: noviembre-2012
Mensajes: 76
Antigüedad: 11 años, 5 meses
Puntos: 3
Respuesta: Hora y Fecha en web

Código:
No se si me explico... Se puede guardar el formato UTM y luego "transformarla" al horario del cliente ?
No sé... las horas GMT también son universales, sabiendo el país del usuario puedes saber que GMT aplicarle.
Si la hora GMT son las 12:00 y el usuario es argentino hay que restarle 3 por lo que mostraría las 09:00 mientras que si fuera español habría que sumarle 1 por lo que la hora que mostraría serian las 13:00

Quizas encuentres algún script para esto, sino por ejempolo puedes hacerte un array con los países y sus correspondientes GMT, aunque si no recuerdo mal hay 200 o 300 países distintos.
  #10 (permalink)  
Antiguo 30/05/2014, 10:23
lolainas
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Hora y Fecha en web

Si va a ser una web, fíjate que forosdelweb mismo, nos pide nuestra zona horaria: Opciones de Hora y Fecha

Y si como dices se trata de un web service, pide el header Date

Espero te sirva.

Etiquetas: fecha, usuarios
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 16:16.