Jag försöker få exemplet "Inloggning mot databas" som finns här på sidan att fungera, men har stött på lite problem. Är det nån som vet vad jag gjort för fel? När jag skriver in user och password "jari" som finns i min databas, så kommer följande meddelande: Testa: Jag provade ditt tips och då fick jag ett annat fel! Byt ut: Jag provade det och nu körs texten "Din Har du bytt till denna raden? Ja, den ser ut så här:Problem med inloggning mot databas
Här är hela min kod:
--------------------------------------------------------------------------------
<%
' förbereder för en omdirigering
response.buffer = true
' ansluter till min datakälla
set con = Server.CreateObject("ADODB.Connection")
conStr = "Driver={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("databas.mdb")
con.open conStr
' vill användaren logga in?
action = Lcase(Request("action"))
Select Case Action
Case "login"
strUser = Request("username")
strPass = Request("password")
sql = "select * from tblUsers where " & "username = '" & strUser & "' " & "password = '" & strPass & "' "
' kör frågan mot tabellen
con.execute sql
' fick vi någon träff?
If Not (Rst.Eof or Rst.BOF) Then
' träff
LoginFlag = True
Else
' inga träffar
LoginFlag = False
End If
End Select
Set rst = Nothing
Set con = Nothing
If action = "login" And LoginFlag = True Then
' korrekt inloggning, gå till startsidan
Response.Redirect "mainpage.asp"
Else
' felaktig - då visar vi detta för användaren
End If
%>
<html>
<head>
<title>Inloggningsdemo</title>
</head>
<body>
<form method="POST" action="login.asp?action=login">
<table border="0" width="100%" cellspacing="0" cellpadding="0">
<% If action = "login" And LoginFlag = False Then %>
<tr>
<td width="70%" colspan="2"><font face="Verdana" size="1"><b>Din
inloggning misslyckades, försök igen!</b></font></td>
</tr>
<% End If %>
<tr>
<td width="20%" valign="top"><font face="Verdana" size="1"><b>Användarnamn</b></font></td>
<td width="80%" valign="top"><font face="Verdana" size="1">: <input type="text" name="username" size="20"></font></td>
</tr>
<tr>
<td width="20%" valign="top"><font face="Verdana" size="1"><b>Lösenord</b></font></td>
<td width="80%" valign="top"><font face="Verdana" size="1">: <input type="text" name="password" size="20"></font></td>
</tr>
</table>
<p><input type="submit" value="Logga in" name="B1"></p>
</form>
</body>
</html>
------------------------------------------------------------------------------
Tack på förhand
/DanielSv: Problem med inloggning mot databas
-------------------------------------------------------------------------
Microsoft OLE DB Provider for ODBC Drivers error '80040e14'
[Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in query expression 'username = 'jari' password = 'jari''.
/pro1999b/pro1999065/bokhandeln/login.asp, line 23
---------------------------------------------------------------------------
På rad 23 står följande: con.execute sql
MVH
/DanielSv: Problem med inloggning mot databas
sql = "select * from tblUsers where username = '" & strUser & "' AND password = '" & strPass & "'"
/JohanSv: Problem med inloggning mot databas
Så här såg felmeddelandet ut:
----------------------------------------------------------------
Microsoft VBScript runtime error '800a01a8'
Object required: ''
/pro1999b/pro1999065/bokhandeln/login.asp, line 27
----------------------------------------------------------------
På rad 27 står följande:
If Not (Rst.Eof or Rst.BOF) Then
MVH
/DanneSv: Problem med inloggning mot databas
con.execute sql
mot:
Set Rst = Server.CreateObject("ADODB.Recordset")
Rst.Open sql, con, 1, 2
Du måste öppna ett recordset för att kunna läsa data.
/JohanSv: Problem med inloggning mot databas
inloggning misslyckades, försök igen!" hela tiden, oavsett vad jag skriver in för nåt!!
/DanneSv: Problem med inloggning mot databas
sql = "select * from tblUsers where username = '" & strUser & "' AND password = '" & strPass & "'"
/JohanSv: Problem med inloggning mot databas
sql = "select * from tblUsers where username = '" & strUser & "' AND password = '" & strPass & "'"
/Danne