if intRost = "1" then
sql = "UPDATE blogg SET int1 = int1 + 1 WHERE B_ID = " & ID & ""
Connect.Execute(sql),,128
end if
if intRost = "2" then
sql = "UPDATE blogg SET int2 = int2 + 1 WHERE B_ID = " & ID & ""
Connect.Execute(sql),,128
end if
if intRost = "3" then
sql = "UPDATE blogg SET int3 = int3 + 1 WHERE B_ID = " & ID & ""
Connect.Execute(sql),,128
end if
if intRost = "4" then
sql = "UPDATE blogg SET int4 = int4 + 1 WHERE B_ID = " & ID & ""
Connect.Execute(sql),,128
end if
if intRost = "5" then
sql = "UPDATE blogg SET int5 = int5 + 1 WHERE B_ID = " & ID & ""
Connect.Execute(sql),,128
end if
Detta är vad som händer....
Vet att jag kan köra me elseif, men de blev fel då me jag testade såhär me samma resultat..
Felet blir:
ADODB.Connection.1 (0x80004005)
SQLState: 4 Native Error Code: 1064 [TCX][MyODBC]You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'int1 = int1 + 1 WHERE B_ID = 29' at line 1
Men det funkar kanonbra om man klickar på länken om man ska rösta en "5".. Men 1, 2, 3, 4 funkar inte..
Om du får ut ett felmeddelande när SQL-frågan ska exekveras så måste du ju kunna få ut en utskrift av SQL-frågan. Kör en response.end direkt efter utskriften.
Det verkar dock som att du har något annat problem. Prövat att byta namn på fälten? Kontrollerat att fältinnehållet verkligen inte är null?
if intRost = "1" then
strSQL = "UPDATE blogg Set int1 = int1 + 1 Where B_ID = "& ID &""
response.write (SQL)
response.end
'Connect.Execute(strSQL),,128
end if
Men den skrev ut SELECT satsen som ligger högre upp :(
Det gör det sällan. Oftast står det bara att du har ett syntaxfel, så då bör man direkt kolla av sina fältnamn om man inte hittar andra fel. En sökning på mysql.com brukar kunna sprida ljus över eländet.
278 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e