Felet jag får nu är Empty connection string Du skapar ju 'conn' om Request.Querystring("do") inte är = "", alltså kan du ju endast stänga 'conn' om Request.Querystring("do") inte är = ""... tack....formuläret är bra nu men när jag ska logga in så får jag bara hmm.. myzko.. Nu verkar det funka, tog bort RecSet eftersom jag redan hade RS och den Dim-ade jag RS och SQLVad är det för fel med inloggningen?
<%
If Request.Querystring("do") = "" Then
'Vi visar formuläret
%>
<html>
<head><title>www.webbisen.com</title>
<!-- #include file="include/db-conn/conn-strings/mysql.inc" -->
</head>
<BODY>
<table>
<tr>
<td valign="top">
<div id=Small-Text>
<form action="login.asp?do=login" method="post">
<input type="text" name="anvnamn" value=""><br>
<input type="password" name="losen" value=""><br>
<input type="submit" name="LogIn" value="Logga in">
</form>
</div>
</td>
</tr>
<table>
<%
Dim RS, SQL
ElseIf Request.Querystring("do") = "login" Then
'Användaren vill logga in
'Vi kollar efter användarnamn och lösenord
Set conn = Server.CreateObject("ADODB.Connection")
Set RS = Server.CreateObject("ADODB.RecordSet")
conn.Open connstr
SQL = "SELECT anvnamn, losen FROM login WHERE anvnamn = '" & _
Request.Form("anvnamn") & "' AND losen = '" & _
Request.Form("losen") & "'"
Set RS = Conn.Execute(SQL)
'RS.Open SQL, conn, 1, 3, 1
If RS.EOF THEN
'Felaktig inloggning
Response.Redirect "login.asp?do=error&anvnamn=" & ("anvnamn") & "&losen=" & ("losen") & ""
Else
Session("inloggad") = "True"
Session ("anvnamn") = Request.Form("anvnamn")
'conn.Execute("Update anvnamn SET Status = (Status + 0.10) WHERE anvnamn = ' " & Request.Form("anvnamn") & " ' ")
Response.Redirect "login.asp?do=inloggad"
End If
Set RS = Nothing
RS.Close
conn.Close
Set conn = Nothing
%>
</BODY>
</html>
<% End If %>
<%
If Request.Querystring("do") = "error" Then
'Vi visar formuläret
%>
<html>
<head>
<title>Error</title>
<body>
Nåt gick snett
</body>
</html>
<%End If%>
<%
If Request.Querystring("do") = "inloggad" Then
'Användare är inloggad
%>
<html>
<head>
<title>Du är inloggad </title>
<body>
Du är nu inloggad
</body>
</html>
<%End If%>Sv: Vad är det för fel med inloggningen?
Är du med?
testa detta:
<code>
<%
Else
'Användaren vill logga in
'Vi kollar efter användarnamn och lösenord
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open connstr
Set RS = Server.CreateObject("ADODB.RecordSet")
Set RecSet = Server.CreateObject("ADODB.RecordSet")
SQL = "SELECT anvnamn,losen FROM login WHERE anvnamn = '" & _
Request.Form("anvnamn") & "' AND losen = '" & _
Request.Form("losen") & "'"
Set RecSet = Conn.Execute(SQL)
If RecSet.EOF THEN
'Felaktig inloggning
Response.Redirect "login.asp"
'Else
'Session("inloggad") = "True"
'Session ("anvnamn") = Request.Form("anvnamn")
'Conn.Execute("Update anvnamn SET Status = (Status + 0.10) WHERE anvnamn = ' " & Request.Form("anvnamn") & " ' ")
'Response.Redirect "Admins.asp"
End If
conn.Close
RecSet.Close
RS.Close
Set Conn = Nothing
End If
%>
</code>Sv: Vad är det för fel med inloggningen?
ADODB.Recordset.1 error '800a0e78'
Invalid operation on closed object
/asp/login.asp, line 54
Rad 54 är RecSet.Close Sv: Vad är det för fel med inloggningen?
ja ser inte vad du ska ha 'RS' till, men testa detta då:
<code>
<BODY>
<%
If Request.Querystring("do") = "" Then
'Vi visar formuläret
%>
<table>
<tr>
<td valign="top">
<div id=Small-Text>
<form action="login.asp?do=login" method="post">
<input type="text" name="anvnamn" value=""><br>
<input type="password" name="losen" value=""><br>
<input type="submit" name="LogIn" value="Logga in">
</form>
</div>
</td>
</tr>
<table>
<%
Else
'Användaren vill logga in
'Vi kollar efter användarnamn och lösenord
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open connstr
Set RS = Server.CreateObject("ADODB.RecordSet")
Set RecSet = Server.CreateObject("ADODB.RecordSet")
SQL = "SELECT anvnamn,losen FROM login WHERE anvnamn = '" & _
Request.Form("anvnamn") & "' AND losen = '" & _
Request.Form("losen") & "'"
RecSet.Open SQL, conn, 1, 3, 1
If RecSet.EOF THEN
'Felaktig inloggning
Response.Redirect "login.asp"
'Else
'Session("inloggad") = "True"
'Session ("anvnamn") = Request.Form("anvnamn")
'Conn.Execute("Update anvnamn SET Status = (Status + 0.10) WHERE anvnamn = ' " & Request.Form("anvnamn") & " ' ")
'Response.Redirect "Admins.asp"
End If
RS.Close
RecSet.Close
conn.Close
Set Conn = Nothing
End If
%>
</BODY>
</code>
här e en bra länk också: (http://authors.aspalliance.com/aspxtreme/ado/index.aspx)Sv: Vad är det för fel med inloggningen?