Du kan inte använda asp-variabler i databasen. Du måste lägga in värdena av variablerna i sql-frågan, inte namnen på variablerna.
Allå!
Så här ser koden ut:
If Request.Form("id")="main" Then
iRef_id = 0
Else
iRef_id = FixaTecken(TRIM(Request.Form("id")))
End If
sRubrik = FixaTecken(TRIM(Request.Form("Rubrik")))
sInlagg = FixaTecken(TRIM(Request.Form("Inlagg")))
sSignatur = FixaTecken(TRIM(Request.Form("Signatur")))
dDatum = Now
sIp = Request.Servervariables("REMOTE_ADDR")
Connect.Execute("Insert Into Forum(Ref_id, Rubrik, Inlagg, Signatur, Datum, Ip) Values(iRef_id, sRubrik, sInlagg, sSignatur, dDatum, sIp);")
Det här är vad som kommer ut om jag skriver ut alla variabler i den ordning de ligger:
0 Rubrik Inlägg Signatur 2005-07-08 20:42:17 127.0.0.1
Det här är felmeddelandet:
Feltyp:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E10)
[Microsoft][Drivrutin för ODBC Microsoft Access] För få parametrar angavs. 6 förväntades.
/public_html/s_forum_skriv.asp, line 48
line 48 är Connect.Execute-raden. Vad gör jag för fel? Alla 6 variabler är ju fyllda och ändå förväntas just 6 stycken.