Avatar billede rickie Juniormester
04. december 2002 - 13:48 Der er 1 løsning

If satser

Hej Eksperter!

Er der nogen som kan hjælpe mig med dette?

Det er sådan, at jeg har en loginside som virker godt nok men jeg vil også have, at såfremt en bruger logger ind med et bestæmt brugernavn og kode så bliver han "admin" og skal så kunne se alle datafelter fra databasen.
Brugerne kan kun se sine egne data - det virker godt nok.

Jeg ved ikke om det er noget som man "bare lige laver" men om der findes nogen derude som har lyst så er det en stor hjælp!

Med venlig hilsen
Rickie

Koden for login ser således ud
------------------------------

<%Session.LCID = 1053%>
<!-- #include file="tillbehor.asp" -->

<html>
<head>
<title><%=titel%></title>
<link href="color_red/style.css" rel="stylesheet" type="text/css">
</head>

<body>

<%If Request.QueryString("action") = "" Then%>

<table border="0" cellpadding="1" cellspacing="0" width="500">

<form name="form" method="post" action="default.asp?action=loggain">

    <tr>
        <td width="25%">Användarnamn:</td>
        <td width="75%"><input type="text" name="anvandarnamn"></td>
    </tr>

    <tr>
        <td width="25%">Lösenord:</td>
        <td width="75%"><input type="password" name="losenord"></td>
    </tr>

    <tr>
        <td width="25%">&nbsp;</td>
        <td width="75%"><input type="submit" name="loggain" value="Logga In"></td>
    </tr>

<tr>
        <td colspan="2">

        </td>
    </tr>

</form>

</table>

<%End If%>

<%If Request.QueryString("action") = "loggain" Then%>

<%
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "Driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("data/members.mdb")&""
Set RecSet = Server.CreateObject("ADODB.Recordset")

Addera = "Select * From members"
RecSet.Open Addera, Connect, 1, 2

Do Until RecSet.EOF

If LCase(RecSet("anvandarnamn")) = LCase(Request.Form("anvandarnamn")) And RecSet("losenord") = Request.Form("losenord") then

RecSet("datum") = Now
RecSet.Update

Session("anvandarnamn") = RecSet("anvandarnamn")
Session("losenord") = RecSet("losenord")
Session("fornamn") = RecSet("fornamn")
Session("efternamn") = RecSet("efternamn")
Session("adress") = RecSet("adress")
Session("postnummer") = RecSet("postnummer")
Session("ort") = RecSet("ort")
Session("hemtelefon") = RecSet("hemtelefon")
Session("mobiltelefon") = RecSet("mobiltelefon")
Session("id") = RecSet("id")
Session("email") = RecSet("email")
Session("hemsida") = RecSet("hemsida")
Session("meddelande") = RecSet("meddelande")
Session("ip") = RecSet("ip")
Session("datum") = RecSet("datum")
Session("loggain") = "& kolla &"

Session.TimeOut = 60

RecSet.Close
Connect.Close
Set RecSet = nothing
Set Connect = nothing
       
Response.Redirect "hem.asp"

End If

RecSet.MoveNext
Loop

RecSet.Close
Connect.Close
Set RecSet = nothing
Set Connect = nothing
%>

<%End If%>

<%If Request.QueryString("action") = "loggaut" Then%>
<%
Session.Abandon

Response.Redirect "default.asp"
%>
<%End If%>

</body>
</html>
Avatar billede stormlic Nybegynder
04. december 2002 - 14:48 #1
Hvorfor lader du ikke basen tjekke om brugernavn og password er korreke?
Prøv med:

SELECT * FROM members WHERE losenord = " & Request.Form('losenord') & " AND anvandarnamn = " & LCase(Request.Form('anvandarnamn'))

IF RecSet.EOF THEN
  'giv en fejl meddelese
ELSE
  'giv brugeren adgang....  set session-variabler etc.
END IF
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