/ Forside/ Teknologi / Udvikling / ASP / Spørgsmål
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Login script - accepter tal!
Fra : emhauge
Vist : 538 gange
100 point
Dato : 11-12-09 08:06

Hej

Jeg har et ASP Script der fungere som et login system, det fungere fint når bare brugernavn og adgangskoden er bogstaver eller bogstaver og tal blandet - MEN hvis brugernavn og adgangskoden kun er tal går det galt.
Er der en der kan se fejlen:

//////////////////////////////////////////////////////////////////////////////////
<%
Dim adoCon
Dim strCon
Dim rsCheckUser
Dim strAccessDB
Dim strSQL
Dim strUserName

strUserName = Request.Form("txtUserName-licens")

strAccessDB = "user.mdb"

Set adoCon = Server.CreateObject("ADODB.Connection")

strCon = "DRIVER={Microsoft Access Driver (*.mdb)};uid=;pwd=letmein; DBQ=" & Server.MapPath(strAccessDB)

adoCon.Open strCon

Set rsCheckUser = Server.CreateObject("ADODB.Recordset")

strSQL = "SELECT tblUsers.Password, tblUsers.STATUS FROM tblUsers WHERE tblUsers.UserID ='" & replace(strUserName, "'", "''") & "'"

rsCheckUser.Open strSQL, strCon

If NOT rsCheckUser.EOF Then

If (Request.Form("txtUserPass-licens")) = rsCheckUser("Password") Then

Session("blnIsUserGood") = True

Session.Timeout = 60


if rsCheckUser("STATUS") = 0 then session("login")="0" 'admin
if rsCheckUser("STATUS") = 1 then session("login")="1" 'test
if rsCheckUser("STATUS") = 2 then session("login")="2" 'DK1




Response.Redirect"index.asp?name=" & strUserName

End If
End If

Set adoCon = Nothing
Set strCon = Nothing
Set rsCheckUser = Nothing

Session("blnIsUserGood") = False

Response.Redirect"fejl.asp"
%>
/////////////////////////////////////////////////////////////////

håber der er hjælp at hente derude


/emhauge

 
 
Kommentar
Fra : smorch


Dato : 11-12-09 09:20

Så vidt jeg kan se har du her forskel på store og små bogstaver i brugernavn - det gør jo, at hvis jeg ved registreringen har skrevet sMorch så kan jeg ikke senere logge på med smorch.

Det tror jeg så ikke har noget med problemet at gøre men var bare en observation :)

Response.Redirect"index.asp?name=" & strUserName skal, da response.redirect() er en funktion, gerne have parenteser med :
Response.Redirect("index.asp?name=" & strUserName )

(har heller ikke noget med problemet at gøre :)

Hvorfor replace(strUserName, "'", "''") ? Hvorfor ikke replace(strUserName, "'", "") ?

/ eller:

Hvorfor udskifter du enkelt pling (') med dobbeltpling (") i et brugernavn ? Hvorfor ikke bare fjerne pling fuldstændigt? Hvis du indsætter dobbeltpling går sql forespørgslen galt på et tidspunkt.


Kommentar
Fra : emhauge


Dato : 11-12-09 09:28

Hej smorch

den fangede jeg ikke - hvad mener du lige med at fjern enkelt pling helt, så virker det vel slet ikke
/////
WHERE tblUsers.UserID ='" & replace(strUserName, "", "") & "'"
////

de andre ting har du ret i - dem ændre jeg med det samme

Kommentar
Fra : smorch


Dato : 11-12-09 10:49

Jeg ville bare ikke tillade hverken enkelt eller dobbelt pling i et brugernavn, og ville derfor fjerne det.

Kommentar
Fra : emhauge


Dato : 11-12-09 10:50

OK, - men har du et bud på hvordan jeg får den til at acceptere et brugernavn og password i rent tal-format?

/emhauge

Kommentar
Fra : smorch


Dato : 11-12-09 19:54

nix

Du har følgende muligheder
Dette spørgsmål er blevet annulleret, det er derfor ikke muligt for at tilføje flere kommentarer.
Søg
Reklame
Statistik
Spørgsmål : 177547
Tips : 31968
Nyheder : 719565
Indlæg : 6408797
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste