Hora num formulário

Spiderman

I folded Myself
Boas.

Na pagina que estou a criar, ha um formulario para preencher. Eu queria que ao carregar no submit, ele registasse numa variavel ou hidefield a hora e data do sistema naquela altura.

Se podesse ser a hora GMT era melhor, para nao haver descrepância nos valores.

:007:
 
Usando PHP:


PHP:
<?php
 
 
#Definição de variáveis de data
 
 
$dia=date(d);
$mes=date(n);
$ano=date(Y);
 
#Definição de variáveis de hora
$hora=date(H);
$minutos=date(i);
 
 
#Imprime data
echo"$dia/$mes/$ano ";
 
#Imprime hora
 
echo"$hora:$minutos";
 
 

#Simplificando o script:
$data = date("m/d/y");
$hora = date("H:i:s"); 
echo"$data<br>";
echo"$hora";
 
?>


Espero que tenhas percebido!!:)
 
Última edição:
Outra implementação possível seria usar o javascript, visto que dizes que pretendes preencher um hidden field aquando do submit do formulário; poderia ser +/- algo deste tipo:

Código:
<html>
  <head>
    <script type="text/javascript">
        function doOnSubmit(form){
          var currentTime = new Date();
          form.timestamp.value=currentTime.toLocaleString();
          return true;
        }
    </script>
  </head>
  <body>
    <form name='MyForm' method='post' onsubmit='return doOnSubmit(this)' >
      <input type='text' name='timestamp' value=''>
      ...
      ...
      ...
      <input  type="submit" value='Submit'>
    </form>
  </body>
</html>

Ao ser pressionado o submit irá ser chamada a função doOnSubmit que basicamente irá preencher o hidden field "timestamp"; para a formatação da hora dá uma vista de olhos neste link.

A abordagem do fil79 é na minha opinião a mais correcta, ou seja deves fazer esse tratamento a nível do servidor, visto que por ex. se o cliente tiver o javascript desligado não vai ser registada a hora; partindo também do principio que estás a usar php, podes ver também aqui alguns exemplos de como formatar a data/hora no php
Código:
 
Última edição:
Não dizes que linguagem estás a usar.

Se por exemplo for JSP, podes fazer em Java:

Date data = new Date(); //ficas com a hora actual em data

O Java tem uma API para formatação de datas para usar como der mais jeito.

Sim, do lado do cliente não é boa politica, basta o browser não ter o suporte para javascript activo.
 
Back
Topo