webForumDet fria alternativet

anpassa loginscript för fler användare

ASP

12 svar · 1 479 visningar · startad av qwerty

Medlem sedan jan. 2001391 inlägg
Frågan#1

Jag har en inloggning som ser ut så här:

<%
Set Con = Server.CreateObject("ADODB.Connection")
path = "DBQ=" & ("c:\wwwroot\annonser\annonsering\annonser.mdb")
Con.Open "Driver={Microsoft Access Driver (*.mdb)};" & path," ",""

SQL= "SELECT ID, anvnamn, losenord FROM login"

RS = con.execute(SQL)

namn = rs("anvnamn")
ord = rs("losenord")

Session("inloggad") = ""

angNamn = request.form("anvnamn")
angOrd = request.form("losen")

If angNamn = namn AND angOrd = ord THEN

logininfo = true

Session("inloggad") = yes

response.write("Rätt lösenord. Du är nu inloggad<br>")
response.write("<a href=""admin.asp"">Klicka här</a> för att nå annonseringen.")

else

response.write("Något blev fel vid inloggningen.<br>")
response.write("<a href=""adminlogin.html"">Försök igen</a>")

end if

con.close
set rs = nothing
%>

...om jag nu skulle vilja lägga till fler användare i tabellen 'login'. Hur ska jag göra för även de ska komma in. Som det är nu funkar ju bara det namn som ligger överst i tabellen. ngn form av loop antar jag med är osäker på hur...

------------------
Qwerty

Den som provar han testar...

Medlem sedan aug. 2000234 inlägg
#2

Du kan hämta en specifik användare från databasen:

"SELECT ID, anvnamn, losen FROM login WHERE anvnamn = '" & request.form("username") & "';"

kolla så att inte rs.EOF har inträffat för då finns ingen användare. Finns det en användare, testa om lösenordet i request.form("password") är samma som det som hämtats från databasen (om det fanns nån att hämta).

Kanske fungerar...

Medlem sedan jan. 2001391 inlägg
#3

...ska testa

------------------
Qwerty

Den som provar han testar...

Medlem sedan juni 200032 967 inlägg
#4

om man nu kör en databas skall man givetvis jämföra både användarnamn och lösenord redan i sql-frågan.

strSQL = "select 1 from tblUsers where username = '" & strUserName & "' AND password = '" & strPassword & "'"
set objRs = objConn.execute(strSQL)
if objRS.eof then
'inloggningen misslyckades fett
else
'helt ok!
end if

nu förutsätter jag en hel del i koden, men jag kände mig bara tvungen att hojta lite här.

dessutom finns här på wf ett alldeles utmärkt inloggningsscript med upphovsman brw. så sök här i asp/vbscript på inloggning och brw, så hoppas jag du hittar vad du söker.

mvh,

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
can i borrow your goat?
</A>

Medlem sedan dec. 19995 874 inlägg
#5

@nders...

Om man vill att det skall vara skiftlägeskänsliga lösenord?
StrComp() finns ju i VB, men SQL?

------------------
Mvh
Patrik aka Brimba
<A HREF="http://www.brimba.nu/default.asp?oPID=poll&PollID=19" TARGET=_blank>Skulle du äta på restaurang, om det var rökförbud?
</A>Varför blir mina isbitar inte lika klara som i reklamen?

Medlem sedan juni 200032 967 inlägg
#6

inte en aning. jag jobbar med skiftlägeskänsliga databaser, men det kanske inte access är?

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
can i borrow your goat?
</A>

Medlem sedan dec. 19995 874 inlägg
#7

Nej i access är Anders det samma som anders

------------------
Mvh
Patrik aka Brimba
<A HREF="http://www.brimba.nu/default.asp?oPID=poll&PollID=19" TARGET=_blank>Skulle du äta på restaurang, om det var rökförbud?
</A>Varför blir mina isbitar inte lika klara som i reklamen?

Medlem sedan jan. 2001391 inlägg
#8

Nu ser scriptet ut så här:

Session("inloggad") = ""

angNamn = request.form("anvnamn")
angOrd = request.form("losen")

Set Con = Server.CreateObject("ADODB.Connection")
path = "DBQ=" & ("c:\wwwroot\platsannonser\annonsering\annonser.mdb")
Con.Open "Driver={Microsoft Access Driver (*.mdb)};" & path," ",""

SQL= "SELECT ID, anvnamn, losenord FROM login WHERE anvnamn = '" & angNamn & "' AND losenord = '"& angNamn & "'"

RS = con.execute(SQL)

if RS.eof then

response.write("N&aring;got blev fel vid inloggningen.<br>")
response.write("<a href=""adminlogin.html"">F&ouml;rs&ouml;k igen</a>")

else

logininfo = true
Session("inloggad") = yes

response.write("R&auml;tt l&ouml;senord. Du &auml;r nu inloggad<br>")
response.write("<a href=""admin.asp"">Klicka h&auml;r</a> för att n&aring; annonseringen.")

end if
con.close
set rs = nothing
%>

men jag får fellmess:

Object doesn´t support this property or method: 'eof'

------------------
Qwerty

Den som provar han testar...

Medlem sedan juni 200032 967 inlägg
#9

ändra

RS = con.execute(SQL)

till

SET RS = con.execute(SQL)

du måste använda Set när vi pratar objekt.

mvh,

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
can i borrow your goat?
</A>

Medlem sedan jan. 2001391 inlägg
#10

Jag ändrade till set.
Det verkar dock som jag har gjort något mer fel. Nu kommer jag inte inte med något av de användarnamn och lösenord som finns i tabellen 'login'. Dock inga felmess längre.

------------------
Qwerty

Den som provar han testar...

Medlem sedan jan. 2001391 inlägg
#11

Jag fick i gång det!
Ta en titt i SQL-frågan så förstår ni vad som var fel!!

------------------
Qwerty

Den som provar han testar...

Medlem sedan juni 200032 967 inlägg
#12

:)

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
can i borrow your goat?
</A>

Medlem sedan aug. 2000234 inlägg
#13

klart du har rätt @nders. Man kollar i SQL frågan direkt. Måste sovit när jag skrev... :)

261 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
131 ms — deklarationer (db)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)