Avatar billede tjensen Nybegynder
20. april 2003 - 09:24 Der er 3 kommentarer og
1 løsning

Hvor går det galt? Login system.

Jeg har lige brugt masser af tid på at lege med et login system, når man trykker på login, kommer man til start siden, hvilket man gerne skulle, vis man ikke havde et brugernavn og pass. Jeg bliver bare aldrig spurgt om navn og pass.

Jeg her en valideringsfil, som man bliver sendt vidre til sådan her:

<%
main = Request.QueryString("main")

    If main = "members" then
    %><!--#include virtual="/horup/members.asp"--><%
    ElseIf main = "person" then
    %><!--#include virtual="/horup/person.asp"--><%
    ElseIf main = "member" then
    Response.Redirect("validering.asp?funktion=member")
    ElseIf main = "admin" then
    Response.Redirect("validering.asp?funktion=admin")
    Else
    %><!--#include virtual="/horup/start.asp"--><%
    End If

%>

Og min validerings fil ser således ud:


<%@LANGUAGE="VBSCRIPT"%>

<%

funktion = Request.QueryString("funktion")

Select Case funktion

Case member

If Session("validering") = "validmember" then
    Response.Redirect("member.asp")
End If

If Request.QueryString("Submit") <> "" Then

brugernavn = Trim(Replace(Request.QueryString("brugernavn"),"'","''" ))
adgangskode = Trim(Replace(Request.QueryString ("adgangskode"),"'","''" ))

Set database = Server.CreateObject ("ADODB.Connection")
database.Open ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\inetpub\wwwroot\horup\cgi-bin\horup.mdb")

Set autoriseret = Server.CreateObject ("ADODB.Recordset")
autoriseret.Open "SELECT * FROM members WHERE brugernavn = '" & brugernavn & "' AND adgangskode = '" & adgangskode & "'", database

If Not autoriseret.EOF then
    Session("validering") = "validmember"
    If funktion = "member" then
    Response.Redirect("member.asp")
    End If
End If

End If

%>
<html>
<head>
<title>Validering</title>
</head>

<body bgcolor="#FFFFFF" text="#000000">
<form name="form1" method="get" action="">
<p><b>Member login</b></p>
  <p> Brugernavn:
  <input type="text" name="brugernavn">
  </p>
  <p>Adgangskode:
  <input type="password" name="adgangskode">
  <input type="submit" name="Submit" value="Login">
  </p>
  <input type="hidden" name="funktion" value="<% = funktion%>">
  <input type="hidden" name="id" value="<% = id%>">
</form>
</body>
</html>

<%
Case admin

If Session("validering") = "validadmin" then
    Response.Redirect("admin.asp")
End If

If Request.QueryString("Submit") <> "" Then

admin = Trim(Replace(Request.QueryString("admin"),"'","''" ))
password = Trim(Replace(Request.QueryString ("password"),"'","''" ))

Set database = Server.CreateObject ("ADODB.Connection")
database.Open ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\inetpub\wwwroot\horup\cgi-bin\horup.mdb")

Set autoriseret = Server.CreateObject ("ADODB.Recordset")
autoriseret.Open "SELECT * FROM admins WHERE admin = '" & admin & "' AND password = '" & password & "'", database

If Not autoriseret.EOF then
    Session("validering") = "validadmin"
    If funktion = "admin" then
    Response.Redirect("admin.asp")
    End If
End If

End If

%>

<html>
<head>
<title>Validering</title>
</head>

<body bgcolor="#FFFFFF" text="#000000">
<form name="form1" method="get" action="">
<p><b>Admin login</b></p>
  <p> Brugernavn:
  <input type="text" name="admin">
  </p>
  <p>Adgangskode:
  <input type="password" name="password">
  <input type="submit" name="Submit" value="Login">
  </p>
  <input type="hidden" name="funktion" value="<% = funktion%>">
  <input type="hidden" name="id" value="<% = id%>">
</form>
</body>
</html>

<%
Case Else

Response.Redirect("index.asp?main=start")

End Select
%>
Avatar billede erikjacobsen Ekspert
20. april 2003 - 09:32 #1
Case "member"
Avatar billede tjensen Nybegynder
20. april 2003 - 09:37 #2
Jo tak! Det var det!  Mener at html.dk gør forkert så, eller også er situation lidt anderledes.

http://www.html.dk/tutorials/asp/lektion6.asp

Point til Erik, hvis han da svare ;)
Avatar billede erikjacobsen Ekspert
20. april 2003 - 09:42 #3
html.dk er god nok - de viser kun eksemplet med tal - der skriver
man bare 117 hvis man mener det.

Point? Værdiløse ... ligegyldige ... nej tak :)
Avatar billede tjensen Nybegynder
20. april 2003 - 09:44 #4
Okay, så er jeg med... Lidt svært at vide som noob, når guide ikke fortæller forskel.  - Learn it the hard way!

:)
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