Avatar billede martin86 Nybegynder
17. februar 2003 - 21:41 Der er 11 kommentarer og
1 løsning

AKUT HJÆLP ............. Opdaterings fejl

Har I ikke en lettere måde at opdatere en streng (ID) på end denne...
Som iøvrigt ikke virker... :(
Ved ikke hvorfor.... TRÆLST!

<%
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath("database.mdb")
Conn.Open DSN

SQLstmt = "UPDATE referater SET hold = '" & request.form("hold") & "', hjemmescore = '" & request.form("hjemmescore") & "', udehold = '" & request.form("udehold") & "', udescore = '" & request.form("udescore") & "', referat = '" & request.form("referat") & "', forfatter = '" & request.form("forfatter") & "', dato = '" & request.form("dato") & "' WHERE ID = " & Request("ID")

'SQLstmt = SQLstmt & " VALUES ('" & Request.Form("hold") & "', '" & Request.Form("hjemmescore") & "', '" & request.form("udehold") & "', '" & Request.Form("udescore") & "', '" & Request.Form("referat") & "', '" & Request.Form("forfatter") & "', '" & Request.Form("dato") & "')"

response.write sqlstmt

Conn.Execute (SQLstmt) <------- linie 18]

conn.Close
Set conn = nothing
Set SQLstmt = nothing

response.redirect ("referater.asp")
%>

får fgl. fejl:
Error Type:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in query expression ''HHK's nye WEB ansigt', forfatter = 'Martin Møller', dato = ' d. 17. Februar 2003', nyhed = 'Hej og Velkommen til HHK's nye ansigt..... Det er en side hvor det er hver enkelte træners pligt at oprette spillere og evt. opdatere..... Men også at skrive nyhe'.
/div/hhk/login/admin/nyheder/ret_nyhed.asp, line 18

HJÆLP
Avatar billede avlund Nybegynder
17. februar 2003 - 21:44 #1
Det ser ud til at du har rodet en UPDATE- og INSERT-sætning sammen?
Avatar billede medions Nybegynder
17. februar 2003 - 21:44 #2
Prøv at skriv ved alle Request.Form's

Replace(Request.Form("formnavn"),"'","''")

//>Rune
Avatar billede avlund Nybegynder
17. februar 2003 - 21:45 #3
Ah, jeg lagde ikke lige mærke til at du havde udkommenteret den anden.
Avatar billede hpb Nybegynder
17. februar 2003 - 21:46 #4
Hej
Når du laver en UPDATE table Set att = value, att = value
skal du ikke have en VALUES
den bruges ved insert into table (att,att) Values(value,value)
Du skal iøvrigt være opmærksom på at din dato kan kræve et # på hver side af datoen
Avatar billede hpb Nybegynder
17. februar 2003 - 21:46 #5
ups, havde ikke set udkommenteringen
Avatar billede avlund Nybegynder
17. februar 2003 - 21:47 #6
heheheheh
Avatar billede avlund Nybegynder
17. februar 2003 - 21:48 #7
Hvad siger din response.write sqlstmt så?
Avatar billede martin86 Nybegynder
17. februar 2003 - 21:49 #8
Medions:
Den forstår jeg ikke helt er du sød at udpensle den?
Avatar billede eagleeye Praktikant
17. februar 2003 - 21:49 #9
Hvis du vil ungå SQL så kan du lave den sådan her:

Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath("database.mdb")
Conn.Open DSN


Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open "SELECT * FROM referater WHERE id = " & Request("ID"), Conn,1,3

rs("hold") = request.form("hold")
rs("hjemmescore") = request.form("hjemmescore")
rs("udehold") = request.form("udehold")
rs("udescore") = request.form("udescore")

osv.

rs.Update
rs.Close
Avatar billede avlund Nybegynder
17. februar 2003 - 21:54 #10
Hvad han mener er at der måske kommer apostroffer i dine værdier, og det er ikke godt. Alt. kan du lave en funktion:

Function chk (rn)
    chk = Replace (rn, "'", "''")
End Function

Og så uden om hver Request.Form("etellerandet") skrive:

chk( Request.Form("etellerandet") )

Giver det mening?
Avatar billede martin86 Nybegynder
17. februar 2003 - 21:55 #11
Tak det hjalp sQ eagleeye.....

og avlund...... TAK for beskrivelsen det gav skam mening....

TAK
Avatar billede avlund Nybegynder
17. februar 2003 - 21:56 #12
Det var så lidt!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester