23. november 2001 - 09:45
Der er
18 kommentarer og 1 løsning
Ahm update hvad er der galt
Hmm det er da så simpel men jeg kan ikke få det til at virke : <% response.buffer = true set connect = server.createobject(\"ADODB.Connection\") Connect.open \"Driver={Microsoft Access Driver (*.mdb)}; DBQ=\" & server.mappath(\"bank.mdb\") SQL = \"SELECT * FROM links WHERE id LIKE \'\" & request(\"linkid\") & \"\'\" set rs = Connect.Execute(SQL) %> <html> <head> <title>note</title> </head> <body bgcolor=\"#FFFFFF\" text=\"#000000\"> <form name=\"update\" method=\"post\" action=\"note.asp?mode=opdater\"> <input type=\"hidden\" name=\"id\" value=\"<%=rs(\"id\")%>\"> <table width=\"300\" border=\"0\"> <tr> <td>Gemmes Ja / Nej</td> <td> <select name=\"gem\"> <option selected></option> <option>JA</option> <option>NEJ</option> </select> </td> </tr> <tr> <td>kommentar</td> <td> <textarea name=\"notat\"></textarea> </td> </tr> <tr> <td> <input type=\"submit\" name=\"Submit\" value=\"Opdater\"> </td> <td> </td> </tr> </table> <% select case request (\"mode\") case \"opdater\" SQL = \"Update links set gemmes= \'\" & request.form(\"gem\") & \"\', \" SQL = SQL & \"notat= \'\"& request.form(\"notat\")&\"\', \" SQL = SQL & \"WHERE id= \"& request.form(\"id\") Connect.Execute( SQL ) response.redirect(\"kundeinfo.asp?mode=ok\") end select %> </form> </body> </html> Når man opdater laver den en fejl i linie 0. hvad er der galt ???
Annonceindlæg tema
Cloud & AI
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
23. november 2001 - 09:47
#1
Hvis ID er defineret som tal i databasen kan man ikke bruge LIKE og der skal ike \' omrinng: SQL = \"SELECT * FROM links WHERE id = \" & request(\"linkid\")
23. november 2001 - 09:53
#2
Den giver en fejle i SQLen SQL = \"SELECT * FROM links WHERE id = \" & request(\"linkid\") sådan er det nu: <% response.buffer = true set connect = server.createobject(\"ADODB.Connection\") Connect.open \"Driver={Microsoft Access Driver (*.mdb)}; DBQ=\" & server.mappath(\"bank.mdb\") SQL = \"SELECT * FROM links WHERE id = \" & request(\"linkid\") set rs = Connect.Execute(SQL) %> <html> <head> <title>note</title> </head> <body bgcolor=\"#FFFFFF\" text=\"#000000\"> <form name=\"update\" method=\"post\" action=\"note.asp?mode=opdater\"> <input type=\"hidden\" name=\"id\" value=\"<%=rs(\"id\")%>\"> <table width=\"300\" border=\"0\"> <tr> <td>Gemmes Ja / Nej</td> <td> <select name=\"gem\"> <option selected></option> <option>JA</option> <option>NEJ</option> </select> </td> </tr> <tr> <td>kommentar</td> <td> <textarea name=\"notat\"></textarea> </td> </tr> <tr> <td> <input type=\"submit\" name=\"Submit\" value=\"Opdater\"> </td> <td> </td> </tr> </table> <% select case request (\"mode\") case \"opdater\" SQL = \"Update links set gemmes= \'\" & request.form(\"gem\") & \"\', \" SQL = SQL & \"notat= \'\"& request.form(\"notat\")&\"\', \" SQL = SQL & \"WHERE id= \"& request.form(\"id\") Connect.Execute( SQL ) response.redirect(\"kundeinfo.asp?mode=ok\") end select %> </form> </body> </html>
23. november 2001 - 09:55
#3
hvilken fejl?
23. november 2001 - 09:57
#4
Microsoft OLE DB Provider for ODBC Drivers error \'80040e14\' [Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in query expression \'id =\'. /mediebank/150dandy/note.asp, line 6 Linie 6 = set rs = Connect.Execute(SQL)
23. november 2001 - 10:00
#5
Så er request(\"linkid\") nok tom. Er ID defieret som tal i databasen?
23. november 2001 - 10:01
#6
det er et autonummereings felt
23. november 2001 - 10:06
#7
jeg har lavet lidt om på det <html> <head> <title>note</title> </head> <body bgcolor=\"#FFFFFF\" text=\"#000000\"> <form name=\"update\" method=\"post\" action=\"note.asp?mode=opdater\"> <input type=\"hidden\" name=\"id\" value=\"<%=request(\"linkid\")%>\"> <table width=\"300\" border=\"0\"> <tr> <td>Gemmes Ja / Nej</td> <td> <select name=\"gem\"> <option selected></option> <option value=\"JA\">JA</option> <option value=\"NEJ\">NEJ</option> </select> </td> </tr> <tr> <td>kommentar</td> <td> <textarea name=\"notat\"></textarea> </td> </tr> <tr> <td> <input type=\"submit\" name=\"Submit\" value=\"Opdater\"> </td> <td> </td> </tr> </table> <% select case request (\"mode\") case \"opdater\" SQL = \"Update links set gemmes= \'\" & request.form(\"gem\") & \"\', \" SQL = SQL & \"notat= \'\"& request.form(\"notat\")&\"\', \" SQL = SQL & \"WHERE ID= \"& request.form(\"id\") Connect.Execute( SQL ) response.redirect(\"kundeinfo.asp?mode=ok\") end select %> </form> </body> </html> nu giver det fejlen: Microsoft VBScript runtime error \'800a01a8\' Object required: \'\' /mediebank/150dandy/note.asp, line 43 linie 43 = Connect.Execute( SQL )
23. november 2001 - 10:08
#8
du skal havde dette med: set connect = server.createobject(\"ADODB.Connection\") Connect.open \"Driver={Microsoft Access Driver (*.mdb)}; DBQ=\" & server.mappath(\"bank.mdb\") Evt her: select case request (\"mode\") case \"opdater\" set connect = server.createobject(\"ADODB.Connection\") Connect.open \"Driver={Microsoft Access Driver (*.mdb)}; DBQ=\" & server.mappath(\"bank.mdb\") .KODE. Connect.Execute( SQL ) Connect.Close <-------bør/skal med
23. november 2001 - 10:25
#9
Nu er det sådan : <% response.buffer = true set connect = server.createobject(\"ADODB.Connection\") Connect.open \"Driver={Microsoft Access Driver (*.mdb)}; DBQ=\" & server.mappath(\"bank.mdb\") strSQL = \"SELECT * FROM links WHERE ID=\" & Request(\"linkid\") Set rs = connect.Execute(strSQL) %> <html> <head> <title>note</title> </head> <body bgcolor=\"#FFFFFF\" text=\"#000000\"> <form name=\"update\" method=\"post\" action=\"note.asp?mode=opdater\"> <input type=\"hidden\" name=\"id\" value=\"<%=rs(\"id\")%>\"> <table width=\"300\" border=\"0\"> <tr> <td>Gemmes Ja / Nej</td> <td> <select name=\"gem\"> <option selected></option> <option value=\"JA\">JA</option> <option value=\"NEJ\">NEJ</option> </select> </td> </tr> <tr> <td>kommentar</td> <td> <textarea name=\"notat\"></textarea> </td> </tr> <tr> <td> <input type=\"submit\" name=\"Submit\" value=\"Opdater\"> </td> <td> </td> </tr> </table> <% select case request (\"mode\") case \"opdater\" connect.execute(\"Update links set gemmes= \'\"& request.form(\"gem\")&\"\'\") connect.execute(\"Update links set notat= \'\"& request.form(\"notat\")&\"\'\") response.redirect(\"kundeinfo.asp?mode=ok\") end select Connect.Close %> </form> </body> </html> men jeg får stadig fejlen : Microsoft OLE DB Provider for ODBC Drivers error \'80040e14\' [Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in query expression \'ID=\'. /mediebank/150dandy/note.asp, line 6 Linie 6 er Set rs = connect.Execute(strSQL)
23. november 2001 - 10:28
#10
Prøv og udskriv Request(\"linkid\") <% response.buffer = true set connect = server.createobject(\"ADODB.Connection\") Connect.open \"Driver={Microsoft Access Driver (*.mdb)}; DBQ=\" & server.mappath(\"bank.mdb\") Response.write Request(\"linkid\") strSQL = \"SELECT * FROM links WHERE ID=\" & Request(\"linkid\") Set rs = connect.Execute(strSQL)
23. november 2001 - 10:41
#11
skriver den noget ud? Evt sådan her: Response.write \":\" & Request(\"linkid\") & \":<br>\"
23. november 2001 - 10:44
#12
det virker fint nog den får linkid med rundt
23. november 2001 - 10:47
#13
Du laver en SQL i toppen af filen: strSQL = \"SELECT * FROM links WHERE ID=\" & Request(\"linkid\") Set rs = connect.Execute(strSQL) Hvis linkid er tom vil den lave fejl. Linket til filen skalse sådan her ud: note.asp?linkid=2 <--- 2 som eks. Hvis linket bare er: note.asp kommer der fejl i linie 6
23. november 2001 - 10:49
#14
glemmer du ikke at definere recordsettet? set rs=Server.CreateObject(\"ADODB.Recordset\")
23. november 2001 - 10:52
#15
Så vidt jeg kan se forvendtes at linkid er med da det recordset (rs) som åbenes i staten brugres til at sætte data ind i formen med. Så kan du ligge en if omkring det hele: <% if Request(\"linkid\") <> \"\" then \'\"\" = tom response.buffer = true ..koden.. %> </form> </body> </html> <% else %> Linkid er ikke defineret :( <% end if %>
23. november 2001 - 11:10
#16
nu opdater den men den opdater alle felter ??
23. november 2001 - 11:10
#17
<% response.buffer = true set connect = server.createobject(\"ADODB.Connection\") Connect.open \"Driver={Microsoft Access Driver (*.mdb)}; DBQ=\" & server.mappath(\"bank.mdb\") strSQL = \"SELECT * FROM links WHERE id like \'\" & request(\"linkid\") & \"\'\" Set rs = connect.Execute(strSQL) %> <html> <head> <title>note</title> </head> <body bgcolor=\"#FFFFFF\" text=\"#000000\"> <form name=\"update\" method=\"post\" action=\"note.asp?mode=opdater&linkid=<%=rs(\"id\")%>\"> <input type=\"hidden\" name=\"id\" value=\"<%=rs(\"id\")%>\"> <table width=\"300\" border=\"0\"> <tr> <td>Gemmes Ja / Nej</td> <td> <select name=\"gem\"> <option selected></option> <option value=\"JA\">JA</option> <option value=\"NEJ\">NEJ</option> </select> </td> </tr> <tr> <td>kommentar</td> <td> <textarea name=\"notat\"></textarea> </td> </tr> <tr> <td> <input type=\"submit\" name=\"Submit\" value=\"Opdater\"> </td> <td> </td> </tr> </table> <% select case request (\"mode\") case \"opdater\" if Request(\"linkid\") <> \"\" then connect.execute(\"Update links set gemmes= \'\"& request.form(\"gem\")&\"\'\") connect.execute(\"Update links set notat= \'\"& request.form(\"notat\")&\"\'\") response.redirect(\"kundeinfo.asp?mode=ok\") else %> Linkid er ikke defineret :( <% end if end select Connect.Close %> </form> </body> </html>
23. november 2001 - 11:15
#18
det skal en WHERE på UPDATE for at begrænse hvilke records som opdateres: connect.execute(\"Update links set gemmes= \'\"& request.form(\"gem\")&\"\' WHERE ID =\"&Request(\"linkid\")) connect.execute(\"Update links set notat= \'\"& request.form(\"notat\")&\"\' WHERE ID =\"&Request(\"linkid\")) du kan også lave det i en SQL: strSQL = \"Update links set gemmes= \'\"& request.form(\"gem\")& \"\', notat=\'\" & request.form(\"notat\") & \"\' WHERE ID =\"&Request(\"linkid\") connect.execute(strSQL)
23. november 2001 - 11:17
#19
fedest eagleeye det kører !
Kurser inden for grundlæggende programmering