Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    reindirazzare in base all'utente

    Salve ragazzi, ho una pagina che gestisce l'autenticazione utente:
    Ho l'esigenza però di rendirazzare l'utente ad una pagina specifica a seconda dell'user inserito.
    Come devo procedere?

    <%@LANGUAGE="VBSCRIPT"%>

    <%
    ' *** Validate request to log in to this site.
    MM_LoginAction = Request.ServerVariables("URL")
    If Request.QueryString<>"" Then MM_LoginAction = MM_LoginAction + "?" + Server.HTMLEncode(Request.QueryString)
    MM_valUsername=CStr(Request.Form("user"))
    If MM_valUsername <> "" Then
    MM_fldUserAuthorization=""
    MM_redirectLoginSuccess="index.asp"
    MM_redirectLoginFailed="no_login.asp"
    MM_flag="ADODB.Recordset"
    set MM_rsUser = Server.CreateObject(MM_flag)
    MM_rsUser.ActiveConnection = MM_conn_copross_STRING
    MM_rsUser.Source = "SELECT utente, password"
    If MM_fldUserAuthorization <> "" Then MM_rsUser.Source = MM_rsUser.Source & "," & MM_fldUserAuthorization
    MM_rsUser.Source = MM_rsUser.Source & " FROM utenti WHERE utente='" & Replace(MM_valUsername,"'","''") &"' AND password='" & Replace(Request.Form("password"),"'","''") & "'"
    MM_rsUser.CursorType = 0
    MM_rsUser.CursorLocation = 2
    MM_rsUser.LockType = 3
    MM_rsUser.Open
    If Not MM_rsUser.EOF Or Not MM_rsUser.BOF Then
    ' username and password match - this is a valid user
    Session("MM_Username") = MM_valUsername
    If (MM_fldUserAuthorization <> "") Then
    Session("MM_UserAuthorization") = CStr(MM_rsUser.Fields.Item(MM_fldUserAuthorization ).Value)
    Else
    Session("MM_UserAuthorization") = ""
    End If
    if CStr(Request.QueryString("accessdenied")) <> "" And false Then
    MM_redirectLoginSuccess = Request.QueryString("accessdenied")
    End If
    MM_rsUser.Close
    Response.Redirect(MM_redirectLoginSuccess)
    End If
    MM_rsUser.Close
    Response.Redirect(MM_redirectLoginFailed)
    End If
    %>

  2. #2
    Aggiungi una colonna alla tbl del tuo db che gestisce gli accessi ed in questa colonna prevedi la pagina a cui devi reindirizzare l'utente quando si logga.

    Una volta loggato prevedi il response redirect.

  3. #3
    ma il response redirect lo inserisco nella pagina di login? Dove precisamente?

  4. #4
    Come ti diceva Vitacillina, la prima cosa da fare è quella di aggiungere nel database un campo dove andrai a memorizzare la pagina a cui verrà reindirizzato l'utente

    Mettiamo che il campo si chiami "homepage", il codice va modificato così:
    codice:
    <%@LANGUAGE="VBSCRIPT"%>
    
    <%
    ' *** Validate request to log in to this site.
    MM_LoginAction = Request.ServerVariables("URL")
    If Request.QueryString<>"" Then MM_LoginAction = MM_LoginAction + "?" + Server.HTMLEncode(Request.QueryString)
    MM_valUsername=CStr(Request.Form("user"))
    If MM_valUsername <> "" Then
    MM_fldUserAuthorization=""
    MM_redirectLoginSuccess="index.asp"
    MM_redirectLoginFailed="no_login.asp"
    MM_flag="ADODB.Recordset"
    set MM_rsUser = Server.CreateObject(MM_flag)
    MM_rsUser.ActiveConnection = MM_conn_copross_STRING
    MM_rsUser.Source = "SELECT utente, password, homepage"
    If MM_fldUserAuthorization <> "" Then MM_rsUser.Source = MM_rsUser.Source & "," & MM_fldUserAuthorization
    MM_rsUser.Source = MM_rsUser.Source & " FROM utenti WHERE utente='" & Replace(MM_valUsername,"'","''") &"' AND password='" & Replace(Request.Form("password"),"'","''") & "'"
    MM_rsUser.CursorType = 0
    MM_rsUser.CursorLocation = 2
    MM_rsUser.LockType = 3
    MM_rsUser.Open
    If Not MM_rsUser.EOF Or Not MM_rsUser.BOF Then
    ' username and password match - this is a valid user
    Session("MM_Username") = MM_valUsername
    If (MM_fldUserAuthorization <> "") Then
    Session("MM_UserAuthorization") = CStr(MM_rsUser.Fields.Item(MM_fldUserAuthorization).Value)
    Else
    Session("MM_UserAuthorization") = ""
    End If
    if CStr(Request.QueryString("accessdenied")) <> "" And false Then
    MM_redirectLoginSuccess = Request.QueryString("accessdenied")
    End If
    MM_rsUser.Close
    Response.Redirect(MM_rsUser("homepage"))
    End If
    MM_rsUser.Close
    Response.Redirect(MM_redirectLoginFailed)
    End If
    %>
    Home: http://www.ivansweb.com
    Le mie applicazioni gratuite in ASP
    · IWGallery
    · IWNewsletter
    · IWMessenger
    · IWGuestbook

  5. #5
    ho aggiunto il campo nel database, eseguo la pagina con il login, ma ricevo questo errore:

    ADODB.Recordset error '800a0cc1'

    Impossibile trovare l'oggetto nell'insieme corrispondente al nome o al numero richiesto.

    l'errore si riferisce a questa riga:
    Response.Redirect(MM_rsUser("homepage"))

  6. #6
    secondo me bisogna trovare il sistema di intercettare il record associato all'utente e di conseguenza reindirizzare alla pagina presente nel campo homepage. Ma come si fa????

  7. #7
    ho risolto, nella mia pagina avevo diemnticato di inserire nella select il campo contenente la pagina per il reindirizzamento...
    Grazie per l'aiuto

  8. #8
    adesso ho un altro problema. una volta autenticato, riesco però cambianto manualmente il parametro asp, a vedere i documenti degli altri comuni, e questo non deve succedere.
    Come risolvo l'inconveniente?

  9. #9

  10. #10
    ma per adattarlo al mio script?

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 © 2026 vBulletin Solutions, Inc. All rights reserved.