Avatar billede cesil Nybegynder
09. december 2002 - 11:36 Der er 9 kommentarer og
1 løsning

login function

Hej Eksperter

Jeg har lavet den her login function:

Function Login(oConn,RootID,Username,Password)
Dim oRs,oRs1
   
Set oRs = oConn.Execute("SELECT ID,RootID FROM NetsiteUsers WHERE Active=1 AND RootID=" & RootID & " AND Username='" & Replace(Username,"'","''") & "' AND Password='" & Replace(Password,"'","''") & "'")

Set oRs1 = oConn.Execute("SELECT username FROM MAX_SPONSORPASS WHERE username='" & Replace(Username,"'","''") & "' AND Password='" & Replace(Password,"'","''") & "'")

    If NOT oRs1.eof then
        Session("SponsorID") = oRs1("username")
        Login = "OK"
        Session("Level") = 1
    ElseIf Not oRs.EOF Then
        Session("NetsiteUserID") = oRs("ID")
        Session("NetsiteRootID") = oRs("RootID")
        Login = "OK"
        Session("Level") = 2
    else
        Session.Abandon
        Login = "Access Denied"
    End If
    oRs.Close
    Set oRs = Nothing
    oRs1.Close
    Set oRs1 = Nothing
End Function

Hvis jeg logger ind som sponsor(oRs1) med fx. 1234, 1234  så sker der ikke en skid. Hvis jeg derimod først logger ind som administrator(oRs), med fx admin, admin, som går godt, logger af og logger på igen som sponsor så kan jeg godt logge på.

Hvad skyldes det?
Avatar billede dgivoni Nybegynder
09. december 2002 - 11:57 #1
hvordan logger du af?
Avatar billede cesil Nybegynder
09. december 2002 - 12:23 #2
Bare et link til loginsiden.
Det har ikke noget med det at gøre, tror jeg. Hvis jeg logger på som sponsor første gang jeg kommer ind på login siden kan jeg ikke logge på.
Avatar billede dgivoni Nybegynder
09. december 2002 - 12:49 #3
Det jeg umiddelbart tror, er at du ikke faar logget ordentligt af, for ellers skulle et login ikke paavirke et andet.
Og naar jeg ser paa din funktion, saa er det jo kun hvis den ikke finder brugeren i databasen, at den logger af.
Avatar billede cesil Nybegynder
09. december 2002 - 12:58 #4
Jo, men hvis jeg åbner en frisk browser og prøver at logge på som sponsor, fx med 1234, 1234 så får jeg ingen adgang.
Hvis jeg så prøver at logge som administrator med fx admin, admin så ryger jeg lige igennem.
Jeg kan ikke logge ind som sponsor uden først at ha logget ind som administrator.
Avatar billede dgivoni Nybegynder
09. december 2002 - 13:03 #5
det lyder lidt underligt???
og du har tjekket at sponsorlogin-data'ene er i den tabel du tester paa?
gider du poste din login-side ogsaa?
Avatar billede cesil Nybegynder
09. december 2002 - 13:11 #6
ja, hvis jeg først logger ind som adm er der jo ingen problemer.
Er det noget med brugernavn der i det ene tilfælde er tal og i det andet bogstaver.
Jeg har prøvet at bytte rundt på mine query's og andre mærkelige ting. Alt med samme resultat.

<table border="0" bgcolor="#52585F" width="300" height="150">
  <tr>
    <td bgcolor="#7C848C" align="center" height="10"><b><font face="Verdana" color="#FFFFFF" size="1">
    Login</font></b></td>
  </tr>
  <tr>
    <td bgcolor="#CAD3DC" align="center">&nbsp;<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" id="AutoNumber1">

      <input type="hidden" name="ID" value="1">
      <tr>
        <td width="50%"><font face="Verdana" size="1">Username:</font></td>
        <td width="50%"> <input type="text" name="username" style="font-family: Verdana, Arial; font-size: 10" size="18"></td>
      </tr>
      <tr>
        <td width="50%">
    <font face="Verdana" size="1">Password:</font></td>
        <td width="50%"> <input type="password" name="password" style="font-family: Verdana, Arial; font-size: 10" size="18"></td>
      </tr>
    </table>
    <p>
    <font face="Verdana" size="1">&nbsp;</font> <input type="image" src="images/loginkanp1.jpg" onmouseout="java script:mouseoutHandler(1);" onmouseover="java script:mouseoverHandler(1);" name="login" id="login"></td>
  </tr>
 
</table>
Avatar billede dgivoni Nybegynder
09. december 2002 - 13:12 #7
hvordan er brugernavns-feltet defineret i databasen?
for hvis du sammenligner en string med et tal, saa er det jo ikke ens, selv om det er 1234
Avatar billede dgivoni Nybegynder
09. december 2002 - 13:17 #8
jeg kan ikke lige se noget forkert der.
hvad med koden, der hvor du tjekker om man er logget ind eller ej?
Avatar billede cesil Nybegynder
09. december 2002 - 13:32 #9
If IsNumeric(Request("ID")) AND (Not Request("ID")="") Then
    If Len(Request("PassWord"))>0 AND Len(Request("Username"))>0 THEN
        If Login(oConn,Request("ID"),Request("Username"),Request("PassWord"))="OK" Then
          if Request("PassWord")="fggffdk" and Request("Username")="sdfghhhh" then
              Response.Redirect("gb/Desktop.asp")
          else
              Response.Redirect("gb/max/default.asp")
          end if
        Else
          Response.Redirect("Login.asp")
        End If
    Else
        If Len(Request("PassWord"))=0 AND Len(Request("Username"))>0 THEN
            Set oRs2 = oConn.Execute("SELECT employeenumber FROM MAX_SPONSOR1 WHERE username='" & Replace(Request("Username"),"'","''") & "'")
            if oRs2.eof=false then
                response.redirect("login.asp?mode=newpass&n=" & oRs2("employeenumber"))
            else
                Response.Redirect("Login.asp")
            end if
        else
            Response.Redirect("Login.asp")
        end if
      End If
Else
    renderUserPass
    'renderRoot
End If

Response.Flush
Response.End
oConn.Close
Set oConn = Nothing
Avatar billede cesil Nybegynder
12. december 2002 - 14:07 #10
Den her er opgivet
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