Ciao ragazzi, vi chiedo un aiutino...![]()
Sto lavorando su una singola pagina fatta a "blocchi".
I blocchi sono 2 che chiamerò BLOCCO 1 e BLOCCO 2.
La prima volta che accedo alla pagina setto una variabile Posto = 1 in sessione.
Accedo al BLOCCO 1 (Il BLOCCO 2 non è visibile).
Dal BLOCCO 1 l'utente compila una form.
All'invio della form setto Posto = 2 nella sessione.
La form viene spedita sulla stessa pagina.
Si accede al BLOCCO 2 (Il BLOCCO 1 non è più visibile).
Nel BLOCCO 2 vengono visualizzati i dati raccolti dal form.
Fino a qua tutto bene.
Il problema mi si presenta al momento che l'utente va indietro con il tasto del browser (visualizza ancora il BLOCCO 1) e quindi ricompila e invia la form.
Vorrei forzare la scadenza della pagina per evitare la "rivisualizzazione" del BLOCCO 1 (ed credo di avere usato quanto necessario) ma ciò non impedisce che l'utente possa andare indietro.
Sicuramente qualcosa mi sfugge. Potete aiutarmi?
Ecco il codice della pagina:
________________ ProvaScadenza.asp _________________________
<%@ Language=VBScript %>
<% '*********GESTIONE DELLA CACHE*********
response.expires = -1500
response.AddHeader "PRAGMA", "NO-CACHE"
response.CacheControl = "PRIVATE"
'************************************** %>
<% ' TUTTE LE OPERAZIONI VENGONO ESEGUITE SULLA STESSA PAGINA.
'SE "POSTO" NELLA SESSIONE E' VUOTA LA IMPOSTO A 1
If isNull(Session("Posto")) OR Session("Posto") = 0 Then
Session("Posto") = 1
End If
%>
<% 'NEL SECONDO PASSAGGIO SULLA PAGINA VERIFICO SE SONO PASSATI
'I DATI DEL FORM. SE SI, SETTO "POSTO" NELLA SESSIONE A 2
If Request.Form("dato1") <> "" Then
Session("Posto") = 2
End If
%>
<html>
<head><title>ProvaScadenza</title></head>
<body bgcolor="#ffffff">
Tutte le operazioni sono eseguite all'interno di questa
stessa pagina (provaScadenza.asp)
<% 'INIZIO BLOCCO 1
If Session("Posto") = 1 Then %>
Sono al BLOCCO 1.
Session("Posto") = <%=Session("Posto")%>
<form name="frm" method="post" action="ProvaScadenza.asp">
<input size="10" name="dato1" value="">
<input type="submit" value="Invia">
</form>
<% End If 'FINE BLOCCO 1 %>
<% 'INIZIO BLOCCO 2
If Session("Posto") = 2 Then %>
Sono al BLOCCO 2.
Session("Posto") = <%=Session("Posto")%>
Dato 1 = <%=Request.Form("dato1")%>
Dato 2 = <%=Request.Form("dato2")%>
<% End If 'FINE BLOCCO 2 %>
</body>
</html>
__________________________________________________ _________________
Questa è la situazione. Ho provato a replicare il tutto lavorando su due pagine senza usare le sessioni ma il problema è sempre lo stesso.
Qualcuno mi dice come fare? Intanto grazie per la pazienza!!!

Rispondi quotando
