Jag håller på med ett litet inloggningsscript men jag kommer inte på något bra sätt att kolla om användarnamnet som användaren knappar in finns i databasen och sedan ska det kollas om lösenordet är rätt.
Finns det någon som vet hur man kan göra detta?
Tacksam för svar.
//Peter
Det blev en lite tokig rubrik. Vet inte vad jag tänkte på... och den går ju tyvärr inte att ändra på....
SQL2 = "SELECT * FROM Login Where Login = '" & Request.Form("Login") & "'"
Set ideller = Connection.Execute(SQL2)
' Om login namn inte finns så omdirigiera till login.asp
if ideller.BOF AND ideller.EOF then
Response.Redirect("status.asp")
else
passwordchk = StrComp(Request.Form("Password"), ideller("Password"),0)
' är dom lika blir det en 0:a
' är strängarna tex brimba / Brimba blir det en 1:a
if passwordchk=1 Then
Response.Redirect("status.asp")
else
Efter else så gör du ju det som skall hända om allting är korrekt.
sen gör du ju helt enkelt en fil som heter status.asp
där du lägger in informationen som visar att användaren har matat in fel information.
Du kanske även bör lägga in en funktion som kollar strängarna från request.form(login) och request.form(password) så inte han försöker skicka med kod eller så.
StrComp jämnför altså om strängarna är EXAKTA.
Dvs om du inte vill att den skall kolla stora och små bokstäver skall du inte använda strcomp. Du kan använda strcomp på både lösenord och användarnamn om du vill det men i mitt exempel är det bara "case sensitive" på lösenordet.
Varför skall du lägga in lcase på båda två? Det resulterar ju att dom blir identiska, då behöver du inte ens ha strcomp. då räcker det ju om du skriver nått med
If Request.Form("Password") = ideller("Password") Then
bla bla
Else
End If
För förstår inte varför man först skall tvinga den till små bokstäver när man vet att det kommer vara lika, eftersom funktionen strcomp jämnför om man har använt stora/små bokstäver.