22. april 2004 - 21:17
Der er
20 kommentarer og 1 løsning
Gange med 5,33 og opdatere i DB
Hej eksperter... Jeg kan ikk få det her til at virke... xp i tabellen skal være 5,33 * hits strSQL = "Update tbl_Monsters set " strSQL = strSQL & "[name]='" & Request.Form("strname") & "', " strSQL = strSQL & "location='" & Request.Form("strlocation") & "', " strSQL = strSQL & "[level]=" & Request.Form("strlevel") & ", " strSQL = strSQL & "info='" & Request.Form("strinfo") & "', " strSQL = strSQL & "hits='" & Request.Form("strhits") & "', " strSQL = strSQL & "loot_common='" & Request.Form("strloot_common") & "', " strSQL = strSQL & "loot_rare='" & Request.Form("strloot_rare") & "', " strSQL = strSQL & "loot_permanent='" & Request.Form("strloot_permanent") & "', " strSQL = strSQL & "examine='" & Request.Form("strexamine") & "', " strSQL = strSQL & "type='" & Request.Form("strtype") & "', " strSQL = strSQL & "member=" & Request.Form("strmember_only") & ", " strSQL = strSQL & "agressive=" & Request.Form("stragressive") & ", " if Request.Form("strhits")="" then strSQL = strSQL & "xp=0, " else strSQL = strSQL & "xp='" & Request.Form("strhits") & "' * 5,33, " strSQL = strSQL & "quest=" & Request.Form("strquest") & " " strSQL = strSQL & " Where Id = " & Session("ID")
Annonceindlæg tema
Offentlig digitalisering
Fra effektivisering til digital suverænitet. Hvordan skaber det offentlige en digital fremtid med AI, sikkerhed og kontrol i centrum?
22. april 2004 - 21:18
#1
opdagede lige at end if manglede... Nu får jeg fejlen: [Microsoft][ODBC Microsoft Access Driver] Syntax error in UPDATE statement.
Slettet bruger
22. april 2004 - 21:20
#2
sæt [] rundt om type også
Slettet bruger
22. april 2004 - 21:20
#3
strSQL = strSQL & "[type]='" & Request.Form("strtype") & "', "
Slettet bruger
22. april 2004 - 21:21
#4
Hvis du vil være sikker på at dine feltnavne ikke driller så sæt () rundt om alle feltnavnene.
22. april 2004 - 21:21
#5
virkede altså også inden jeg addede xp tingen, type uden []
Slettet bruger
22. april 2004 - 21:21
#6
Undskyld, mit tastatur driller () skulle være [] :-)
Slettet bruger
22. april 2004 - 21:22
#7
Så prøv strSQL = strSQL & "xp=" & CDbl(Request.Form("strhits")) & " * 5,33, "
22. april 2004 - 21:23
#8
Får stadig samme fejl... Alt virkede inden jeg addede if Request.Form("strhits")="" then strSQL = strSQL & "xp=0, " else strSQL = strSQL & "xp='" & Request.Form("strhits") & "' * 5,33, "
Slettet bruger
22. april 2004 - 21:23
#9
Eller måske strSQL = strSQL & "xp=" & CDbl(Request.Form("strhits")) & " * 5.33, " da databasen sikkert regner med engelsk talformat.
22. april 2004 - 21:24
#10
Type mismatch: 'CDbl'
Slettet bruger
22. april 2004 - 21:24
#11
2 sek
Slettet bruger
22. april 2004 - 21:25
#12
CDbl skal virke, vil du ikke lige poste linien som du har skrevet den nu?
22. april 2004 - 21:27
#13
Du får lige hele filen... <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <title>RSFever</title> <LINK href="style.css" type=text/css rel=stylesheet> </head> <body bgcolor="#000000" text="#FFFFFF" link="#008000" vlink="#008000" alink="#008000"> <center><font size="5">Monster Updated!</font></center> <div align="center"> <center> <table border="0"> <tr> <td>Monster Name:</td> <td><%=Request.Form("strname")%></td> </tr> <tr> <td>Location</td> <td><%=Request.Form("strlocation")%></td> </tr> <tr> <td>Level</td> <td><%=Request.Form("strlevel")%></td> </tr> <tr> <td>Info</td> <td><%=Request.Form("strinfo")%></td> </tr> <tr> <td>Hits</td> <td><%=Request.Form("strhits")%></td> </tr> <tr> <td>Loot (common)</td> <td><%=Request.Form("strloot_common")%></td> </tr> <tr> <td>Loot (rare)</td> <td><%=Request.Form("strloot_rare")%></td> </tr> <tr> <td>Loot Permanent</td> <td><%=Request.Form("strloot_permanent")%></td> </tr> <tr> <td>Examine</td> <td><%=Request.Form("strexamine")%></td> </tr> <tr> <td>Type</td> <td><%=Request.Form("strtype")%></td> </tr> <tr> <td>Members Only</td> <td><%=Request.Form("strmember_only")%></td> </tr> <tr> <td>Agressive</td> <td><%=Request.Form("stragressive")%></td> </tr> <tr> <td>Quest Monster</td> <td><%=Request.Form("strquest")%></td> </tr> </table> Click <a href="monster.asp?id=<%=Session("ID")%>">here</a> to go straight to the monster<br> Click <a href="monsters.asp">Here</a> to go to the monsters list<br> </center> </div> </body> </html> <% response.buffer = true Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; " DSN = DSN & "DBQ=" & Server.MapPath("cgi-bin/itemsandmonsters.mdb") Conn.Open DSN strSQL = "Update tbl_Monsters set " strSQL = strSQL & "[name]='" & Request.Form("strname") & "', " strSQL = strSQL & "location='" & Request.Form("strlocation") & "', " strSQL = strSQL & "[level]=" & Request.Form("strlevel") & ", " strSQL = strSQL & "info='" & Request.Form("strinfo") & "', " strSQL = strSQL & "hits='" & Request.Form("strhits") & "', " strSQL = strSQL & "loot_common='" & Request.Form("strloot_common") & "', " strSQL = strSQL & "loot_rare='" & Request.Form("strloot_rare") & "', " strSQL = strSQL & "loot_permanent='" & Request.Form("strloot_permanent") & "', " strSQL = strSQL & "examine='" & Request.Form("strexamine") & "', " strSQL = strSQL & "[type]='" & Request.Form("strtype") & "', " strSQL = strSQL & "member=" & Request.Form("strmember_only") & ", " strSQL = strSQL & "agressive=" & Request.Form("stragressive") & ", " if Request.Form("strhits")="" then strSQL = strSQL & "xp=0, " else strSQL = strSQL & "xp=" & CDbl(Request.Form("strhits")) & " * 5.33, " end if strSQL = strSQL & "quest=" & Request.Form("strquest") & " " strSQL = strSQL & " Where Id = " & Session("ID") Conn.Execute(strSQL) Conn.Close Set Conn = Nothing %>
Slettet bruger
22. april 2004 - 21:27
#14
Sådan, du skal jo ikke gange med en streng men et tal :-) strSQL = strSQL & "xp=" & CDbl(Request.Form("strhits")) * 5.33 & ", "
22. april 2004 - 21:29
#15
Hehe... Prøver lige
22. april 2004 - 21:30
#16
Det virker... Takker for hjælpen
Slettet bruger
22. april 2004 - 21:32
#17
Velbekomme og tak for point :-)
23. april 2004 - 18:59
#18
Der er lige en anden ting... Når jeg tallet bliver added skrive den . istedet for komma så mine tal bliver lidt for store... 1.066,00 som der står i min Db skulle have været 10,66
Slettet bruger
25. april 2004 - 21:21
#19
Så bliver du nødt til at dividere med 100 bagefter strSQL = strSQL & "xp=" & (CDbl(Request.Form("strhits")) * 5.33) / 100 & ", "
25. april 2004 - 22:25
#20
Nemlig... fandt ud af det.. :D
Slettet bruger
25. april 2004 - 22:45
#21
Godt :-)
Kurser inden for grundlæggende programmering