17. april 2000 - 13:19
Der er
23 kommentarer og 3 løsninger
Fejl i script...
Jeg har ingen erfaring med ASP, men jeg prøvede aligevel... Hvorfor får jeg denne fejl : --------------------------------------- Microsoft OLE DB Provider for ODBC Drivers error '80040e14' [Microsoft][ODBC Microsoft Access Driver] Syntax error in UPDATE statement. /test/subopdater.asp, line 10 ------------------------------- I dette script : -------------------------------- <% Set myConn = Server.CreateObject("ADODB.Connection") myConn.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("sub.mdb") strSQL = "UPDATE seb SET seb=" & request("seb") strSQL = strSQL & ", pwd=" & request("pwd") strSQL = strSQL & ", email=" & request("email") strSQL = strSQL & " WHERE Id=" & request("id") Set rs = myConn.Execute(strSQL) %> <form method="POST" action="subopdater.asp"> <p>Brugernavn : <input type="text" name="brugernavn" size="20"> password : <input type="text" name="password" size="20"></p> <p><input type="submit" value="Send" name="login"><input type="reset" value="Nulstil" name="B2"></p> </form> <% if request.Form("password") = "pwd" And request.Form("username") = "seb" then %> <form method="POST" action="subopdater.asp"> <p align="center"> </p> <div align="center"> <center> <table border="0" cellpadding="0" cellspacing="0"> <tr> <td align="center"> <p align="center"><font face="Tahoma">Brugernavn : </font></td> <td> <p align="center"><font face="Tahoma"><input type="text" name="seb" size="20" value=<% Request("seb")%> ></font></td> </tr> <tr> <td align="center"> <p align="center"><font face="Tahoma">Adgangskode : </font></td> <td> <p align="center"><font face="Tahoma"><input type="text" name="pwd" value=<% request("pwd") %> size="20"></font></td> </tr> <tr> <td> <p align="center"><font face="Tahoma">Email : </font></td> <td> <p align="center"><font face="Tahoma"><input type="text" name="email" value=<% Request("email") %> size="20"></font></td> </tr> </table> </center> </div> <p align="center"> </p> <p align="center"><input type="submit" value="Opdater Oplysninger" name="opdater"></p> </form> <% end if %> ------------------------------------ Håber nogen kan hjælpe mig færdig...
Annonceindlæg fra HP
17. april 2000 - 13:23
#1
Du skal have stroffer omkring dine tekster (ikke dine tal, jeg regner med ID er et tal strSQL = "UPDATE seb SET seb='" & request("seb") & "'" strSQL = strSQL & ", pwd='" & request("pwd") & "'" strSQL = strSQL & ", email='" & request("email") & "'" strSQL = strSQL & " WHERE Id=" & request("id")
17. april 2000 - 13:26
#2
Du skal huske ' når du skal update en tekststreng ligesom dette: strSQL = "UPDATE seb SET seb='" & request("seb") & "'" strSQL = strSQL & ", pwd='" & request("pwd") & "'" strSQL = strSQL & ", email='" & request("email") & "'" strSQL = strSQL & " WHERE Id=" & request("id") Set rs = myConn.Execute(strSQL) Desuden bruger jeg selv - request.form("ishdf") når jeg requester, men dit burde virke alligevel - prøv iøvrigt at skrive dit SQl statement ud med response.write(strSQL) - det gør det noget nemmere at overskue..
17. april 2000 - 13:26
#3
Mit skulle jo have været et svar..
17. april 2000 - 13:30
#4
Du må vist ikke have et felt med samme navn som tabellen (seb)
17. april 2000 - 13:34
#5
Nu skal jeg ikke lige gøre mig til ekspert på Access, men i standard SQL må man gerne have et feltnavn, der hedder det samme som tabellen. Man må derimod ikke umiddelbart have et feltnavn, der hedder det samme som et reserveret ord.
17. april 2000 - 13:38
#6
erikjacobsen: Du har sikkert ret...
17. april 2000 - 14:08
#7
Er der ikke en som kan lave et færdigt script til mig som virker ?? Min database hedder sub.mdb og tabellen hedder seb og de andre felter kan i se i det jeg skriver øverst på siden..
17. april 2000 - 14:13
#8
Ikke mig, stivert.dk ... vel? Men fik du svar på dette spørgsmål?
17. april 2000 - 14:14
#9
Nu hvor jeg har ændret det i siger der, så får jeg denne fejl... ------------------------------------- Microsoft OLE DB Provider for ODBC Drivers error '80040e14' [Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in query expression 'Id='. /test/subopdater.asp, line 11
17. april 2000 - 14:16
#10
Erik.. Jah men det virker ikk...
17. april 2000 - 14:21
#11
Prøve at udskrive strSQL, så kan du måske selv se fejlen
17. april 2000 - 14:24
#12
Sone... Hvordan gør man det ???
17. april 2000 - 14:25
#13
response.write(strSQL & "<BR>")
17. april 2000 - 14:29
#14
Ska jeg skrive det før linje 11 eller hva ??
17. april 2000 - 14:34
#15
Den kommer bare med samme fejl... :o(
17. april 2000 - 14:38
#16
Ja - og prøv at vise os den SQL som bliver udskrevet.
17. april 2000 - 14:46
#17
Er din ID en tekst eller et tal i din database?
17. april 2000 - 14:48
#18
Der bliver ikke noget udskrevet.. Der kommer bare den samme fejl...
17. april 2000 - 14:49
#19
Du skal udskrive før linie 11...
17. april 2000 - 14:50
#20
Mine ID er tal...
17. april 2000 - 14:51
#21
Så er din request("id") tom
17. april 2000 - 14:53
#22
Er den tom ? I min database er der 80 forskellige poster med forskellige id.. ?!?!!
17. april 2000 - 14:55
#23
Ikke feltet i din database, feltet "id" fra din form.
17. april 2000 - 14:59
#24
Det fatter jeg ikk noget af... Den skulle jo selv vælge det id hvor password og brugernavn passer sammen.. !?!?! Har jeg lavet det helt forkert ?!?!!
17. april 2000 - 15:02
#25
request("id") er tom fordi der ikke er et felt på din form, der hedder "id" - så vidt jeg lige kan se!
17. april 2000 - 15:02
#26
Du laver en request("id") for at hente id'et - du har bare ikke noget felt der hedder id i HTML - derfor er id tom i SQL.
Kurser inden for grundlæggende programmering