Avatar billede ossian Nybegynder
18. september 2002 - 13:56 Der er 12 kommentarer og
1 løsning

Login der redirecter til forskellige sider efter login-id?!?

Hej,

Nogle der kan hjælpe mig med et loginscript der redirecter folk alt efter hvilket login de har?!?
Avatar billede medions Nybegynder
18. september 2002 - 14:00 #1
<%
  arrLogins = Array("hans","rune","test")
  arrLocations = Array("default.asp","rune.asp","test")

  For i = 0 To UBound(arrLogins)
      If Request.Form("login") = arrLogins(i) Then
          Response.Redirect(arrLocations(i))
      End If
  Next
%>

//>Rune
Avatar billede mccannon Nybegynder
18. september 2002 - 14:02 #2
tjah
skulle da ikke være så svært

hvis der er en db med

IF trim(strLogin) <> ""  AND trim(strkodeord) <> "" THEN
    set Conn = Server.createobject("ADODB.Connection")
    Conn.open "Provider=Microsoft.jet.OLEDB.4.0;Data Source=" & server.mappath("database.mdb")
    Set RS = Server.createObject("ADODB.Recordset")
    SQL = "SELECT ID, Bruger_status  from tblbruger where Email = '" & strlogin & "'"
    SQL = SQL & " AND Adgangskode = '" & strkodeord  & "'"
 
    RS.open SQL,conn

    IF NOT RS.EOF THEN
    IF RS("Bruger_status") = 1 THEN
      RS.close
      Set RS = nothing
      Conn.close
      set Conn = nothing
      response.redirect "default.asp"
    END IF
    END IF
   
    IF NOT RS.EOF THEN
    IF RS("Bruger_Status") = 2 THEN
     
      RS.close
      set RS = nothing
      Conn.close
      set Conn = nothing
      response.redirect "default2.asp"
    END IF
    END IF
     
 
    IF NOT RS.EOF THEN
    IF RS("Bruger_status") = 3 THEN
      RS.close
      set RS = nothing
      Conn.close
      set Conn = nothing
      response.redirect "defailt3.aap"
    END IF
    END IF
Avatar billede mccannon Nybegynder
18. september 2002 - 14:03 #3
var metn som et svar :)
Avatar billede ossian Nybegynder
18. september 2002 - 14:09 #4
Ikk for at være besværlig :-) Det er ganske gode svar...Meeen jeg kan ikke lige overskue at føre det ind i det system jeg allerede bruger.. så hvis det kan køres sammen med denne kode så smider jeg gerne 40 point oveni :-)

her er koden:

<%
' Hvis der er blevet trykket på knappen "Login"
If Request.Form("Action") = "Login" Then
    ' Her forberedes de indtastede værdier til validering
    strUID = Trim(Replace(Request.Form("Brugernavn"),"'",""))
    strPWD = Trim(Replace(Request.Form("Adgangskode"),"'",""))

    ' Hvis der er skrevet noget i både brugernavn og adgangskode
    If Len(strUID) > 0 And Len(strPWD) > 0 Then

        ' DSNLess forbindelse til databasen
        Set myConn = Server.CreateObject("ADODB.Connection")
        myConn.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("ticket.mdb")

        ' Opbygning af SQL streng
        strSQL = "SELECT UserID FROM Users"&_
            " WHERE (Username = '" & strUID & "')"&_
            " AND (Password = '" & strPWD & "')"

        Set rs = myConn.Execute(strSQL)
        If Not (rs.BOF Or rs.EOF) Then
            ' Hvis brugeren fandtes i databasen
            intUID = rs("UserID")
        Else
            ' Hvis brugeren ikke fandtes i databasen
            strERR = "Du blev ikke godkendt af systemet"
        End If

        ' Rydder op i vores connection objekt
        myConn.Close
        Set myConn = Nothing

        If Len(intUID) Then
            ' Hvis variablen intUID indeholder en værdi sættes denne i sessionen "UserID" og brugeren bliver sendt videre
            Session("UserID") = intUID
            Response.Redirect("viewtickets.asp")
        End If
    Else
        ' Hvis der ikke var angivet brugernavn og adgangskode
        strErr = "Du skal skrive både brugernavn og adgangskode"
    End If

    If Len(strErr) > 0 Then
        ' Her laves fejlmeddelsen om til rød skrift
        strErr = "<p><font color=red>" & strErr & "</font></p>"
    End If
End If
%>
<html><head>
<title>Login script</title>
</head><body>
<form method="POST" action="login.asp">
  <p><font size="4">Angiv brugernavn og adgangskode</font></p><%=strErr%>
  <table border="0">
    <tr>
      <td width="50%">Brugernavn:</td>
      <td width="50%"><input type="text" name="Brugernavn" size="20"> (admin)</td>
    </tr>
    <tr>
      <td width="50%">Adgangskode:</td>
      <td width="50%"><input type="password" name="Adgangskode" size="20">
        (admin)</td>
    </tr>
  </table>
  <p><input type="submit" value="Login" name="Action"></p>
</form>
</body></html>


På forhånd tak :-)
Avatar billede ossian Nybegynder
18. september 2002 - 14:10 #5
det skal lige siges at feltet der angiver folks rettigheder hedder "level" i db'en :-)
Avatar billede mccannon Nybegynder
18. september 2002 - 14:12 #6
er det længden af det IntUid der afgør hvilken siden man skal sendes hen til ?
Avatar billede mccannon Nybegynder
18. september 2002 - 14:14 #7
ohh
If Not (rs.BOF Or rs.EOF) Then
            ' Hvis brugeren fandtes i databasen
            intUID = rs("UserID")
            Level = rs("level")
        Else
            ' Hvis brugeren ikke fandtes i databasen
            strERR = "Du blev ikke godkendt af systemet"
        End If

        ' Rydder op i vores connection objekt
        myConn.Close
        Set myConn = Nothing

        If Len(intUID) Then
            ' Hvis variablen intUID indeholder en værdi sættes denne i sessionen "UserID" og brugeren bliver sendt videre
            Session("UserID") = intUID
            If Level = 1 THEN
            Response.Redirect("viewtickets1.asp")
            elseif Level = 2 THEN
            Response.Redirect("viewtickets1.asp")
            END IF 
        End If
    Else
        ' Hvis der ikke var angivet brugernavn og adgangskode
        strErr = "Du skal skrive både brugernavn og adgangskode"
    End If

    If Len(strErr) > 0 Then
        ' Her laves fejlmeddelsen om til rød skrift
        strErr = "<p><font color=red>" & strErr & "</font></p>"
    End If
End If
%>
Avatar billede ossian Nybegynder
18. september 2002 - 14:15 #8
Nej...skulle jeg ikke mene...det script jeg har allerede har ikke indbygget mulighed for at sende folk forskellige steder efter levels...

:)
Avatar billede mccannon Nybegynder
18. september 2002 - 14:20 #9
oh husk lige at hente level ud fra db'en også :)
Avatar billede md_craig Nybegynder
18. september 2002 - 14:21 #10
hvad skriver du i level ???

du kan have en tabel ved siden af der holder de sider de forskællige levels svare til eller du kan skrive det direkte i level... der er masser af mugligheder...
Avatar billede ossian Nybegynder
18. september 2002 - 14:31 #11
hvordan giver jeg dig de xtra 40 point??
Avatar billede mccannon Nybegynder
18. september 2002 - 14:33 #12
umm opret et spørgsmål mere der svare til det her mere så svare jeg lige på det :)
Avatar billede mccannon Nybegynder
18. september 2002 - 16:22 #13
i guess not !
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester