Hur gör man en update med sql till access? Du har missat en ', ska vara: Du stänger inte din connection om man inte betalat. Du kan ju flytta ut close satsen. Fast änu bättre är ju att öppna anslutningen endast om den ska användas. Allts flytta in instansiering och öppning av anslutning.<br> Tja det funkar ju till viss del, det blir inget felmeddelande nu. Bar när jag sätter ' framför och bakom betalat. Varför skall det vara tid = tid? räcker det inte med en. och tyvärr andreas så fick jag inte ditt förslag att fungera. ändrade på alla möjliga tecken utan framgång. Om jag har missuppfattat det hela så är det ordet betalat som skall komma in i databasen//Jocke Jag har en tabell i access som heter tid, (för tillfället) Den är tom, och en som heter Nick. och jag vill att när man uppdaterar så skall det stå betalat i tid, i samma rad som Nick är på. Vilken fälttyp är tid? Text, Boolean, Long? Kommer du inte få problem om en användare har mer än en bokning? Fälttypen är text, Denna sida gäller till ett LAN party och där nick är deras spel alias, så det är ingen fara med att det kommer 2 av samma, Skall kolla detta när jag kommer hem. Tack så länge//JockeUpdate [Löst, Tack för hjälpen]
får upp följande
Microsoft OLE DB Provider for ODBC Drivers error '80040e14'
[Microsoft][ODBC Microsoft Access Driver] Syntax error in string in query expression 'nick = ''.
/klp1/update.asp, line 11
här kommer koden
<%
Dim sql, con
Set Con = Server.CreateObject("ADODB.Connection")
Con.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" &Server.MapPath("boka.mdb")&";"
btn = LCase(Request("btn"))
If Btn = "betalat" Then
pay = Request.form("pay")
sql = "update boka set tid = tid + betalat where nick = '"& pay & ""
con.execute(sql)
con.close
set con=nothing
end if
%>Sv: Update
sql = "update boka set tid = tid + betalat where nick = '"& pay & "'"
/JohanSv: Update
<br>
Du bör oxå ersätta alla ' med två '. Annars kan man vara inne och jävlas.
<code>
<%
Dim sql, con
btn = LCase(Request("btn"))
If Btn = "betalat" Then
pay = Request.form("pay")
sql = "update boka set tid = tid + betalat where nick = '"& Replace(pay, "'", "''") & "'"
Set Con = Server.CreateObject("ADODB.Connection")
Con.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" &Server.MapPath("boka.mdb")&";"
con.execute sql
con.close
set con=nothing
end if
%>
</code>Sv: Update
Sv: Update
Jag väljer namnet (nick) från en dropdown som heter pay, och när jag markerat önskat namn och tryckt uppdaterat knappen så skall det stå betalt i kolummen "tid" vid samma namn som kolummen nick är på. Hoppas ni förstår vad jag menar.//JockeSv: Update
<%
Dim sql, con
btn = LCase(Request("btn"))
If Btn = "betalat" Then
pay = Request.form("pay")
sql = "UPDATE boka SET tid = 'betalat' WHERE nick = '"& Replace(pay, "'", "''") & "'"
Set Con = Server.CreateObject("ADODB.Connection")
Con.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" &Server.MapPath("boka.mdb")&";"
con.execute sql
con.close
set con=nothing
End if
%> Sv: Update