Foros del Web » Programación para mayores de 30 ;) » Programación General »

problemas con la hora GMT-5

Estas en el tema de problemas con la hora GMT-5 en el foro de Programación General en Foros del Web. hola a todos tengo un programita en perl en un servidor gratuito pero tengo un problemita que no he podido resolver, pero si algun experto ...
  #1 (permalink)  
Antiguo 02/03/2009, 12:36
 
Fecha de Ingreso: octubre-2007
Mensajes: 56
Antigüedad: 16 años, 6 meses
Puntos: 0
problemas con la hora GMT-5

hola a todos
tengo un programita en perl en un servidor gratuito pero tengo un problemita que no he podido resolver, pero si algun experto me puede enseñar o mostrar como solucionarlo le estaria muy agradecido:

resulta que yo estoy en bogota colombia y la hora GMT es -5 o sea que esta atrazada cinco horas,
en el script tengo que tomar la fecha y hora y tengo el siguiente codigo

Código:
($seg,$min,$hora,$dia,$mes,$ano,$wday,$yday)=localtime(time);
$mes++;
$ano+=1900;   
$fec=$dia."/".$mes."/".$ano;
$hor=$hora.":".$min.":".$seg;
pero desde las 7pm de la tarde me asume como si fuera el otro dia y para mi es claro que toma la hora del servidor y no la hora de bogota (gmt-5) que es la hora que realmente necesito.

si alguien usa el script a las 8pm bogota o en colombia en general , la fecha que guarda es la del dia siguiente y la hora seria 1am.

Creo que me entendieron y les agradeceria mucho cualquier tipo de colaboracion para guardar en mi archivo LOG la hora pero BOGOTA

muchisisisimas gracias

Última edición por charlygarcia; 02/03/2009 a las 12:38 Razón: ortografia error
  #2 (permalink)  
Antiguo 03/03/2009, 05:48
Avatar de monoswim
$moderador{'Esteban'}
 
Fecha de Ingreso: febrero-2002
Ubicación: Buenos Aires - Argentina
Mensajes: 8.762
Antigüedad: 22 años, 3 meses
Puntos: 90
Respuesta: problemas con la hora GMT-5

time devuelve la cantidad de segundos desde 01/01/1970, si le restas la cantidad de segundos que son 7 horas te dará el tiempo de tu lugar

my $now = time();

my $colombia = $now - (60 * 60 * 7);

($seg,$min,$hora,$dia,$mes,$ano,$wday,$yday)=local time($colombia);

Probalo y decime si va bien...

Saludos
__________________
Esteban Quintana
  #3 (permalink)  
Antiguo 03/03/2009, 09:05
 
Fecha de Ingreso: octubre-2007
Mensajes: 56
Antigüedad: 16 años, 6 meses
Puntos: 0
Respuesta: problemas con la hora GMT-5

Monoswim, estoy muy agradecido contigo por que realmente me has ayudado muchas veces, la solucion que me acabas de dar, funciona exactamente como la necesitaba.

Si quieres la puedes ver tu mismo en

http://intranetmz.tripod.com/cgi-bin....cgi?c=1&m=328

Funciona perfecto, ahora debo implementar lo mismo en otras categorias,
muchas gracias nuevamente

Carlos A
  #4 (permalink)  
Antiguo 06/03/2009, 06:57
Colaborador
 
Fecha de Ingreso: mayo-2006
Ubicación: Valladolid
Mensajes: 524
Antigüedad: 18 años
Puntos: 11
Respuesta: problemas con la hora GMT-5

Si el programa se ejecuta en el ordenador donde quieres obtener la hora de Colombia, y localtime() no te la devuelve de forma correcta, es que está mal configurada la zona horaria en ese ordenador.

Con este programa se puede ver si hay o no diferencias:
Código PHP:
#!/usr/bin/perl -l
print scalar gmtime();
print 
scalar localtime(); 
Si sale la misma fecha, es que está mal.
__________________
JF^D Perl Programming en Español
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 23:12.