Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa tarde se alguem me puder ajudar ficaria agradecido eu tenho uma pagina default onde entro num site via login e pass que o faço do seguinte modo:
Protected Sub ButtonEntrarBD_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles ButtonEntrarBD.Click
Dim conn As New SqlConnection(ConfigurationManager.ConnectionStrings("SLConnectionString").ToString)
Dim lgn = TextBoxLog.Text
Dim pwd = TextBoxPass.Text
Dim tipoutilizador As Integer
Dim nomeutilizador As String
Dim cmLoginExiste As SqlDataAdapter = New SqlDataAdapter("select * from UTILIZADORESAPLICACAO where LOGIN ='" & lgn & "' ", conn)
Dim cmPasswordExiste As SqlDataAdapter = New SqlDataAdapter("select NOME, ID_TIPOUTILIZADOR from UTILIZADORESAPLICACAO where LOGIN='" & lgn & "' And PASS='" & pwd & "'", conn)
conn.Open()
Dim dsLoginExiste As DataSet = New DataSet
Dim dsPasswordExiste As DataSet = New DataSet
cmLoginExiste.Fill(dsLoginExiste, "UTILIZADORESAPLICACAO")
cmPasswordExiste.Fill(dsPasswordExiste, "UTILIZADORESAPLICACAO")
Dim ctrLogin As Integer = dsLoginExiste.Tables("UTILIZADORESAPLICACAO").Rows.Count
Dim ctrPassword As Integer = dsPasswordExiste.Tables("UTILIZADORESAPLICACAO").Rows.Count
If (ctrLogin <> 0) And (ctrPassword <> 0) Then
tipoutilizador = dsPasswordExiste.Tables("UTILIZADORESAPLICACAO").Rows(0)("ID_TIPOUTILIZADOR")
nomeutilizador = dsPasswordExiste.Tables("UTILIZADORESAPLICACAO").Rows(0)("NOME")
Response.Write(tipoutilizador.ToString)
End If
conn.Close()
If TextBoxLog.Text = "" Or TextBoxPass.Text = "" Then
Message.InnerHtml = "<font size=1><b>Preencha todos os campos</b></font>"
Message.Style("color") = "red"
Else
If ctrLogin = 0 Then
Message.InnerHtml = "<font size=1 color=red><b>Login não existe</b></font>"
Else
If ctrPassword = 0 Then
'Session("Login") = lgn
Message.InnerHtml = "<font size=1 color=red><b>Password está errada Sr! : " & lgn & "</b></font>"
Else
Message.InnerHtml = "<font size=1 color=red><b>Password correcta!</b></font>"
[b]Session("Login") = lgn[/b]
' Session("NomeUtilizador") = nomeutilizador
Response.Redirect("default2.aspx")
End If
End If
End If
End Sub
o que eu pretendia era agora em todas as outras paginas que tenho fazer o teste se a sessao ainda esta activa e caso ela nao estivesse activa fazer um redirect para o default e logar-me outra vez, fico agradecido a quem me puder ajudar, desde ja o meu obrigadoobrigado por sua resposta tao rapida olhe de diga so entao se é assim que fica?
CODE
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If Session("Login") = Session.Timeout Then
Response.Redirect("default.aspx")
End If
End Sub
Obrigado pela ajuda
Quase isso, tente o seguinte:
If Session("Login") = false Then
Response.Redirect("default.aspx")
End If
Abraços...
obrigado e desculpe estar a incomoda-lo olhe mas nao esta funcionando nem com false nem coom true nao sabe como me ajudar agradecia
Mesmo não estando logado ele não redireciona?
Tenta acessar essa página sem fazer o login, eu acho que ele vai fazer o redirect.
Abraços...
quintelab obrigado pela sua ajuda se um dia você e qq outra pessoa precisar podem me contactar, como veem eu sou um iniciante na materia mas gosto de ajudar olhe eu resolvio o problema do seguinte modo:
CODE
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If Session("Login") = Nothing Then
Response.Redirect("Default.aspx")
End If
e penso estar a funcionar pois se estiver um tempo sem aceder à pagina e voltar a aceder ele afz um redirect acha q assim esta bem?? funcionar esta mas nao tenho a certeza se é correcto
A idéia esta correta também. http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif
Basta você fazer um if no PageLoad de todos os seus formulários verificando se a session existe.
Abraços...