Foros del Web » Creando para Internet » Flash y Actionscript »

Fecha y hora del SERVIDOR

Estas en el tema de Fecha y hora del SERVIDOR en el foro de Flash y Actionscript en Foros del Web. Hola gente Estoy tratando (sin éxito hasta ahora) de hacer un calendario (Ej: Sábado, 31 de Marzo del 2007, 12:12 hrs. PM ), pero que ...
  #1 (permalink)  
Antiguo 31/03/2007, 10:35
Avatar de Mono-R  
Fecha de Ingreso: abril-2006
Ubicación: Bs. As. Argentina
Mensajes: 155
Antigüedad: 11 años, 7 meses
Puntos: 1
Pregunta Fecha y hora del SERVIDOR

Hola gente

Estoy tratando (sin éxito hasta ahora) de hacer un calendario (Ej: Sábado, 31 de Marzo del 2007, 12:12 hrs. PM ), pero que contenga los datos del SERVIDOR.
Los datos los obtengo mediante PHP en el servidor:

código PHP

<?php
//Variable nombre del mes
$nommes = array(Enero, Febrero, Marzo, Abril, Mayo, Junio, Julio, Agosto, Septiembre, Octubre, Noviembre, Diciembre);

//variable nombre día
$nomdia = array(Domingo, Lunes, Martes, Miercoles, Jueves, Viernes, Sabado);

/* date(j) toma valores de 1 al 31 segun el dia del mes
date(n) devuelve numero del 1 al 12 segun el mes
date(w) devuelve 0 a 6 del dia de la semana empezando el domingo
date(Y) devuelve el año en 4 digitos */

$dia = date(j); //Dia del mes en numero
$mes = date(n); //Mes actual en numero
$diasemana = date(w); //Dia de semana en numero

$hoy = $nomdia[$diasemana].', '.$dia.' de '.$nommes[$mes-1].' del '.date(Y).', '.date(h).':'.date(i).' hrs. '.date(A);

echo $hoy;

?>


El tema es que no se como utilizarlos, ya que la idea seria que Flash tomara el valor de $hoy, lo comparase con la hora del PC del usuario y en base a estos siguiera actualizándose, (para no tener que estar constantemente conectándose con el servidor!!!).
Buscando por la red encontré esto, pero no me funciona:

Codigo PHP.

<?php
echo "hora=".date("Y:m:d:H:i:s")."&";
?>


Código Flash.

var tmp=new LoadVars()
tmp.sendAndLoad("hora.php",tmp)
tmp.onLoad=function(){
var fecha_local=new Date()
//le quitamos los milisegundos
fecha_local=new Date(fecha_local.getFullYear(),fecha_local.getMont h(),
fecha_local.getDate(),fecha_local.getHours(),
fecha_local.getMinutes(),fecha_local.getSeconds())
var horas=this.hora.split(":")
var fecha_servidor=new Date(horas[0],(horas[1]-1),horas[2],
horas[3],horas[4],horas[5])
diferencia=fecha_servidor.getTime()-fecha_local.getTime()
delete this
}

//ahora ya tenemos en "diferencia" la diferencia en milisegundos entre
//la hora local y la hora del servidor, con lo que nos vale para
//hallar la hora del servidor en un onEnterFrame con sólo

this.onEnterFrame=function(){
var fecha_local=new Date()
var fecha_servidor=new Date(fecha_local.getFullYear(),fecha_local.getMont h(),
fecha_local.getDate(),fecha_local.getHours(),fecha _local.getMinutes(),
fecha_local.getSeconds(),fecha_local.getMilisecond s()+diferencia)
trace (fecha_servidor)
campo.text=this.fecha_servidor
}

Alguien me podría ayudar para que esto funcione?

O talvez otra manera?



Saludos
__________________
:-) ... cuanto más intento aprender descubro lo poco que se ... :pensando:
  #2 (permalink)  
Antiguo 31/03/2007, 13:23
 
Fecha de Ingreso: septiembre-2006
Mensajes: 1.193
Antigüedad: 11 años, 2 meses
Puntos: 30
Re: Fecha y hora del SERVIDOR

en el echo de php solo suma esto "&hoy="

quedaria asi:

php

Código:
<?php
//Variable nombre del mes
$nommes = array(Enero, Febrero, Marzo, Abril, Mayo, Junio, Julio, Agosto, Septiembre, Octubre, Noviembre, Diciembre);

//variable nombre día
$nomdia = array(Domingo, Lunes, Martes, Miercoles, Jueves, Viernes, Sabado);

/* date(j) toma valores de 1 al 31 segun el dia del mes
date(n) devuelve numero del 1 al 12 segun el mes
date(w) devuelve 0 a 6 del dia de la semana empezando el domingo
date(Y) devuelve el año en 4 digitos */

$dia = date(j); //Dia del mes en numero
$mes = date(n); //Mes actual en numero
$diasemana = date(w); //Dia de semana en numero

$hoy = $nomdia[$diasemana].', '.$dia.' de '.$nommes[$mes-1].' del '.date(Y).', '.date(h).':'.date(i).' hrs. '.date(A);

echo "&hoy=".$hoy;

?>
y en flash asi:


AS

Código:
function Fecha() {
	var tmp = new LoadVars();
	tmp.sendAndLoad("hora.php", tmp, POST);
	tmp.onLoad = function() {
		trace(tmp.hoy);
	};
}
//aqui con setInterval se actualiza la hora cada minuto (60000)
setInterval(Fecha, 1000);
si tienes dudas del metodo setinterval o cualquier otro ve a la parte de ayuda de flash esta todo documentado y si tienes dudas vienes.
  #3 (permalink)  
Antiguo 31/03/2007, 15:10
Avatar de Mono-R  
Fecha de Ingreso: abril-2006
Ubicación: Bs. As. Argentina
Mensajes: 155
Antigüedad: 11 años, 7 meses
Puntos: 1
Re: Fecha y hora del SERVIDOR

Hola Rizzo,
muchas gracias por tu ayuda!!!
Coloqué una línea para insertar la variable y ver el texto.
El tema es que sigue sin actualizarse, queda fijo el valor.
se te ocurre algo?
que puede estar mal?

function Fecha() {
var tmp = new LoadVars();
tmp.sendAndLoad("hora.php", tmp, POST);
tmp.onLoad = function() {
trace(tmp.hoy);
texto_txt.text=this.hoy;
};
}
//aqui con setInterval se actualiza la hora cada minuto (60000)
setInterval(Fecha, 1000);


Nuevamente gracias!!!
Saludos
__________________
:-) ... cuanto más intento aprender descubro lo poco que se ... :pensando:
  #4 (permalink)  
Antiguo 31/03/2007, 15:23
 
Fecha de Ingreso: septiembre-2006
Mensajes: 1.193
Antigüedad: 11 años, 2 meses
Puntos: 30
Re: Fecha y hora del SERVIDOR

esto tu modificaste
Código:
texto_txt.text=this.hoy;
y es lo q ue puse y a mi si me funciona, recuerda que tu reloj no tiene segundos llega hasta minutos deja que pase un minuto para actualizar,

y si no puedes ver el resultado en tu text checa que el color de letra no sea el mismo que el de fondo y que el nombre de instancia del texto sea el mismo osea texto_txt
  #5 (permalink)  
Antiguo 31/03/2007, 16:03
Avatar de Mono-R  
Fecha de Ingreso: abril-2006
Ubicación: Bs. As. Argentina
Mensajes: 155
Antigüedad: 11 años, 7 meses
Puntos: 1
Re: Fecha y hora del SERVIDOR

Mira, no me funciona, y no encuentro por que si a ti si.
La Salida "trace" me da este valor:
".$hoy;



?>

y se repite continuamente, pero el campo de texto dinámico queda con el mismo valor y no cambia nunca.
Ya cheque lo del color y lo de la instancia.
Lo cargo en Localhost y en un Server pago y no me funciona.

Bueno espero no colmarte la paciencia.
Muchas gracias por tu tiempo y tu ayuda

Saludos
__________________
:-) ... cuanto más intento aprender descubro lo poco que se ... :pensando:
  #6 (permalink)  
Antiguo 31/03/2007, 16:27
 
Fecha de Ingreso: septiembre-2006
Mensajes: 1.193
Antigüedad: 11 años, 2 meses
Puntos: 30
Re: Fecha y hora del SERVIDOR

pruebala en mi servidor si puedes me avisas por mp cuando la hayas probado para quitar el archivo de mi servidor, mete esto en un fotograma vacio. deja la direccion como esta.


Código:
function Fecha() {
	var tmp = new LoadVars();
	tmp.sendAndLoad("http://www.suun.com.mx/hora.php", tmp, POST);
	tmp.onLoad = function() {
		trace(tmp.hoy);
	};
}

setInterval(Fecha, 1000);
  #7 (permalink)  
Antiguo 31/03/2007, 16:50
Avatar de Mono-R  
Fecha de Ingreso: abril-2006
Ubicación: Bs. As. Argentina
Mensajes: 155
Antigüedad: 11 años, 7 meses
Puntos: 1
Re: Fecha y hora del SERVIDOR

Gracias por la buena onda.
Si, evidentemente funciona!!!
Al ver tu ejemplo cambié la ruta del archivo PHP "hora.php" por una URL absoluta
("http://...") y también me funciona.
Muchas gracias!!!
Ahora no me quedo claro por que no actualiza cuando pones el la URL " " simple, si es que este archivo esta en servidor (por lo tanto funciona el PHP) en la raíz junto con el *SWF.

Bueno en fin...
lo importante es que funco!!!

Gracias nuevamente por tu tiempo!!!
Saludos

P:D: Ya podes bajar el archivo, a no ser que lo quieras dejar por si encontras a otro "animal" como yo... jajaja
__________________
:-) ... cuanto más intento aprender descubro lo poco que se ... :pensando:
  #8 (permalink)  
Antiguo 31/03/2007, 17:06
 
Fecha de Ingreso: septiembre-2006
Mensajes: 1.193
Antigüedad: 11 años, 2 meses
Puntos: 30
Re: Fecha y hora del SERVIDOR

bueno ya no entendi si pusiste rutas absolutas?, si fue asi no te lo recomiendo que lo hagas, tu ejemplo funciona con ruta relativa y sobre
Código:
setInterval(Fecha, 1000);
cambia 1000 por 60000 por que no tiene caso checar cada segundo, si no tiene segundos el script php mejor cada minuto.

sigue estudiando.
  #9 (permalink)  
Antiguo 06/04/2007, 02:13
 
Fecha de Ingreso: abril-2007
Mensajes: 16
Antigüedad: 10 años, 8 meses
Puntos: 0
Re: Fecha y hora del SERVIDOR

Que tal gente, pues tengo un problema con este codigo, yo quiero que el codigo sea en PHP no en flash y pegue el codigo que postearon aui en mi web y anda a la perfeccion pero solo cuando lo abro desde firefox, y con IE sale mal!!!!!

dice por ejemlo:

viernes
12
de
abril
del
2005

agradeceria que me den una respuesta a eso gracias
  #10 (permalink)  
Antiguo 06/04/2007, 14:34
 
Fecha de Ingreso: septiembre-2006
Mensajes: 1.193
Antigüedad: 11 años, 2 meses
Puntos: 30
Re: Fecha y hora del SERVIDOR

el codigo que obtiene la fecha esta en php, no se cual es el problema.
  #11 (permalink)  
Antiguo 13/04/2007, 11:04
 
Fecha de Ingreso: abril-2007
Mensajes: 16
Antigüedad: 10 años, 8 meses
Puntos: 0
Re: Fecha y hora del SERVIDOR

el problema es el que enuncie... al abrir la web que tiene este codigo desde internet explorer la fecha sale bien pero visualmente se ve mal... es decir sale en este orden

viernes
xx
de abril
de
200x

mientras que si lo abro con firefox sale
como deberia salir para los dos casos es decir bien:

viernes xx de abril de 200x

gracias
  #12 (permalink)  
Antiguo 13/04/2007, 16:45
 
Fecha de Ingreso: septiembre-2006
Mensajes: 1.193
Antigüedad: 11 años, 2 meses
Puntos: 30
Re: Fecha y hora del SERVIDOR

aqui solo lo que nos importa es obtener la fecha. cre que en el foro de php te dirian lo que deberias modificar para cada navegador lleva el script para alla.
  #13 (permalink)  
Antiguo 12/09/2007, 00:45
cao
 
Fecha de Ingreso: septiembre-2003
Ubicación: Monterrey
Mensajes: 36
Antigüedad: 14 años, 2 meses
Puntos: 0
Re: Fecha y hora del SERVIDOR

Solo como comentario, en firefox se procesan mejor los datos que recolecta flash desde php, parece ser que IE los guarda en cache y por eso no se actualiza cuando se pide nuevamente la peticion, la solucion seria por parte de AS que solo recoletara la info una sola ves y posteriormente hacer un ciclo para que sume los minutos sin tener que volver a solicitar un SendandLoad.
__________________
C A O
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 18:55.