ahora el problema es que no puedo tomar la hora de la pc por que si la alteran se altera el reloj yo lo hice haci y no me sirve seria tomar la hora del servidor y trabajar con ella pero el problema es que no puedo lanzar consultas cada milisegundo por que se satura el servidor y tengo que mostrar el reloj retrocediendo por eso no amplio el tiempo para hacer la consulta
trate de combinar dos codigos que encontre aqui pero me falla en que si le coloco por ejemplo que termine en 2 dias y el ultimo dia termine a las 10:00am para el todos los dias se terminan a la misma hora es decir no llega al final del dia correptamente aqui les dejo el codigo que combine
Utilice 3 fotogramas
///Primer fotograma //Consulta para traer la hora actual del servidor
enviar = new LoadVars();
recibir = new LoadVars();
enviar.user = user.text;
recibir.onLoad = function(success) {
if (success) {
_root.yearserver=this.anofin;
_root.messerver=this.mesfin;
_root.diaserver=this.diafin;
_root.horaserver=this.horafin;
_root.minutosserver=this.minutosfin;
_root.segundosserver=this.segundosfin;
play();
}
};
enviar.sendAndLoad("http://localhost/G2 metodo digital/html/horaserver.php", recibir, "POST");
stop();
////Segundo fotograma //aqui resto la fecha actual con la fecha que quiero que llegue y inicializo las variables que van a decrementarse para simular el reloj retrocediendo
root.messerver=_root.messerver-1;
horaactual=new Date(_root.yearserver,_root.messerver,_root.diaserver,_root.horaserver,_root.minutosserver,_root.segundosserver,00)
endDate = new Date(2010,7,13,18,59,59,00);
timeLeft = (endDate - horaactual);
var di = 24*60*60*1000;
var ho = 60*60*1000;
var mi = 60*1000;
var se = 1000;
dosDigitos = function( value ){
return (value < 10 )?( "0" + value ):(value);
}
function calculate (factor){
var result = Math.floor(timeLeft /factor);
timeLeft -= (result * factor);
return result;
}
getTimeLeft = function (){
timeLeft = (endDate - new Date());
if( timeLeft > 0 ){
_root.dias = calculate(di);
_root.horas = calculate(ho);
_root.minutos = calculate (mi);
_root.segundos = dosDigitos(Math.floor(timeLeft/1000));
//campo.text = horas + ":" + minutos + ":" + segundos;
}else{
//campo.text = "00 dìas, 00 : 00 : 00";
}
}
getTimeLeft();
var dis:Number=_root.dias;//dias
var h:Number =_root.horas;//horas.. supongamos que se va a regresar 5 horas..
var m:Number = _root.minutos; //Variable Minutos..
var s:Number = _root.segundos;//Variable Segundos..
var hora:String;
var minutos:String;
var segundos:String;
var dias:String;
var Reloj;
///Tercer fotograma hace el retroceso del reloj
function actualizar() {
if(s<1){
m-=1;
s=60;
}
if(m<0){
m=59;
h-=1;
}
if(h<0){
h=23;
m=59;
s=60;
dis-=1;
}
s-=1;
//*****************************************
//Esto solo es para que cuando sea cero, nos ponga los dos Ceros en lugar de un solo Cero...
//Y donde sea menor de 10, le agregue un Cero antes del numero...
hora=h;
minutos=m;
segundos=s;
dias=dis;
if(dis==0){
dis="00";
}
if(dis<10 && dis!=0){
trace("aqui");
dias="0" add dis;
}
if(h==0){
hora="00";
}
if(h<10){
hora="0" add h;
}
if(m==0){
minutos="00";
}
if(m<10){
minutos="0" add m;
}
if(s==0){
segundos="00";
}
if(s<10){
segundos="0" add s;
}
//******************************************
trace("Dias " add dias add " " add hora add ":" add minutos add ":" add segundos); //Aqui depende de como vas a mostrar las horas
//relojito= hora add ":" add minutos add ":" add segundos;
_root.diascomple.text="" add dias;
_root.reloj.text=" " add hora add ":" add minutos add ":" add segundos;
if(dis==0){ //En animacion, campos dinamicos, listas, o donde quieras y como quieras

if(h==0){
if(m==0){
if(s==0){
clearInterval(Reloj); //Eliminamos RELOJ para que deje de ejecutarse el setInterval...
}
}
}
}
}
Reloj = setInterval( actualizar, 1000 ); //Ejecutamos la función actualizar cada segundo..
//this.diascomple.text=dias;
stop();
Cabe resaltar que parte de este codigo lo tome de un ejemplo que encontre aqui
y lo modifique para adaptarlo a mis necesidades plis si alguien e pudo entender espero me echen una ayudadita