Hej!
Jag har strulat till det ganska rejält här, men jag hoppas att någon kan hjälpa mig!
Koden ska kontrollera dubbletter i databasen när man ska lägga in en ny post...
<%
strNamn = Request.Form("NAMN")
strNamn2 = Request.Form("NAMN2")
Set minConn = Server.CreateObject("ADODB.Connection")
Set rs = Server.CreateObject("ADODB.Recordset")
MdbFilePath = Server.MapPath("databas.mdb")
minConn.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & MdbFilePath & ";"
' Kolla om det finns en dubblett.
SQL1 = "Select * From TABELL Where NAMN='" & strNamn & "' & " & " NAMN2 ='" & strNamn2 & "'"
rs.Open SQL1, minConn, 1, 2
If rs.EOF Then
' Ingen dubblett hittad...lägg till i databasen.
SQL2 = "Select * From TABELL Where 1=2"
' Rad 30 nedan
rs.Open SQL2, minConn, 1, 2
rs.AddNew
rs("NAMN") = strNamn
rs("NAMN2") = strNamn2
rs.Update
rs.Close
Response.Write "<b>Namnet inlagt i databasen.</b>"
Else
%>
Namnet "<%= strNamn %> <%= strNamn2 %>" finns redan i databasen.
<a href="javascript:history.back(-1)">Tillbaka till lägg-till-formuläret.</a>
<% End If %>
Här är felmeddelandet:
ADODB.Recordset fel '800a0e79'
Åtgärden som programmet begärt är inte tillåten om objektet är öppet.
/set/add2.asp, rad 30
Prova med det här... Du kan inte öppna ett redan öppet recordset, det gör du på rad 30...
<%
strNamn = Request.Form("NAMN")
strNamn2 = Request.Form("NAMN2")
Set minConn = Server.CreateObject("ADODB.Connection")
Set rs = Server.CreateObject("ADODB.Recordset")
MdbFilePath = Server.MapPath("databas.mdb")
minConn.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & MdbFilePath & ";"
' Kolla om det finns en dubblett.
SQL1 = "Select * From TABELL Where NAMN='" & strNamn & "' AND NAMN2 ='" & strNamn2 & "'"
rs.Open SQL1, minConn, 1, 2
If rs.EOF Then
' Ingen dubblett hittad...lägg till i databasen.
SQL2 = "INSERT INTO TABELL(NAMN, NAMN2) VALUES('" & strNamn & "','" & strNamn2 & "')"
minConn.Execute SQL2,,128
Response.Write "<b>Namnet inlagt i databasen.</b>"
Else
%>
Namnet "<%= strNamn %> <%= strNamn2 %>" finns redan i databasen.
<a href="java script:history.back(-1)">Tillbaka till lägg-till-formuläret.</a>
<%
End If
rs.Close%>