FórumGdH

Página Inicial do Guia do Hardware

Registrar FAQ Calendário Pesquisar Mensagens de Hoje Marcar Fóruns Como Lidos

Voltar   FórumGdH > Profissional > Programação, scripts, web e banco de dados
Bem-vindo ao FórumGdH
Não se esqueça de se registrar, é grátis . Nós temos 754.032 usuários, convidamos você fazer parte de nossa comunidade também! Se ainda não encontrou o que procura use nossa pesquisa. Esperamos que aprecie nosso trabalho.

Resposta
 
Opções do Tópico
Antigo 07-04-2005, 14:40   #1 (permalink)
Wilton
Membro Senior
 
Registrado em: Mar 2003
Mensagens: 157
Reputação: 19 Wilton está indo no caminho certo
Padrão Travar tecla F5

Olá pessoal. Alguém saberia me dizer como posso bloquear/travar a tecla F5 em uma determinada página minha. Preciso fazer isto em JavaScript, Html ou PHP.

Valeu, galera.
__________________
Wilton - Newbie
Wilton está offline   Responder com Quote
Antigo 07-04-2005, 16:48   #2 (permalink)
jqueiroz
Highlander
 
Avatar de jqueiroz
 
Registrado em: May 2002
Localização: Tijuca/RJ
Idade: 9
Mensagens: 87.724
Reputação: 778 jqueiroz tem uma fabulosa reputaçãojqueiroz tem uma fabulosa reputaçãojqueiroz tem uma fabulosa reputaçãojqueiroz tem uma fabulosa reputaçãojqueiroz tem uma fabulosa reputaçãojqueiroz tem uma fabulosa reputaçãojqueiroz tem uma fabulosa reputaçãojqueiroz tem uma fabulosa reputaçãojqueiroz tem uma fabulosa reputaçãojqueiroz tem uma fabulosa reputaçãojqueiroz tem uma fabulosa reputação
Padrão

Você quer impedir que o usuário recarregue a página???
__________________
Visite Quepolis (link de indicação) | "chmod 777 nunca ajudou ninguém" (c) 2002-2010 JQueiroz/FGdH
CCNP: √ ² CCSI: □ | Conheça o Novo Bebuns
jqueiroz está offline   Responder com Quote
Antigo 07-04-2005, 18:50   #3 (permalink)
Wilton
Membro Senior
 
Registrado em: Mar 2003
Mensagens: 157
Reputação: 19 Wilton está indo no caminho certo
Padrão

Exatamente, pois eu tenho o seguinte caso. Eu abro um pop-up e peço para aguardar... após o termino do carregamento eu abro uma nova página. Então enquanto estiver nesta página escrita "aguarde", eu não posso deixar o usuário recarregar a página.
__________________
Wilton - Newbie
Wilton está offline   Responder com Quote
Antigo 07-04-2005, 20:46   #4 (permalink)
jackinabox
Veterano
 
Avatar de jackinabox
 
Registrado em: Nov 2004
Mensagens: 1.055
Reputação: 16 jackinabox está indo no caminho certo
Padrão

Parece um caso de "bad engineering"...
__________________
Jeferson Charles Mayer

"Como é que eu vou enxergar a tal floresta, com todas essas árvores atrapalhando a visão?"
jackinabox está offline   Responder com Quote
Antigo 07-04-2005, 21:25   #5 (permalink)
Wilton
Membro Senior
 
Registrado em: Mar 2003
Mensagens: 157
Reputação: 19 Wilton está indo no caminho certo
Padrão

Realmente é um caso de mal desenvolvimento, mas peguei o bonde andando e preciso fazer um tapa buraco, então gostaria de saber se existe tal forma de bloquear a tecla F5, ou impossibilitar que o usuário de um refresh naquela página.
__________________
Wilton - Newbie
Wilton está offline   Responder com Quote
Antigo 07-04-2005, 23:26   #6 (permalink)
Acquila
Super Participante
 
Registrado em: Mar 2002
Mensagens: 653
Reputação: 21 Acquila está indo no caminho certo
Padrão

Como disse o Jack, isso é mesmo "bad engineering'. A captura de teclas para implementação de eventos é feita sempre localmente, ou seja, vc tem que usar uma script que seja executado localmente para conseguir alterar os eventos-padrão.

Como vc deve estar imaginando, vc fatalmente vai cair em java ou javascript. Supondo que vc vá usar javascript ( porque imagino que vc não vá fazer um applet java só pra evitar o recarregamento da página), vc deve ter em mente que se alguém quiser MESMO recarregar a página, vai faze-lo sem problemas e vc não vai conseguir impedir.

Endim, direto do Google pra vc, um script de teste...

Código:
<header> <script language="JavaScript"> function Verificar() { var tecla=window.event.keyCode; if (tecla==116) {alert("ERROR!"); event.keyCode=0; event.returnValue=false;} } </script> </header> <body onKeyDown="javascript:Verificar()"> Presione F5 </body>

[]!
Acquila está offline   Responder com Quote
Antigo 26-04-2005, 13:47   #7 (permalink)
mateusluiz
Super Participante
 
Registrado em: Apr 2003
Mensagens: 815
Reputação: 19 mateusluiz está indo no caminho certo
Padrão

Citação:
Postado Originalmente por Acquila
Como disse o Jack, isso é mesmo "bad engineering'. A captura de teclas para implementação de eventos é feita sempre ...
voltando a esse assunto...

mas se no caso a pessoa clicar no icone de atualizar do navegador, tem como não deixar?
mateusluiz está offline   Responder com Quote
Antigo 26-04-2005, 21:12   #8 (permalink)
jqueiroz
Highlander
 
Avatar de jqueiroz
 
Registrado em: May 2002
Localização: Tijuca/RJ
Idade: 9
Mensagens: 87.724
Reputação: 778 jqueiroz tem uma fabulosa reputaçãojqueiroz tem uma fabulosa reputaçãojqueiroz tem uma fabulosa reputaçãojqueiroz tem uma fabulosa reputaçãojqueiroz tem uma fabulosa reputaçãojqueiroz tem uma fabulosa reputaçãojqueiroz tem uma fabulosa reputaçãojqueiroz tem uma fabulosa reputaçãojqueiroz tem uma fabulosa reputaçãojqueiroz tem uma fabulosa reputaçãojqueiroz tem uma fabulosa reputação
Padrão

Mas mateusluiz, vc já imaginou um caso onde por qualquer motivo a página não carregou direito (por exemplo, houve uma falha da rede durante o carregamento --- e olha que isso ocorre pra caramba), ele não vai poder tentar recarregar???
__________________
Visite Quepolis (link de indicação) | "chmod 777 nunca ajudou ninguém" (c) 2002-2010 JQueiroz/FGdH
CCNP: √ ² CCSI: □ | Conheça o Novo Bebuns
jqueiroz está offline   Responder com Quote
Antigo 26-04-2005, 21:55   #9 (permalink)
aylons
General de Pijama
 
Avatar de aylons
 
Registrado em: Mar 2004
Localização: São Paulo
Idade: 27
Mensagens: 3.740
Reputação: 21 aylons possui ótimo potencial
Enviar mensagem via ICQ para aylons Enviar mensagem via MSN para aylons Enviar mensagem via Yahoo para aylons Enviar mensagem via Skype para aylons
Padrão

Lembrando que os navegadores tem infinitas funções... como você vai bloquear o mouse gesture do Opera? e o comando de voz? E as outras teclas de atalho, como Ctrl+R e outras que o usuário possa configurar?

Colocar um aviso do estilo "Por favor, aguarde. Não tente atualizar essa página para não interromper o processo." é a saída menos deselegante.
__________________
Ayloиs Hazzud, com N invertido
aylons está offline   Responder com Quote
Antigo 26-04-2005, 23:24   #10 (permalink)
jackinabox
Veterano
 
Avatar de jackinabox
 
Registrado em: Nov 2004
Mensagens: 1.055
Reputação: 16 jackinabox está indo no caminho certo
Padrão

Vamos combinar que esse negócio de tentar bloquear refresh, impedir visualização de código fonte das páginas e/ou salvamento de imagens é um nojo.
__________________
Jeferson Charles Mayer

"Como é que eu vou enxergar a tal floresta, com todas essas árvores atrapalhando a visão?"
jackinabox está offline   Responder com Quote
Antigo 26-04-2005, 23:26   #11 (permalink)
aylons
General de Pijama
 
Avatar de aylons
 
Registrado em: Mar 2004
Localização: São Paulo
Idade: 27
Mensagens: 3.740
Reputação: 21 aylons possui ótimo potencial
Enviar mensagem via ICQ para aylons Enviar mensagem via MSN para aylons Enviar mensagem via Yahoo para aylons Enviar mensagem via Skype para aylons
Padrão

Para resumir tudo: tentar controlar a navegação do usuário é, no mínimo, uma besteira. Eu acho execrável.
__________________
Ayloиs Hazzud, com N invertido
aylons está offline   Responder com Quote
Antigo 28-04-2005, 14:08   #12 (permalink)
mateusluiz
Super Participante
 
Registrado em: Apr 2003
Mensagens: 815
Reputação: 19 mateusluiz está indo no caminho certo
Padrão

o meu problema é q cada vez que eu atualizo a pagina ele acrescente + 1 produto nos meus pedidos on-line sem quere acrescentar, e não consigo arrumar isso, ai sobro pra faze essa pequena gambiara

ai por isso que era bom controlar o usuario para não fazer certas coisas...

mas ngm sab como fazer isso?
mateusluiz está offline   Responder com Quote
Antigo 28-04-2005, 14:14   #13 (permalink)
aylons
General de Pijama
 
Avatar de aylons
 
Registrado em: Mar 2004
Localização: São Paulo
Idade: 27
Mensagens: 3.740
Reputação: 21 aylons possui ótimo potencial
Enviar mensagem via ICQ para aylons Enviar mensagem via MSN para aylons Enviar mensagem via Yahoo para aylons Enviar mensagem via Skype para aylons
Padrão

Avise o usuário disso. É a melhor forma. Ou altere o código para evitar que isso aconteça (evitando que o mesmo computador, seja lá como você o identifique, acrescente mais uma vez aquele produto).

Não tem como evitar que o navegador envie o pedido de recarregar, de forma segura. A interface do usuário pode variar muito e você nunca vai ter certeza se algum navegador não tem algum recurso que permita isso e você não bloqueou.
__________________
Ayloиs Hazzud, com N invertido
aylons está offline   Responder com Quote
Antigo 28-04-2005, 14:51   #14 (permalink)
mateusluiz
Super Participante
 
Registrado em: Apr 2003
Mensagens: 815
Reputação: 19 mateusluiz está indo no caminho certo
Padrão

ok
vlw então pela ajuda...

flw
mateusluiz está offline   Responder com Quote
Antigo 28-04-2005, 21:26   #15 (permalink)
jackinabox
Veterano
 
Avatar de jackinabox
 
Registrado em: Nov 2004
Mensagens: 1.055
Reputação: 16 jackinabox está indo no caminho certo
Padrão

mateusluiz,
Como o aylons já comentou, avisar o usuário ou (e/ou) implementar o controle do re-submit é o que realmente deve ser feito.

No Struts (um framework Java de desenvolvimento web), por exemplo, há uma implementação pronta para suportar esse controle, que é conhecida como Synchronizer Token ou Synchronized Token ou Déjà vu Token. Um token é gerado em uma variável de sessão antes de enviar a página para o cliente. Quando a página é submetida, verifica-se se há um token válido (parâmetro do request) que corresponda ao token gerado na sessão. Se o token for válido, o request é processado normalmente, caso contrário, toma-se um fluxo diferente, para evitar o re-submit.

Infelizmente, não conheço nada de PHP, e não sei se é possível implementar (ou mesmo se já há uma implementação) do Synchronizer Token Pattern que seja utilizável em PHP.
__________________
Jeferson Charles Mayer

"Como é que eu vou enxergar a tal floresta, com todas essas árvores atrapalhando a visão?"
jackinabox está offline   Responder com Quote
Antigo 28-04-2005, 23:39   #16 (permalink)
jqueiroz
Highlander
 
Avatar de jqueiroz
 
Registrado em: May 2002
Localização: Tijuca/RJ
Idade: 9
Mensagens: 87.724
Reputação: 778 jqueiroz tem uma fabulosa reputaçãojqueiroz tem uma fabulosa reputaçãojqueiroz tem uma fabulosa reputaçãojqueiroz tem uma fabulosa reputaçãojqueiroz tem uma fabulosa reputaçãojqueiroz tem uma fabulosa reputaçãojqueiroz tem uma fabulosa reputaçãojqueiroz tem uma fabulosa reputaçãojqueiroz tem uma fabulosa reputaçãojqueiroz tem uma fabulosa reputaçãojqueiroz tem uma fabulosa reputação
Padrão

Uma coisa que vc pode fazer é, ao receber a requisição, e esta ser processada, desviar imediatamente para outra página, de jeito que se o cara mandar recarregar, ele vai recarregar a página de saída, não a requisição.
__________________
Visite Quepolis (link de indicação) | "chmod 777 nunca ajudou ninguém" (c) 2002-2010 JQueiroz/FGdH
CCNP: √ ² CCSI: □ | Conheça o Novo Bebuns
jqueiroz está offline   Responder com Quote
Antigo 28-04-2005, 23:41   #17 (permalink)
aylons
General de Pijama
 
Avatar de aylons
 
Registrado em: Mar 2004
Localização: São Paulo
Idade: 27
Mensagens: 3.740
Reputação: 21 aylons possui ótimo potencial
Enviar mensagem via ICQ para aylons Enviar mensagem via MSN para aylons Enviar mensagem via Yahoo para aylons Enviar mensagem via Skype para aylons
Padrão

Boa...

mas esses comandos de redirecionamento carregam e agem bem rápido?
__________________
Ayloиs Hazzud, com N invertido
aylons está offline   Responder com Quote
Antigo 29-04-2005, 1:54   #18 (permalink)
jqueiroz
Highlander
 
Avatar de jqueiroz
 
Registrado em: May 2002
Localização: Tijuca/RJ
Idade: 9
Mensagens: 87.724
Reputação: 778 jqueiroz tem uma fabulosa reputaçãojqueiroz tem uma fabulosa reputaçãojqueiroz tem uma fabulosa reputaçãojqueiroz tem uma fabulosa reputaçãojqueiroz tem uma fabulosa reputaçãojqueiroz tem uma fabulosa reputaçãojqueiroz tem uma fabulosa reputaçãojqueiroz tem uma fabulosa reputaçãojqueiroz tem uma fabulosa reputaçãojqueiroz tem uma fabulosa reputaçãojqueiroz tem uma fabulosa reputação
Padrão

Ah, vai depender de como foi programado, né? E do próprio servidor...
__________________
Visite Quepolis (link de indicação) | "chmod 777 nunca ajudou ninguém" (c) 2002-2010 JQueiroz/FGdH
CCNP: √ ² CCSI: □ | Conheça o Novo Bebuns
jqueiroz está offline   Responder com Quote
Antigo 29-04-2005, 6:57   #19 (permalink)
mateusluiz
Super Participante
 
Registrado em: Apr 2003
Mensagens: 815
Reputação: 19 mateusluiz está indo no caminho certo
Padrão

eu postei aki o problema para me ajudaram aki no forum

http://forumgdh.net/viewtopic.php?p=1682344#1682344

ta em um das ultimas respostas...
mateusluiz está offline   Responder com Quote
Antigo 29-04-2005, 16:36   #20 (permalink)
Kleber Costa
Zumbi
 
Registrado em: Aug 2001
Localização: Recife - PE
Mensagens: 5.177
Reputação: 28 Kleber Costa está indo no caminho certo
Enviar mensagem via MSN para Kleber Costa
Padrão

Eu estou com um problema ligado ao refresh do browser e andei dando uma pesquisada nessa área! Tenta usar windows.focus para deixar esse popup sempre com o foco. Aí seria impossível o usuário dar esse reload na página pq ele não teria acesso a janela que é a "mãe" do popup. Isso é tudo teoria :mrgreen: nunca testei e não sei se é possível!
__________________
Salve! Ó terra dos altos coqueiros!
De belezas soberbo estendal!
Nova Roma dos bravos guerreiros
Pernambuco, imortal, imortal!


Linux User #262254
Kleber Costa está offline   Responder com Quote
Resposta


Opções do Tópico

Regras de Mensagens
Você não pode criar tópicos
Você não pode postar respostas
Você não pode anexar arquivos
Você não pode editar suas mensagens

Código vB está Ligado
Smiles estão Ligado
Código [IMG] está Ligado
Código HTML está Desligado
Ir para...


Horários baseados na GMT -3. Agora são 7:59.