← Desenvolvimento

Controlar F5 em ASP

Lida 3530 vezes

Offline

furriel 
Membro
Mensagens 54 Gostos 0
Troféus totais: 23
Trófeus: (Ver todos)
Level 5 Super Combination Combination Topic Starter Poll Voter Level 4 Level 3 Level 2 Level 1 50 Posts



Estou com um problema no jogo que estou a fazer.

Quando alguém carrega nestes botões desconfigura as variavéis de sessão.
Alguem sabe como controlar esta situação em ASP?

Obrigado.
Offline

furriel 
Membro
Mensagens 54 Gostos 0
Troféus totais: 23
Trófeus: (Ver todos)
Level 5 Super Combination Combination Topic Starter Poll Voter Level 4 Level 3 Level 2 Level 1 50 Posts

Então, onde andam os ASP coders  8)
Offline

kingless 
Membro
Mensagens 857 Gostos 0
Troféus totais: 27
Trófeus: (Ver todos)
Super Combination Combination Topic Starter Poll Voter Poll Starter Level 5 Level 4 Level 3 Level 2 Level 1

A maioria programa em php  :wink:

Mas posso te garantir que não da para desactivar esses botões  :wink:
Offline

jpgmn 
Membro
Mensagens 305 Gostos 0
Troféus totais: 28
Trófeus: (Ver todos)
Super Combination Combination Topic Starter Poll Voter Poll Starter Level 5 Level 4 Level 3 Level 2 Level 1

Desconfigura como?
Dá lá um exemplo.

Estás a usar META tags para obrigar a ir buscar a página de novo?
Offline

furriel 
Membro
Mensagens 54 Gostos 0
Troféus totais: 23
Trófeus: (Ver todos)
Level 5 Super Combination Combination Topic Starter Poll Voter Level 4 Level 3 Level 2 Level 1 50 Posts

Pois eu sei que a maioria usa php. Para o verão também vou usar :)

O jogo que fiz é um jogo de cultura geral de 15 perguntas de escolha multipla.
Durante o jogo se o utilizador faz F5 abre outra vez a mesma página e como tenha a variavel de sessão a incrementar, o utilizador acaba por não responder à pergunta e a variavel avança uma página e assim em vez de responder a 15 responde a menos perguntas.

O que eu queria fazer era se sabendo que o utilizador carregou no F5 poderia guardar a variavél anterior ou decrementar a variavel de sessão.

Abraço
Offline

kingless 
Membro
Mensagens 857 Gostos 0
Troféus totais: 27
Trófeus: (Ver todos)
Super Combination Combination Topic Starter Poll Voter Poll Starter Level 5 Level 4 Level 3 Level 2 Level 1

Tens é que tentar programar de outra forma para que isso não aconteça, a forma como programaste é que está a causar esse erro.
Offline

helt 
Membro
Mensagens 111 Gostos 0
Troféus totais: 25
Trófeus: (Ver todos)
Super Combination Combination Topic Starter Poll Voter Level 5 Level 4 Level 3 Level 2 Level 1 100 Posts

Citação de: "furriel"
Pois eu sei que a maioria usa php. Para o verão também vou usar :)

O jogo que fiz é um jogo de cultura geral de 15 perguntas de escolha multipla.
Durante o jogo se o utilizador faz F5 abre outra vez a mesma página e como tenha a variavel de sessão a incrementar, o utilizador acaba por não responder à pergunta e a variavel avança uma página e assim em vez de responder a 15 responde a menos perguntas.

O que eu queria fazer era se sabendo que o utilizador carregou no F5 poderia guardar a variavél anterior ou decrementar a variavel de sessão.

Abraço


Usa cookies ou uma base de dados para armazenar as perguntas já respondidas.
Offline

furriel 
Membro
Mensagens 54 Gostos 0
Troféus totais: 23
Trófeus: (Ver todos)
Level 5 Super Combination Combination Topic Starter Poll Voter Level 4 Level 3 Level 2 Level 1 50 Posts

o trabalho é para entregar amanhã, acho que já não vou ter tempo para verificar isso, mas obrigado na mesma.
Offline

jpgmn 
Membro
Mensagens 305 Gostos 0
Troféus totais: 28
Trófeus: (Ver todos)
Super Combination Combination Topic Starter Poll Voter Poll Starter Level 5 Level 4 Level 3 Level 2 Level 1

Faz assim:

Coloca numa variável de sessão o número da pergunta actual e da última pergunta respondida.
Se a pergunta actual for a última pergunta respondida ignoras e redireccionas para a próxima.

Ou então, colocas em sessão a próxima pergunta a ser respondida e só incrementas as respostas certas se estiveres na pergunta correcta.

Faz algo do estilo que há várias maneiras.
Offline

furriel 
Membro
Mensagens 54 Gostos 0
Troféus totais: 23
Trófeus: (Ver todos)
Level 5 Super Combination Combination Topic Starter Poll Voter Level 4 Level 3 Level 2 Level 1 50 Posts

Aproveitei a tua sugestão a estive a pensar e dá para fazer mas precisava de atribuir uma variavél de sessão num ficheiro de javascript.

É possivel fazer isso?

é que eu já tentei fazer isso e não consegui :(

Ou isso ou então alguma função em ASP que dê para saber se um radio button foi seleccionado ou não

Obrigado :)
Offline

jpgmn 
Membro
Mensagens 305 Gostos 0
Troféus totais: 28
Trófeus: (Ver todos)
Super Combination Combination Topic Starter Poll Voter Poll Starter Level 5 Level 4 Level 3 Level 2 Level 1

Sempre podes gerar o ficheiro de javascript em ASP...

Queres saber em ASP se um radio button foi seleccionado?
Mas depois de um POST?
Se for podes ver pelo value do campo.
Offline

furriel 
Membro
Mensagens 54 Gostos 0
Troféus totais: 23
Trófeus: (Ver todos)
Level 5 Super Combination Combination Topic Starter Poll Voter Level 4 Level 3 Level 2 Level 1 50 Posts

Citação de: "jpgmn"
Sempre podes gerar o ficheiro de javascript em ASP...

Queres saber em ASP se um radio button foi seleccionado?
Mas depois de um POST?
Se for podes ver pelo value do campo.


Sim queria ver se o radio button foi seleccionado depois do post, tipo:

<form>
....
</form>

<% if value.checked then
          Session("radio")=1
      else
          Session("radio")=-1
      end if %>

Como é que se faz isto, é que assim não dá
Offline

jpgmn 
Membro
Mensagens 305 Gostos 0
Troféus totais: 28
Trófeus: (Ver todos)
Super Combination Combination Topic Starter Poll Voter Poll Starter Level 5 Level 4 Level 3 Level 2 Level 1

Tens o ficheiro Envia.asp:

...
<input type="radio" name="campo1" value="Sim">
<input type="radio" name="campo1" value="Não">
...

Este ficheiro faz um POST para o ficheiro Recebe.asp:

...
<%
valorcampo1 = request.form("campo1")

if valorcampo1 <> "" then
    Session("radio") = 1
else
    Session("radio") = -1
end if
%>
Offline

furriel 
Membro
Mensagens 54 Gostos 0
Troféus totais: 23
Trófeus: (Ver todos)
Level 5 Super Combination Combination Topic Starter Poll Voter Level 4 Level 3 Level 2 Level 1 50 Posts

Mas esse POST tem que ser feito a partir do action do form, não é?
Offline

jpgmn 
Membro
Mensagens 305 Gostos 0
Troféus totais: 28
Trófeus: (Ver todos)
Super Combination Combination Topic Starter Poll Voter Poll Starter Level 5 Level 4 Level 3 Level 2 Level 1

Sim.

Tens o campo dentro do form que faz o post para o segundo ficheiro asp.