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
%>
