Análise de Sistemas
Banco de Dados
Computação Gráfica
Diversos
Internet
Lógica
Programação
Redes
Computação
Informática Básica
FrameWorks
Matemática
Cadastre-se
COMO BLOQUEAR A TECLA ENTER EM TODOS OS NAVEGADORES COM PROGRAMACAO PHP


CLUBE DE AUTORES


AMAZON


CLUBE DE AUTORES


MAGAZINE LUIZA


CLUBE DE AUTORES

PHP-GENERATOR

COMO BLOQUEAR A TECLA ENTER EM TODOS OS NAVEGADORES COM PROGRAMACAO PHP

seja esperto como as serpentes e inofensivo como os pombos

RMFAIS

COMO BLOQUEAR A TECLA ENTER EM TODOS OS NAVEGADORES COM PROGRAMAÇÃO PHP

Um dos grandes inconvenientes dos formulários de dados HTML é a utilização da tecla Enter pelos usuários, pois muitos entendem que Enter serve para mudar de campo, quando na realidade, Enter seve para fazer o envio dos dados digitados no formulário, sem falar que em muitas situações, quando existe mais de um botão do tipo submit, o programador precisa checar qual deles foi clicado, neste caso, o uso do Enter pode representar outro transtorno.

 

Um dos recursos mais conhecidos para bloquear a tecla Enter se dá por meio de programação JAVASCRIPT, conforme exemplo mostrado a seguir:

 

<script>

/******************* funcao que bloqueia a tecla enter *********************/

function enter()

{

   if (event.keyCode==13)

   {

      alert('Por favor, não utilize a tecla Enter. Utilize Tab');

      event.keyCode=9;

      event.returnValue=false;

   }

   document.onkeydown=enter;

}

</script>

 

Teoricamente bastaria inserir o código acima no início da página que contém o formulário HTML e a tecla Enter estaria bloqueada. O problema é que nem todos os navegadores respeitam isso, o recurso funciona bem no Internet Explorer, mas para usuários de outros navegadores o script poderia não ter efeito algum.

 

Sendo assim, é necessário uma solução alternativa, que seja eficaz em qualquer navegador, solução esta, que pode se dar por meio de programação PHP, fazendo-se uma simples implementação no formulário de dados HTML e uma checagem desta implementação no programa PHP que irá receber esses dados. Observe o formulário abaixo:

 

<form name=dados action=teste.php method=post>

   <br>Nome:<input name=nome>

   <input type=submit name=auxiliar value='.'>

   <input type=submit name=enviar value='enviar dados'>

</form>

 

O resultado do formulário seria:

 


Nome:

 

 

Note que foram criados dois botões submit, o primeiro chamado auxiliar com valor igual a ‘.’, e o segundo chamado enviar com valor igual a ‘enviar dados’. O objetivo é fazer com que o usuário digite todos os campos do formulário e no final clique em ‘enviar dados’, sem que seja utilizada a tecla Enter em momento algum. Caso o usuário tecle Enter, seu bloqueio pode se dar inserindo-se o seguinte código no início do programa que PHP que irá receber os dados do formulário:

 

<?

    if($nome&&!$enviar)

    {

       echo"<script>alert('POR FAVOR, CLIQUE NO BOTAO ENVIAR');";

       echo"window.location.href = 'javascript:history.go(-1)';</script>";

       exit;

    }

?>

 

Se for preenchido o campo ‘nome’ e o botão ‘enviar’ não for clicado, aparecerá a mensagem 'POR FAVOR, CLIQUE NO BOTAO ENVIAR' e em seguida será restaurada a tela anterior. Com isso, obrigatoriamente, o usuário só conseguirá fazer envio dos dados se clicar no botão ‘enviar dados’. Isso é possível porque se usuário teclar Enter, por padrão, o primeiro campo submit do formulário será enviado ao programa PHP, no caso o botão ‘auxiliar’.

 

Basta agora adequar o código PHP mostrado acima a botões com diferentes nomes, de acordo com as necessidades de cada programador.

 

ATIVIDADES

 

1)                 Implemente em um servidor apache os scripts mostrados acima.

2)                 Acrescente os campos endereço, fone e e-mail no formulário de dados.

 

Artigo redigido em setembro de 2009.

 

Autor: PROF. RONI MÁRCIO FAIS
Formação: Bacharel em Ciência da Computação e Especialista em Administração, Supervisão e Orientação Educacional. Professor de cursos técnicos profissionalizantes do Estado do Paraná.

 

Todos os direitos reservados a www.rmfais.com


WebMaster: PROFESSOR RONI MARCIO FAIS
Formação: Bacharel em Ciência da Computação e Especialista em Administração, Supervisão e Orientação Educacional
E-mail: rmfais@yahoo.com.br


Artigos



Criação de APP online