jag har följande kod. Mmm, Rst1("Id") är tomt - därför får du fel i nästkommande sql-sats. Ta alltid lärdom av att testa. Bygg hela sql-satsen och skriv ut den på skärmen så ser du vad som går fel och kan lätt ändra. och det p.ga exeucte som blev felstavast :-)Konstigt felmeddelande.
<code>
If Request.QueryString("Guest") = "True" Then
Set Con = Server.CreateObject("Adodb.Connection")
Con.open "Driver={Microsoft Access Driver (*.mdb)};Dbq=" & Server.MapPath("../../Db/Community.mdb") & ";"
Set Rst = Con.execute("Select * From User Where id='" & Session("Userid") & "'")
If not rst.eof Then
sql ="Insert Into Guestbook"
Sql = sql & "(FromUser,ToUser,Messages)"
Sql = Sql & "Values('" & Rst("User") & "','" & Request.QueryString("Userid") & "','" & Replace(Request.Form("Messages"),"'","'") & "')"
'Response.write SQL
If Request.Form("Messages") = "" Then
'inget vissas
'Response.write "Gästboks inlägget får inte vara null värde."
Else 'rad 36
Set Rst1 = Con.execute("Select * From inlogning Where Userid ='" & Replace(Request.QueryString("userid"),"'","''") & "'")
If Not Rst1.eof Then
'Response.write Rst1("Id")
Set Rst2 = Con.exeucte("update Inlogning Set Guestbook = Guestbook + 1 Where Id =" & Rst1("Id") &";")
Set Rst = Con.execute(sql)
Response.write "Gstboks inlgget r sparad!"
</code>
Men jag får felmeddelandet på rad 40.
på rad 40 har jag följande kod:
<code>
Set Rst2 = Con.exeucte("update Inlogning Set Guestbook = Guestbook + 1 Where Id =" & Rst1("Id") &";")
</code>
och felmeddelandet säger följande:
<code>
ADODB.Connection error '800a0bb9'
Arguments are of the wrong type, are out of acceptable range, or are in conflict with one another.
/user/guestbook.asp, line 40
</code>
Någon som kan se vad som är fel?
Alla tabeller och fältnamn stämmer.Sv: Konstigt felmeddelande.
Lycka tillSv: Konstigt felmeddelande.
Så smart när man inte ser det.
men ser det sen varför det är så.