Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Renan_Costa_o

pegar data e hora do servidor pelo javascript

Recommended Posts

(RPG- Growser Game)

pessoal eu eo criando uma pagina no meu site em que cada jogador tem um tempo para fazer sua missão quando ele inicia a missão começa a contagem regressiva. porem no javascript tem uma função la que pega a hora atual e compara com a hora do termino da missão... nisso que ele pega a hora atual e pega do PC da pessoa

tipo

Agora no horario de brasilia são 15:00:00

e no PC da pessoa é 16:00:00

e a missão for acabar às 16:30:00

 

Pelo meu PC que a hora esta certa falta 1:30 para a missão acabar.. mas se eu alterar minha hora no PC para as 16:00:00 faltará apenas 30min pra missão acabar...

 

Aki vai uma parte do codigo da pagina:


$datetime = $player->horatermino;

list( $dataa, $horaa ) = explode( ' ', $datetime );

$data = explode("-",$dataa);

$ano = $data[0];
$mes = $data[1];
$dia = $data[2];

$horario = explode(":",$horaa);

$hora = $horario[0];
$minuto = $horario[1];
$segundo = $horario[2];


?>
<?php
       $horaServidor = date("d/m/Y h:i:s");
?>
<script language="Javascript">
var YY = <?=$ano?>;
var MM = <?=$mes?>;
var DD = <?=$dia?>;
var HH = <?=$hora?>;
var MI = <?=$minuto?>;
var SS = <?=$segundo?>; 

function atualizaContador() 
{  
var hoje = new Date();  
var futuro = new Date(YY,MM-1,DD,HH,MI,SS);  
var ss = parseInt((futuro - hoje) / 1000);  
var mm = parseInt(ss / 60);  
var hh = parseInt(mm / 60);  
var dd = parseInt(hh / 24);   
ss = ss - (mm * 60);  
mm = mm - (hh * 60);  
hh = hh - (dd * 24);   
if(ss<=9)ss="0"+ss;
if(mm<=9)mm="0"+mm;
if(hh<=9)hh="0"+hh;
var faltam = '';  

faltam += (toString(hh).length) ? hh+':' : '';  
faltam += (toString(mm).length) ? mm+':' : '';  
faltam += ss+' ';   
fim = '00:00:00 <br /> <input type="submit" value="Finalizar" class="bt" onclick="javascript: location.href='finalizar_missao.php?finalizar=tarefa';">'

if (<?=$player->idmissao?> > 0) 
{
 if (hh+mm+ss > 0) 
{
 document.getElementById('contador').innerHTML = faltam;       
 setTimeout(atualizaContador,1000);  
}
else
{
document.getElementById('contador').innerHTML = fim;  

}}

else
{
 document.getElementById('contador').innerHTML = faltam;  
 setTimeout(atualizaContador,1000);  
}}
</script>

Espero terem entendid VLW!

Compartilhar este post


Link para o post
Compartilhar em outros sites

faça a contagem regressiva de acordo com um tempo certo e não pela hora do usuario, você diz por exemplo... "você tem 30 min para terminar", você faz um contador para chegar até os 30 min, e não precisa comparar nada.

Compartilhar este post


Link para o post
Compartilhar em outros sites

sair da pagina que você fala é fechar navegador?? coloca uma função para quando ele sair da pagina... pesquisa por Unload, você dar pause na contagem e salva em algum local, banco ou cancela a missão dele.

 

http://www.google.com.br/#hl=pt-BR&q=javascript+Unload&oq=javascript+Unload&aq=f&aqi=&aql=&gs_sm=e&gs_upl=4090l5193l2l5286l10l6l0l0l0l0l0l0ll0l0&bav=on.2,or.r_gc.r_pw.&fp=a9983d7b71049808&biw=1920&bih=979

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.