Foros del Web » Programando para Internet » PHP »

Cambiar Fecha y Hora del Servidor

Estas en el tema de Cambiar Fecha y Hora del Servidor en el foro de PHP en Foros del Web. Hola.. Hoy estoy algo tapado . Es posible cambiar la fecha y Hora del servidor donde este alojado el script. Es posible???? . Por favor ...
  #1 (permalink)  
Antiguo 15/06/2004, 18:52
Avatar de TheRock  
Fecha de Ingreso: mayo-2002
Ubicación: Sucre - Bolivia
Mensajes: 189
Antigüedad: 15 años, 6 meses
Puntos: 0
Información Cambiar Fecha y Hora del Servidor

Hola..

Hoy estoy algo tapado .

Es posible cambiar la fecha y Hora del servidor donde este alojado el script.

Es posible???? .

Por favor diganme que si...... no pretendo hacer nada malo, tan solo actualizar regularmente en una red que tengo entre 2 máquinas

Gracias [email protected]
  #2 (permalink)  
Antiguo 15/06/2004, 20:30
Avatar de xcorpion  
Fecha de Ingreso: octubre-2003
Ubicación: m é x i c o
Mensajes: 676
Antigüedad: 14 años, 2 meses
Puntos: 4
pues si estas en windows puedes encapsular el comando de msdos date entre comillas inversas para ejecutar dicha linea, esto podria quedar asi:
$cmd = `date 15-01-04`;
esto define la fecha actual como 15 de enero del 2004, claro que deveras tener permiso para esto
  #3 (permalink)  
Antiguo 16/06/2004, 08:31
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Para hacer taréas de "sincronización" tienes el protocolo (y servidores): NTP

Así puedes tomar la hora oficial de N pais o bien te instalas un servidor NTP en tu red y todos los sincronizas con esa hora oficial "local" de tu própia red.

PHP (por sockets) podría acceder a ese servidor NTP para leer esa hora y .. si haces una llamada al S.O. de ese sistema operativo (vía exec() y funciones afines) con el comando apropiado (dependerá del S.O. que uses) podrás (si tienes permisos suficientes) ejecutar dicho comando y cambiar la hora del S.O. de ese "servidor".

Pero, lo ideal es que NO cambies la hora sino que tus aplicacioenes "tomen o se sincronicen" con la hora que va a servir ese servidor NTP que instales o bien si quieres hacer algo más "oficial" toma la hora del Pais que corresponda (todos los paises proveen su "hora oficial" y el acceso a esos servidores es público).

Tienes también aplicacinoes (en windows y Linux) para hacer esto mismo: conectan al servidor NTP que le indiques .. y ajustan la hora del S.O. .. No sé si quieres hacerlo integramente en PHP o solventar ese problema con esos software's...

Un saludo,
  #4 (permalink)  
Antiguo 16/06/2004, 09:09
Avatar de TheRock  
Fecha de Ingreso: mayo-2002
Ubicación: Sucre - Bolivia
Mensajes: 189
Antigüedad: 15 años, 6 meses
Puntos: 0
Muy instructivos tus consejos Cluster, como siempre estoy del todo agradecido.

Pero como decia en el mensaje conectare solo 2 máquinas, en una de ellas solo estará el cpu con monitor sin mouse ni teclado ni nada que tenga contacto directo, tan solo un cable de red que se conectará a mi máquina desde la cual deseo tener sincronizado la fecha y hora ;).

Y xcorpio, me sale este mensaje con el comando que me diste:

Warning: Cannot execute using backquotes in safe mode in C:\apache\htdocs\asistencia\asistencia.php on line 137

a lo que te referias sobre los permisos, como puedo otorgarle permisos para poder cambiarlo?.

P.D.. como solo estaran conectadas entre 2 maquinas no creo que haya mucho problema en habilitar o quitarle seguridad a esa maquina, supongo?.. y estoy trabajando con win98SE, gracias.
  #5 (permalink)  
Antiguo 16/06/2004, 11:48
Avatar de xcorpion  
Fecha de Ingreso: octubre-2003
Ubicación: m é x i c o
Mensajes: 676
Antigüedad: 14 años, 2 meses
Puntos: 4
mira lo que esta haciendo esa linea es equivalente a:
shell_exec("date 15-01-04");

pero no te deja por que tienes activado el safe mode o modo seguro. Puedes desactivar el modo seguro editando el php.ini que en windows seguramente se encuentra en C:\windows

solo cambia la directiva safe_mode asi:
safe_mode = Off
  #6 (permalink)  
Antiguo 16/06/2004, 13:25
Avatar de TheRock  
Fecha de Ingreso: mayo-2002
Ubicación: Sucre - Bolivia
Mensajes: 189
Antigüedad: 15 años, 6 meses
Puntos: 0
Quedo perfecto.

Muchísimas gracias amigos por su colaboración.

Hasta la siguiente que continuare molestando..... :D.

Saludos.
  #7 (permalink)  
Antiguo 16/06/2004, 13:28
Avatar de xcorpion  
Fecha de Ingreso: octubre-2003
Ubicación: m é x i c o
Mensajes: 676
Antigüedad: 14 años, 2 meses
Puntos: 4
de eso se trata esta comunidad, tu molestas a alguien, ese alguien molesta a alguien mas y asi en cadena hasta llegar a cluster que no molesta mas que a los serividores http de sitios que contienen info en ingles, nunca habia felicitado a cluster, pero ahora se lo digo abiertamente, felicidades cluster eres como superman o mas bien como superwebmaster.

Última edición por xcorpion; 16/06/2004 a las 13:30 Razón: sorry, soy malo con el teclado
  #8 (permalink)  
Antiguo 16/06/2004, 13:53
Avatar de TheRock  
Fecha de Ingreso: mayo-2002
Ubicación: Sucre - Bolivia
Mensajes: 189
Antigüedad: 15 años, 6 meses
Puntos: 0
Si, por mi parte también un agradecimiento a Cluster, la verdad siempre esta en auxilio de nosotros los necesitados para extendernos la mano.

Y pues a seguir su ejemplo, por mi parte tenganlo por seguro aqui estare.
  #9 (permalink)  
Antiguo 16/06/2004, 16:10
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Gracias por los alagos ;)

Sobre el tema del "safe_mode" .. hay una directiva de su php.ini (como curiosidad) para dejar en ese directorio los ejecutables que vamos a poder ejecutar en "modo seguro". Se trata de: (php.ini)

safe_mode_exec_dir

Si "date" es un comando del S.O. D.O.S. .. pues supongo que ahí se podrá dejar una copia de command.com y todo irá bien y bajo el "modo seguro" (si pueden hagan la prueba y nos cuentan).

Un saludo,
  #10 (permalink)  
Antiguo 29/01/2005, 06:06
 
Fecha de Ingreso: febrero-2004
Mensajes: 1.942
Antigüedad: 13 años, 10 meses
Puntos: 20
Y si quiero cambiar la hora se puede?.

Y hay un comando para cambiar hora o fecha en unix?

Claro!,
Código PHP:
shell_exec("date 29-01-05 15:15:15"); 
No corrio en unix, (aunque tengo permisos).

Salu2!.
  #11 (permalink)  
Antiguo 29/01/2005, 07:25
 
Fecha de Ingreso: febrero-2004
Mensajes: 221
Antigüedad: 13 años, 10 meses
Puntos: 0
Cita:
Iniciado por Cluster
Para hacer taréas de "sincronización" tienes el protocolo (y servidores): NTP

Así puedes tomar la hora oficial de N pais o bien te instalas un servidor NTP en tu red y todos los sincronizas con esa hora oficial "local" de tu própia red.

PHP (por sockets) podría acceder a ese servidor NTP para leer esa hora y .. si haces una llamada al S.O. de ese sistema operativo (vía exec() y funciones afines) con el comando apropiado (dependerá del S.O. que uses) podrás (si tienes permisos suficientes) ejecutar dicho comando y cambiar la hora del S.O. de ese "servidor".
Si leo la hora desde el NTP con PHP, y con PHP ejecuto el comando, tengo un offset de media hora, no te parece?
  #12 (permalink)  
Antiguo 29/01/2005, 07:40
 
Fecha de Ingreso: febrero-2004
Mensajes: 1.942
Antigüedad: 13 años, 10 meses
Puntos: 20
Pero os he dicho que corri el comando en unix y no funciono.

Sabes el comando PHP para unix?
  #13 (permalink)  
Antiguo 30/01/2005, 14:34
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Cita:
Iniciado por Anarko
Pero os he dicho que corri el comando en unix y no funciono.

Sabes el comando PHP para unix?
Anarko .. el comando en sì es pròpio de UNIX no de PHP ..

Cara a PHP sólo tienes la función shell_exec() o system() .. o exec() para ejecutarlas (entre otras). El comando concreto de UNIX .. su sintax y demàs detalles sobre su ejecución no los define PHP.

Sólo te puedo comentar que las funciones que he mencionado, la mayoría pueden obtener el mensaje de error de su ejecución o salida que entregó (como para que detectes el problema .. sino iras a ciegas).


Un saludo,
  #14 (permalink)  
Antiguo 30/01/2005, 14:47
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Cita:
Iniciado por Appletalk
Si leo la hora desde el NTP con PHP, y con PHP ejecuto el comando, tengo un offset de media hora, no te parece?
mm Pero que servidor NTP has usado? .. tal vez no sea el correcto? ... Màs no te puedo comentar al respecto, no lo he probado en PHP pero si que vìa S.O: (tanto en Windows XP pro como en Linux Fedora core 2) apuntando en mi caso al servidor NTP de la hora oficial de Chile (ntp.shoa.cl)

Un saludo,
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 21:02.