28. februar 2001 - 17:20
Der er
16 kommentarer og 1 løsning
Opdater access database
Jeg vil gerne kunne opdatere mine poster i en access database online. Jeg kan godt lave det med at jeg fra en side klikker på den post jeg vil rette, og så få det vist i en formular, men det er når jeg skal have den til at opdatere access det knvier... Jeg har prøvet med følgende, men det virker ikke! <% if mode = \"update\" Then %> <% Set conn = Server.CreateObject(\"ADODB.Connection\") connString = \"Driver={Microsoft Access Driver (*.mdb)};DBQ=\" & Server.MapPath(\"sejs.mdb\") conn.open connString Set rs = Server.CreateObject(\"ADODB.Recordset\") sql = \"SELECT * FROM kal2 WHERE id =\" & id rs.open sql, conn, 1, 2 rs.Update rs(\"dag\") = Request.form(\"dag\") rs(\"dato\") = Request.form(\"dato\") rs.Update rs.Close Set rs = Nothing Conn.Close set Conn = Nothing %> <% end if %>
Annonceindlæg fra Deloitte
28. februar 2001 - 17:21
#1
<% if mode = \"update\" Then %> <% Set conn = Server.CreateObject(\"ADODB.Connection\") connString = \"Driver={Microsoft Access Driver (*.mdb)};DBQ=\" & Server.MapPath(\"sejs.mdb\") conn.open connString Set rs = Server.CreateObject(\"ADODB.Recordset\") sql = \"SELECT * FROM kal2 WHERE id =\" & id rs.open sql, conn, 1, 3 rs.Update rs(\"dag\") = Request.form(\"dag\") rs(\"dato\") = Request.form(\"dato\") rs.Update rs.Close Set rs = Nothing Conn.Close set Conn = Nothing %> <% end if %>
28. februar 2001 - 17:23
#2
hvorfor opdatere du foresten den 2 gange??
28. februar 2001 - 17:23
#3
den første rs.Update er vel ikke nødvendig, for du skal vel ikke opdatere 2 gange?+
28. februar 2001 - 17:26
#4
Som sagt jeg er ikke så stærk til det med updater eller asp i det hele taget, det jer har forsøgt at bruge er et jeg har taget fra et andet script
28. februar 2001 - 17:27
#5
nej du behøver ikke den første update...
28. februar 2001 - 17:28
#6
ok, så fjerner jeg rs.Update for dig: <% if mode = \"update\" Then %> <% Set conn = Server.CreateObject(\"ADODB.Connection\") connString = \"Driver={Microsoft Access Driver (*.mdb)};DBQ=\" & Server.MapPath(\"sejs.mdb\") conn.open connString Set rs = Server.CreateObject(\"ADODB.Recordset\") sql = \"SELECT * FROM kal2 WHERE id =\" & id rs.open sql, conn, 1, 3 rs(\"dag\") = Request.form(\"dag\") rs(\"dato\") = Request.form(\"dato\") rs.Update rs.Close Set rs = Nothing Conn.Close set Conn = Nothing %> <% end if %>
28. februar 2001 - 17:34
#7
Får følgende fejl: Microsoft OLE DB Provider for ODBC Drivers fejl \'80040e14\' [Microsoft][ODBC Microsoft Access-driver] Der er en syntaksfejl, fordi der mangler en operator. i forespørgselsudtrykket \"id =\". /spejder3/kal2.asp, linje 76 I linje 76 står der: rs.open sql, conn, 1, 3
28. februar 2001 - 17:35
#8
hvad står der i variablen id??
28. februar 2001 - 17:36
#9
nå ja du var ikke så god til asp, prøv at skrive response.write id først og sig lige om der står noget men hvis der ikke står noget er det der fejlen er!
28. februar 2001 - 17:39
#10
Som jeg selv (du) skriver er jeg ikke god til det med asp, hvor skal jeg skrive response.write henne????
28. februar 2001 - 17:40
#11
prøv lige det her: <% if mode = \"update\" Then %> <% response.write id %> <% end if %>
28. februar 2001 - 17:41
#12
altså som du sikkert kan se så skal du skifte hele den kode der som du startede med :)
28. februar 2001 - 17:43
#13
Jeg har en rigtig godt script liggende til at rette i databaser online på
http://www.netsrac.dk
28. februar 2001 - 17:44
#14
Den skriver ikke noget!
28. februar 2001 - 17:45
#15
hvor får du id fra?? skriver du f.eks. fil.asp?id=5 og så skal den opdatere id 5 eller hvad??
28. februar 2001 - 17:48
#16
Jeg her min side kal.asp der udskriver den en liste, som linker til kal2.asp hvor der gør sådan kal2.asp?id=5 hvis det er id 5 der skal opdateres. Her er hele kal2.asp: <% mode = request(\"mode\") %> <html> <head> <meta http-equiv=\"Content-Language\" content=\"da\"> <meta http-equiv=\"Content-Type\" content=\"text/html; charset=windows-1252\"> <meta name=\"GENERATOR\" content=\"Microsoft FrontPage 4.0\"> <meta name=\"ProgId\" content=\"FrontPage.Editor.Document\"> <title>Id</title> </head> <body> <% if mode = \"\" Then %> <% id = Request.QueryString( \"id\" ) set conn = server.createobject(\"ADODB.connection\") conn.Open \"DBQ=\"& Server.MapPath(\"sejs.mdb\") & \";Driver={Microsoft Access Driver (*.mdb)};\" SQL = \"SELECT * FROM kal2 WHERE id =\" & id Set rs = Conn.Execute(SQL) %> <form method=\"POST\" action=\"kal2.asp?mode=update\"> <table border=\"1\" width=\"100%\"> <tr> <td width=\"50%\">Id:</td> <td width=\"50%\"><%= rs(\"id\") %></td> </tr> <tr> <td width=\"50%\">Dag:</td> <td width=\"50%\"><input type=\"text\" name=\"dag\" size=\"20\" value=\"<%= rs(\"dag\") %>\"></td> </tr> <tr> <td width=\"50%\">Dato:</td> <td width=\"50%\"><input type=\"text\" name=\"dato\" size=\"20\" value=\"<%= rs(\"dato\") %>\"></td> </tr> <tr> <td width=\"50%\"> </td> <td width=\"50%\"> </td> </tr> <tr> <td width=\"50%\"> </td> <td width=\"50%\"><input type=\"submit\" value=\"Send\" name=\"B1\"></td> </tr> <tr> <td width=\"50%\"> </td> <td width=\"50%\"> </td> </tr> <tr> <td width=\"50%\"> </td> <td width=\"50%\"> </td> </tr> </table> <input type=\"hidden\" name=\"id\" value=\"<%=rs(\"id\")%>\"> </form> <% Conn.Close Set Conn = Nothing %> <% end if %> </body> </html> <% if mode = \"update\" Then %> <% response.write id %> <% end if %>
28. februar 2001 - 17:49
#17
<% if mode = \"update\" Then %> <% Set conn = Server.CreateObject(\"ADODB.Connection\") connString = \"Driver={Microsoft Access Driver (*.mdb)};DBQ=\" & Server.MapPath(\"sejs.mdb\") conn.open connString Set rs = Server.CreateObject(\"ADODB.Recordset\") sql = \"SELECT * FROM kal2 WHERE id =\" & request(\"id\") rs.open sql, conn, 1, 3 rs(\"dag\") = Request.form(\"dag\") rs(\"dato\") = Request.form(\"dato\") rs.Update rs.Close Set rs = Nothing Conn.Close set Conn = Nothing %> <% end if %>
Kurser inden for grundlæggende programmering