Foros del Web » Programando para Internet » PHP »

mktime/date me da resultados diferentes

Estas en el tema de mktime/date me da resultados diferentes en el foro de PHP en Foros del Web. Es curioso lo que me pasa y no lo entiendo. Para obtener la fecha actual uso el date. Pero al ver que me devolvía una ...
  #1 (permalink)  
Antiguo 25/01/2008, 11:01
 
Fecha de Ingreso: enero-2005
Ubicación: Barcelona
Mensajes: 384
Antigüedad: 19 años, 3 meses
Puntos: 0
mktime/date me da resultados diferentes

Es curioso lo que me pasa y no lo entiendo. Para obtener la fecha actual uso el date. Pero al ver que me devolvía una diferencia de 9 horas menos (seguramente porque el servidor donde está alojado está en California) he tenido que sumarle manualmente 9 horas combinando date con mktime. Exactamente, así:
Código PHP:
$ajuste 9// 9 horas de diferencia
$fecha date("Y-m-d H:i:s",mktime(date('H')+$ajuste,date('i'),date('s'),date('m'),date('d'),date('Y'))); 
Qué pasa, que accedo a la web desde mi casa y me da la hora correcta, pero si accedo desde mi trabajo a la misma web, me da una hora distinta!!

No entiendo porque es diferente. Alguien me saca de dudas porfa?
__________________
m!ketrix
CINE25 - Red Social de Cine
byinspiroh
  #2 (permalink)  
Antiguo 25/01/2008, 13:22
Avatar de agressor  
Fecha de Ingreso: noviembre-2007
Ubicación: Knocking the Death Door..
Mensajes: 368
Antigüedad: 16 años, 5 meses
Puntos: 3
Re: mktime/date me da resultados diferentes

Pues asi como me lo planteas puede ser que tengas configurado tu reloj en meridianos distintos tanto en tu casa como en tu trabajo o en mas de alguno..

Outloook cambia la hora de los correos por la del meridiano por eso te digo..

Prueba..

Salu2..!
__________________
Somos lo que nosotros queremos ni mas ni menos..
No hay dia mas perdido que aquel en que no hemos reido..
La vida es tal y como debe ser...
Nadie vivira por ti...
  #3 (permalink)  
Antiguo 25/01/2008, 15:39
 
Fecha de Ingreso: enero-2005
Ubicación: Barcelona
Mensajes: 384
Antigüedad: 19 años, 3 meses
Puntos: 0
Re: mktime/date me da resultados diferentes

Y no hay una solución que coja una hora estandar? Y yo siempre había pensado que la hora lo cogía del servidor, y no de la máquina del usuario.
__________________
m!ketrix
CINE25 - Red Social de Cine
byinspiroh
  #4 (permalink)  
Antiguo 25/01/2008, 15:47
Avatar de eddwinpaz  
Fecha de Ingreso: noviembre-2007
Ubicación: Merida , Venezuela
Mensajes: 1.066
Antigüedad: 16 años, 5 meses
Puntos: 25
Re: mktime/date me da resultados diferentes

bueno... en mi opinión me basaría en el stand ar GTM de tu host. como lo vienes haciendo. lo que me parece raro es por que cambia según la conexión. debería de estar en un solo GTM y no ser variable. déjame estudiar un poco el tema y te respondo luego.
  #5 (permalink)  
Antiguo 25/01/2008, 15:49
Avatar de eddwinpaz  
Fecha de Ingreso: noviembre-2007
Ubicación: Merida , Venezuela
Mensajes: 1.066
Antigüedad: 16 años, 5 meses
Puntos: 25
Re: mktime/date me da resultados diferentes

mmmm.. la hora en tu otra computadora (trabajo) no estará incorrecta.. ? por que me imagino que estas comparando la hora del servidor con el reloj de tu PC cierto?
  #6 (permalink)  
Antiguo 25/01/2008, 15:51
Avatar de eddwinpaz  
Fecha de Ingreso: noviembre-2007
Ubicación: Merida , Venezuela
Mensajes: 1.066
Antigüedad: 16 años, 5 meses
Puntos: 25
Re: mktime/date me da resultados diferentes

Cita:
Iniciado por miketrix_esp Ver Mensaje
Y no hay una solución que coja una hora estandar? Y yo siempre había pensado que la hora lo cogía del servidor, y no de la máquina del usuario.
Claro que existe.. prueba esto. lo saque de el sitio oficial de php (www.php.net)
http://ve.php.net/date

Código PHP:
<?php
// set the default timezone to use. Available since PHP 5.1
date_default_timezone_set('UTC');


// Prints something like: Monday
echo date("l");

// Prints something like: Monday 15th of August 2005 03:12:46 PM
echo date('l dS \of F Y h:i:s A');

// Prints: July 1, 2000 is on a Saturday
echo "July 1, 2000 is on a " date("l"mktime(000712000));

/* use the constants in the format parameter */
// prints something like: Mon, 15 Aug 2005 15:12:46 UTC
echo date(DATE_RFC822);

// prints something like: 2000-07-01T00:00:00+00:00
echo date(DATE_ATOMmktime(000712000));
?>
  #7 (permalink)  
Antiguo 26/01/2008, 05:48
 
Fecha de Ingreso: enero-2005
Ubicación: Barcelona
Mensajes: 384
Antigüedad: 19 años, 3 meses
Puntos: 0
Re: mktime/date me da resultados diferentes

eddwinpaz, por desgracia mi servidor no funciona bajo PHP5, lo que esa funcion no la puedo usar.

Por otro lado estoy haciendo pruebas con gmdate() y gmmktime(). Puede que sea mi solución, pero no lo puedo confirmar hasta el lunes, cuando lo vea en mi trabajo jeej.

Ya te comentaré. Gracias!
__________________
m!ketrix
CINE25 - Red Social de Cine
byinspiroh
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 15:06.