vad betyder detta?? fattar noll!!
Feltyp:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][Drivrutin för ODBC Microsoft Access] Syntaxfel i UPDATE-uttryck.
/softa/community/user_forum_skriv.asp, line 93
17 svar · 386 visningar · startad av Thompa__85
vad betyder detta?? fattar noll!!
Feltyp:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][Drivrutin för ODBC Microsoft Access] Syntaxfel i UPDATE-uttryck.
/softa/community/user_forum_skriv.asp, line 93
Visa kod.
@nders skrev:
Visa kod.
<%
If Request.Querystring("vad") = "spara" Then
Set RecSet = Server.CreateObject("ADODB.Recordset")
Addera = "SELECT * FROM inlagg"
adOpenStatic = 3
adLockOptimistic = 3
RecSet.Open Addera, Forum, 3, 3
RecSet.AddNew
RecSet("Forum") = Request.Form("forum")
RecSet("Fromid") = userid
RecSet("Fromnick") = nickname
RecSet("Datum") = now
RecSet("Text") = Request.Form("text")
RecSet("Subject") = Request.Form("subject")
RecSet.Update
RecSet.Close
Set rs = User.execute("select \* from users WHERE ID= " & userid)
points = Round(rs("Points"), 1)
rs.close
points=points+0.2
User.Execute("UPDATE users SET Points = "& points &" WHERE ID = " & userid)
Response.Redirect "user_forum.asp?forum=" & Request.Form("forum")
End If
%>
Strunta i recordsetet, uppdatera direkt istället.
User.Execute "UPDATE users SET Points = iif(points is null,0.2,points+0.2) WHERE ID = " & userid
Response.Redirect "user_forum.asp?forum=" & Request.Form("forum")
LarsG skrev:
Strunta i recordsetet, uppdatera direkt istället.
User.Execute "UPDATE users SET Points = iif(points is null,0.2,points+0.2) WHERE ID = " & userid Response.Redirect "user_forum.asp?forum=" & Request.Form("forum")
okej... låter ju underbart... men nybörjare som man är, så fattar jag inte... ska jag bara ha de där? Eller vad är de jag ska ta bort??
ersätt detta
Set rs = User.execute("select * from users WHERE ID= " & userid)
points = Round(rs("Points"), 1)
rs.close
points=points+0.2
User.Execute("UPDATE users SET Points = "& points &" WHERE ID = " & userid)
Response.Redirect "user_forum.asp?forum=" & Request.Form("forum")
med det som jag skrev.
LarsG skrev:
ersätt detta
Set rs = User.execute("select * from users WHERE ID= " & userid) points = Round(rs("Points"), 1) rs.close points=points+0.2 User.Execute("UPDATE users SET Points = "& points &" WHERE ID = " & userid) Response.Redirect "user_forum.asp?forum=" & Request.Form("forum")med det som jag skrev.
TACK!!
Men får då detta meddelande:
Feltyp:
Kompileringsfel i Microsoft VBScript (0x800A0401)
Slut på programsats förväntas.
/softa/community/user_forum_skriv.asp, line 93, column 92
User.Execute "UPDATE users SET Points = iif(points is null,0.2,points+0.2) WHERE ID = " & userid
-------------------------------------------------------------------------------------------^
Det ser ju konstigt ut. Kan du visa lite mer kod, rad 85 till 95 ungefär.
(Varför använder du user och inte forum som du hade tidigare. Säg inte att du har två olika databaser.)
LarsG skrev:
Det ser ju konstigt ut. Kan du visa lite mer kod, rad 85 till 95 ungefär.
(Varför använder du user och inte forum som du hade tidigare. Säg inte att du har två olika databaser.)
Jo har 2 olika databaser? inte bra eller??
85-95
RecSet.Update
RecSet.Close
User.Execute "UPDATE users SET Points = iif(points is null,0.2,points+0.2) WHERE ID = " & userid
Response.Redirect "user_forum.asp?forum=" & Request.Form("forum")
Nej, det är inte bra, det bli mycket kod och det är onödigt med flera databasanrop.
User.Execute "UPDATE users SET Points = iif(points is null,0.2,points+0.2) WHERE ID = " & userid
Borde väl stå "if" istället för "iif" ?
Pellefant skrev:
User.Execute "UPDATE users SET Points = iif(points is null,0.2,points+0.2) WHERE ID = " & userid
Borde väl stå "if" istället för "iif" ?
Har kollat de... men de funkar ändå inte :S Ingen som vet?
det skall vara iif
Jag kan inte se något fel så jag känner mig konfunderad. Vad händer om du skriver detta
q = "UPDATE users SET Points = iif(points is null,0.2,points+0.2) WHERE ID = " & userid
User.Execute q
LarsG skrev:
det skall vara iif
Jag kan inte se något fel så jag känner mig konfunderad. Vad händer om du skriver detta
q = "UPDATE users SET Points = iif(points is null,0.2,points+0.2) WHERE ID = " & userid User.Execute q
nja samma som förut:
Feltyp:
Kompileringsfel i Microsoft VBScript (0x800A0401)
Slut på programsats förväntas.
/softa/community/user_forum_skriv.asp, line 90, column 83
q = "UPDATE users SET Points = iif(points is null,0.2,points+0.2) WHERE ID = " & userid
----------------------------------------------------------------------------------^
Ska jag bifoga filen? Så du kan få kolla på den??
Jag tittade i din kod. Där står:
q = "UPDATE users SET Points = iif(points is null,0.2,points+0.2) WHERE ID = " &amp; userid
Byt & mot bara & så ska du i alla fall bli av med det felmeddelandet.
det såg lite konstigt ut med och-tecknet i filen:
q = "UPDATE users SET Points = iif(points is null,0.2,points+0.2) WHERE ID = " & amp; userid
User.Execute q
ska vara:
q = "UPDATE users SET Points = iif(points is null,0.2,points+0.2) WHERE ID = " & userid
User.Execute q
hahaha @nders och doggelito skrev samma sak samtidigt :) webForum börjar bli lite magiskt :)