Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Far scadere una session

    Un saluto a tutto il forum.
    Mi si presenta questo problema:
    devo far accedere con una password alcuni utenti registrati ad una pagina dalla quale possono effettuare una prenotazione . L'accesso (oltre che col login) può essere effettuato solo in una determinata data e da una determinata ora X e fino ad un'ora Y diverse ogni utente.
    Esempio:
    l'utente Paolo Rossi può accedere con la password "R8O3S4S6I" il giorno 05/03/2009 dalle 12,01 alle 12,30
    l'utente Mario Verdi può accedere con la password "V79E9RD0I" il giorno 05/03/2009 dalle 12,31 alle 13,00
    e così di seguito.
    Fino a qui tutto OK, ma la mia domanda è:
    come faccio a fare in modo che, se l'utente Paolo Rossi si connette alle 12,05 o alle 12,15 o alle 12,28 (cioè se si connette in qualunque momento della mezz'ora a lui riservata), la sessione scada comunque e sempre alle 12,30 cioè allo scadere del suo tempo limite?
    Spero di essermi spiegato bene.
    Il controllo dell'autenticazioner nella pagina login.asp lo faccio così:
    codice:
    Dim autenticato
    if rs.eof then
      autenticato = false
    else
      autenticato = true
    end if
    if autenticato = true and data1 = date()and ora1 <= Time() and ora2 >= Time() then
      Session("Autenticato") = "OK"
    
       Response.Redirect("prenotazioni_cartina.asp?Id="&cod)
    
    else
      Response.Redirect("index_login1.asp")
    end if
    mentre nella pagina prenotazioni_cartina.asp ho:
    codice:
     <%
    if Session("Autenticato")<>"OK" then
      Response.Redirect("index_login1.asp")
    end if
    %>
    Grazie e buona giornata a tutti voi

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Dove scrivi l'ora riservata a ciascuno? Nel db?
    Quando l'utente si connette verifichi che ci sia l'orario riservato: se c'è attivi un'altra session che ti porti sempre dietro e ti serve per verificare che le operazioni avvengano nel range temporale riservato.
    Se non è più così fa scadere la session e lo fai uscire.
    Ci devi lavorare un po'.

    Roby

  3. #3
    Grazie Roby per la risposta,
    sì, le ore di inizio e fine le ho memorizzate nel db (access per il momento poi dovrei passare tutto in mysql).
    Il controllo delle date lo faccio già al momento dell'accesso:
    codice:
    if autenticato = true and data1 = date()and ora1 <= Time() and ora2 >= Time() then
      Session("Autenticato") = "OK"
    Riesco anche a portarlo nelle pagine successive, ma non riesco a capire come attivare l'altra session da portarmi dietro.
    Puoi darmi uno spunto?
    Grazie

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.