27. december 2001 - 11:15
Der er
3 kommentarer og 1 løsning
Indsæt data i database
Hej eksperter, jeg har et problem med at indsætte data i en access database. Under alle omstændigheder skal dataene indsættes i forumindlaeg. Men kun hvis feltet email er udfyldt i formem skal dataene indsættes i forummail. Indsættelsen i forumindlaeg virker fint, men når jeg forsøget at tilføje således at der også tilføjes noget til forummail får jeg følgende fejl: Microsoft JET Database Engine fejl \'80040e14\' Der er en syntaksfejl i INSERT INTO-sætningen. /forum/response.asp, linje 42 Koden ser således ud: <% Response.Cookies(\"12tri\")(\"navn\") = request.form(\"navn\") Response.Cookies(\"12tri\")(\"email\") = request.form(\"email\") Response.Cookies(\"12tri\").Expires = Date+365 function strCorrect(strInput) strCorrect = Replace(strInput, \"\'\", \"\'\'\") end function Set objConn = Server.CreateObject(\"ADODB.Connection\") conStr = \"Provider=Microsoft.Jet.OLEDB.4.0;\" %><!--#INCLUDE FILE=\"../include/db.inc\" --><% objConn.Open conStr strSQL = \"Insert into forumsvar (\" strSQL = strSQL & \"navn, \" strSQL = strSQL & \"mail, \" strSQL = strSQL & \"indlaegid, \" strSQL = strSQL & \"indhold, \" strSQL = strSQL & \"dato) \" strSQL = strSQL & \"values( \" strSQL = strSQL & \"\'\" & strCorrect(Request.form(\"navn\")) & \"\', \" strSQL = strSQL & \"\'\" & strCorrect(Request.form(\"email\")) & \"\', \" strSQL = strSQL & \"\'\" & strCorrect(Request.form(\"indlaegid\")) & \"\', \" strSQL = strSQL & \"\'\" & strCorrect(Request.form(\"besked\")) & \"\', \" strSQL = strSQL & \"\'\" & now() & \"\')\" objConn.Execute(strSQL) objconn.close set objconn = nothing if Request.form(\"email\") <> \"\" then Set objConn = Server.CreateObject(\"ADODB.Connection\") conStr = \"Provider=Microsoft.Jet.OLEDB.4.0;\" %><!--#INCLUDE FILE=\"../include/db.inc\" --><% objConn.Open conStr strSQL = \"Insert into forummail (\" strSQL = strSQL & \"navn, \" strSQL = strSQL & \"mail, \" strSQL = strSQL & \"indlaegid, \" strSQL = strSQL & \"values( \" strSQL = strSQL & \"\'\" & strCorrect(Request.form(\"navn\")) & \"\', \" strSQL = strSQL & \"\'\" & strCorrect(Request.form(\"email\")) & \"\', \" strSQL = strSQL & \"\'\" & strCorrect(Request.form(\"indlaegid\")) & \"\', \" objConn.Execute(strSQL) --à HER ER LINIE 42 ß-- objconn.close set objconn = nothing end if Response.Redirect \"show.asp?id=\" & Request.form(\"indlaegid\") %> Jeg er klar over at jeg kan undgå at åbne og lubbe forbindelsen til db’en, men jeg har gjort dette for at være sikker på at det ikke var her jeg lavede fejl. Håber nogen kan hjælpe Morten / morten@12tri.dk
Annonceindlæg fra Salesforce
27. december 2001 - 11:16
#1
--à HER ER LINIE 42 ß-- = --> HER ER LINIE 42 <--, jeg skrev indlæget i word, og kopierede det over, men det virker åbenbart ikke helt
27. december 2001 - 11:30
#2
Prøv dette... du havde glemt en ) i din SQL! <% Response.Cookies(\"12tri\")(\"navn\") = request.form(\"navn\") Response.Cookies(\"12tri\")(\"email\") = request.form(\"email\") Response.Cookies(\"12tri\").Expires = Date+365 function strCorrect(strInput) strCorrect = Replace(strInput, \"\'\", \"\'\'\") end function Set objConn = Server.CreateObject(\"ADODB.Connection\") conStr = \"Provider=Microsoft.Jet.OLEDB.4.0;\" %><!--#INCLUDE FILE=\"../include/db.inc\" --><% objConn.Open conStr strSQL = \"Insert into forumsvar (\" strSQL = strSQL & \"navn, \" strSQL = strSQL & \"mail, \" strSQL = strSQL & \"indlaegid, \" strSQL = strSQL & \"indhold, \" strSQL = strSQL & \"dato) \" strSQL = strSQL & \"values( \" strSQL = strSQL & \"\'\" & strCorrect(Request.form(\"navn\")) & \"\', \" strSQL = strSQL & \"\'\" & strCorrect(Request.form(\"email\")) & \"\', \" strSQL = strSQL & \"\'\" & strCorrect(Request.form(\"indlaegid\")) & \"\', \" strSQL = strSQL & \"\'\" & strCorrect(Request.form(\"besked\")) & \"\', \" strSQL = strSQL & \"\'\" & now() & \"\')\" objConn.Execute(strSQL) objconn.close set objconn = nothing if Request.form(\"email\") <> \"\" then Set objConn = Server.CreateObject(\"ADODB.Connection\") conStr = \"Provider=Microsoft.Jet.OLEDB.4.0;\" %><!--#INCLUDE FILE=\"../include/db.inc\" --><% objConn.Open conStr strSQL = \"Insert into forummail (\" strSQL = strSQL & \"navn, \" strSQL = strSQL & \"mail, \" strSQL = strSQL & \"indlaegid) \" strSQL = strSQL & \"values( \" strSQL = strSQL & \"\'\" & strCorrect(Request.form(\"navn\")) & \"\', \" strSQL = strSQL & \"\'\" & strCorrect(Request.form(\"email\")) & \"\', \" strSQL = strSQL & \"\'\" & strCorrect(Request.form(\"indlaegid\")) & \"\', \" objConn.Execute(strSQL) --à HER ER LINIE 42 ß-- objconn.close set objconn = nothing end if Response.Redirect \"show.asp?id=\" & Request.form(\"indlaegid\") %>
27. december 2001 - 11:33
#3
Der er faktisk flere fejl: <% Response.Cookies(\"12tri\")(\"navn\") = request.form(\"navn\") Response.Cookies(\"12tri\")(\"email\") = request.form(\"email\") Response.Cookies(\"12tri\").Expires = Date+365 function strCorrect(strInput) strCorrect = Replace(strInput, \"\'\", \"\'\'\") end function Set objConn = Server.CreateObject(\"ADODB.Connection\") conStr = \"Provider=Microsoft.Jet.OLEDB.4.0;\" %><!--#INCLUDE FILE=\"../include/db.inc\" --><% objConn.Open conStr strSQL = \"Insert into forumsvar (\" strSQL = strSQL & \"navn, \" strSQL = strSQL & \"mail, \" strSQL = strSQL & \"indlaegid, \" strSQL = strSQL & \"indhold, \" strSQL = strSQL & \"dato) \" strSQL = strSQL & \"values( \" strSQL = strSQL & \"\'\" & strCorrect(Request.form(\"navn\")) & \"\', \" strSQL = strSQL & \"\'\" & strCorrect(Request.form(\"email\")) & \"\', \" strSQL = strSQL & \"\'\" & strCorrect(Request.form(\"indlaegid\")) & \"\', \" strSQL = strSQL & \"\'\" & strCorrect(Request.form(\"besked\")) & \"\', \" strSQL = strSQL & \"\'\" & now() & \"\')\" objConn.Execute(strSQL) objconn.close set objconn = nothing if Request.form(\"email\") <> \"\" then Set objConn = Server.CreateObject(\"ADODB.Connection\") conStr = \"Provider=Microsoft.Jet.OLEDB.4.0;\" %><!--#INCLUDE FILE=\"../include/db.inc\" --><% objConn.Open conStr strSQL = \"Insert into forummail (\" strSQL = strSQL & \"navn, \" strSQL = strSQL & \"mail, \" strSQL = strSQL & \"indlaegid) \" strSQL = strSQL & \"values( \" strSQL = strSQL & \"\'\" & strCorrect(Request.form(\"navn\")) & \"\', \" strSQL = strSQL & \"\'\" & strCorrect(Request.form(\"email\")) & \"\', \" strSQL = strSQL & \"\'\" & strCorrect(Request.form(\"indlaegid\")) & \"\') \" objConn.Execute(strSQL) --à HER ER LINIE 42 ß-- objconn.close set objconn = nothing end if Response.Redirect \"show.asp?id=\" & Request.form(\"indlaegid\") %>
27. december 2001 - 11:50
#4
tak, jeg fandt selv fejlen, men du skal nok få point. Jeg endte med at have koden således, jeg fjernede feltet navn, da jeg ikke brugte det til noget: strSQL = \"Insert into forummail (\" strSQL = strSQL & \"mail, \" strSQL = strSQL & \"indlaegid) \" strSQL = strSQL & \"values( \" strSQL = strSQL & \"\'\" & strCorrect(Request.form(\"email\")) & \"\', \" strSQL = strSQL & \"\'\" & strCorrect(Request.form(\"indlaegid\")) & \"\')\" objConn.Execute(strSQL) Tak for hjælpen
Kurser inden for grundlæggende programmering