Avatar billede andersasp Nybegynder
21. april 2004 - 15:21 Der er 32 kommentarer og
1 løsning

Fejl ved update med queryString!

Jeg prøver at genne noget data som kommer via en queryString! den kommer dog med følgende fejl! ??

Kan man evt. også omskrive lidt i koden så man kan include min nuværende connection?

<%
MM_website_STRING = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\home\database\database.mdb"
%>

Med: <!--#include file="../../Connections/website.asp" -->

-------FEJL----------------------

Microsoft JET Database Engine error '80040e0c'
Command text was not set for the command object.
/savechanges.asp, line 18
---------------------------------

-----Filen som gemmer ser således ud!-----------

<html>

<head>
<title>Update data</title>
</head>
<%
Kheadlineupdate=Request.queryString("Kheadline")
Hheadline2update=Request.queryString("Hheadline2")
Ktextsupdate=Replace(Request.queryString("Ktexts"),"'","''")
Kshowupdate=Request.queryString("Kshow")
KIDupdate=Request.queryString("KID")

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& server.mappath("../../database/database.mdb")

strSql= "UPDATE Categories SET Kheadline = '"&Hheadline2update&"', Hheadline2='"&Hheadline2update&"', Ktexts='"&Ktextsupdate&"' WHERE KID = " & Request.QueryString("KID")                                   
                               
Conn.Execute(SQL)    ' linie 18
Conn.Close

%>

The page has been updated!
</body>

</html>
Avatar billede and_ Nybegynder
21. april 2004 - 15:26 #1
idnr = Request.QueryString("KID")

if idnr <> "" then
strSql= "UPDATE Categories SET (Kheadline = '" & Hheadline2update& "', Hheadline2 = '" &Hheadline2update & "', Ktexts = '" &Ktextsupdate & "') WHERE KID = " & idnr
else
response.write "Ingenting at opdatere!"
end if
Avatar billede and_ Nybegynder
21. april 2004 - 15:26 #2
prøv lige den
Avatar billede andersasp Nybegynder
21. april 2004 - 15:29 #3
Den kom desværre med samme fejl med nedenstående kode!

<%
Kheadlineupdate=Request.queryString("Kheadline")
Hheadline2update=Request.queryString("Hheadline2")
Ktextsupdate=Replace(Request.queryString("Ktexts"),"'","''")
Kshowupdate=Request.queryString("Kshow")
KIDupdate=Request.queryString("KID")

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& server.mappath("../../database/database.mdb")

idnr = Request.QueryString("KID")

if idnr <> "" then
strSql= "UPDATE Categories SET (Kheadline = '" & Hheadline2update& "', Hheadline2 = '" &Hheadline2update & "', Ktexts = '" &Ktextsupdate & "') WHERE KID = " & idnr
else
response.write "Ingenting at opdatere!"
end if
                       
Conn.Execute(SQL)
Conn.Close

%>
Avatar billede and_ Nybegynder
21. april 2004 - 15:38 #4
udskift med den denne og smid outputtet herind :)

<%
Kheadlineupdate=Request.queryString("Kheadline")
Hheadline2update=Request.queryString("Hheadline2")
Ktextsupdate=Replace(Request.queryString("Ktexts"),"'","''")
Kshowupdate=Request.queryString("Kshow")
KIDupdate=Request.queryString("KID")

'Set Conn = Server.CreateObject("ADODB.Connection")
'Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& server.mappath("../../database/database.mdb")

idnr = Request.QueryString("KID")

if idnr <> "" then
strSql= "UPDATE Categories SET (Kheadline = '" & Hheadline2update& "', Hheadline2 = '" &Hheadline2update & "', Ktexts = '" &Ktextsupdate & "') WHERE KID = " & idnr
else
strsql = "Ingenting at opdatere!"
end if

response.write strsql       
               
'Conn.Execute(SQL)
'Conn.Close

%>
Avatar billede andersasp Nybegynder
21. april 2004 - 15:40 #5
Ok der spytter følgende ud!

UPDATE Categories SET (Kheadline = '', Hheadline2 = '', Ktexts = '
dette er en test!

') WHERE KID = 3 The page has been updated!
Avatar billede andersasp Nybegynder
21. april 2004 - 15:43 #6
F... jeg har fundet en fejl!  Hheadline2 skal være Kheadline2

nu får jeg dette!!

UPDATE Categories SET (Kheadline = 'This is category number three', Hheadline2 = 'This is category number three', Ktexts = '
dette er en test!

') WHERE KID = 3 The page has been updated!
Avatar billede and_ Nybegynder
21. april 2004 - 15:43 #7
du synes ikke det ser underligt ud :)

ktexts indeholder bl.a. linieskift.... den går ikke.....

Hvorfor sender du egentlig dataerne via querystrings og ikke bare som form-objekter?
Avatar billede and_ Nybegynder
21. april 2004 - 15:44 #8
Prøv:

strSql= "UPDATE Categories SET (Kheadline = '" & Hheadline2update& "', Hheadline2 = '" &Hheadline2update & "', Ktexts = '" & replace(Ktextsupdate, vbcrlf, "<br>") & "') WHERE KID = " & idnr
Avatar billede and_ Nybegynder
21. april 2004 - 15:44 #9
der er intet som fejlfinding vel :D
Avatar billede andersasp Nybegynder
21. april 2004 - 15:49 #10
Den sender det samme som før!  jeg tror det var min dumme fejl!!

UPDATE Categories SET (Kheadline = 'This is category number three', Hheadline2 = 'This is category number three', Ktexts = '
dette er en test!

') WHERE KID = 3 The page has been updated!
Avatar billede andersasp Nybegynder
21. april 2004 - 15:56 #11
Den kommer desværre stadig med fejlen når jeg prøver at gemme:

Command text was not set for the command object.
Avatar billede and_ Nybegynder
21. april 2004 - 16:00 #12
LLLLLLLLLLLLLOOOOOOOOOOOOOOOOOOOOLLLLLLLLLLLLLLLLLLLLLLL Andens fejl :)

<%
strSql= "UPDATE Categories SET (Kheadline = '" & Hheadline2update& "', Hheadline2 = '" &Hheadline2update & "', Ktexts = '" &Ktextsupdate & "') WHERE KID = " & idnr
     
Conn.Execute(SQL)
%>

Vi kalder vores sætning strsql, men forsøger at kalde den med sql.... går ikke :)
skal se sådan ud:

Conn.Execute(strSql)
Avatar billede andersasp Nybegynder
21. april 2004 - 16:09 #13
Agraaa :D Nu har jeg ændret det men den kommer stadig med denne fejl!!

Syntax error in UPDATE statement.

Der står godt nok "Hheadline2" i "insert" men det hedder den også i databasen! ??

/savechanges.asp, line 24

<%
Kheadlineupdate=Request.queryString("Kheadline")
Hheadline2update=Request.queryString("Kheadline2")
Ktextsupdate=Replace(Request.queryString("Ktexts"),"'","''")
Kshowupdate=Request.queryString("Kshow")
KIDupdate=Request.queryString("KID")

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& server.mappath("../../database/database.mdb")

idnr = Request.QueryString("KID")

if idnr <> "" then
strSql= "UPDATE Categories SET (Kheadline = '" & Kheadlineupdate& "', Hheadline2 = '" &Hheadline2update & "', Ktexts = '" & replace(Ktextsupdate, vbcrlf, "<br>") & "') WHERE KID = " & idnr
else
strsql = "Ingenting at opdatere!"
end if
               
Conn.Execute(strSql)  'linie 24
Conn.Close

%>
Avatar billede and_ Nybegynder
21. april 2004 - 16:12 #14
og du er sikker på at det Hheadline2 den fejler på..... ???

og det er et tekst-felt?

Men vi er da kommet videre :)
Avatar billede and_ Nybegynder
21. april 2004 - 16:19 #15
<%
'Åbner databasen
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& server.mappath("../../database/database.mdb")

'Erklærer variabler
Kheadlineupdate = Request.queryString("Kheadline")
Hheadline2update = Request.queryString("Kheadline2")
Ktextsupdate = Replace(Request.queryString("Ktexts"),"'","''")
tekst = replace(Ktextsupdate, vbcrlf, "<br>")
Kshowupdate = Request.queryString("Kshow")
KIDupdate = Request.queryString("KID")
idnr = Request.QueryString("KID")

'Tjekker at der er idnr!
if idnr <> "" then
    'gemmer i basen
    strSql= "UPDATE Categories SET (Kheadline = '" & Kheadlineupdate& "', Hheadline2 = '" & Hheadline2update & "', Ktexts = '" & tekst & "') WHERE KID = " & idnr
    Conn.Execute(strSql)  'linie 24
    Conn.Close
else
    'bliver udskrevet hvis id er blank!
    response.write("Ingenting at opdatere!")
end if
%>
Avatar billede andersasp Nybegynder
21. april 2004 - 16:19 #16
Ja da jeg ændrede Kheadline2 til Hheadline2 udskrev den begge headlines!

Alle nedenstående felter er tekst pånær Ktexts som er notat!

KID, Kheadline, Hheadline2, Ktexts
Avatar billede and_ Nybegynder
21. april 2004 - 16:21 #17
hvad siger den til det nye
Avatar billede andersasp Nybegynder
21. april 2004 - 16:23 #18
den kommer stadig med samme fejl desværre!

Microsoft JET Database Engine error '80040e14'

Syntax error in UPDATE statement
Avatar billede and_ Nybegynder
21. april 2004 - 16:23 #19
<%
'Åbner databasen
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& server.mappath("../../database/database.mdb")

'Erklærer variabler
Kheadlineupdate = Request.queryString("Kheadline")
Hheadline2update = Request.queryString("Kheadline2")
Ktextsupdate = Replace(Request.queryString("Ktexts"),"'","''")
tekst = replace(Ktextsupdate, vbcrlf, "<br>")
Kshowupdate = Request.queryString("Kshow")
KIDupdate = Request.queryString("KID")
idnr = Request.QueryString("KID")

'Tjekker at der er idnr!
if idnr <> "" then
    'gemmer i basen
    strSql= "UPDATE Categories SET (Kheadline = '" & Kheadlineupdate& "', Hheadline2 = '" & Hheadline2update & "', Ktexts = '" & tekst & "') WHERE KID = " & idnr
    response.write strSql
'    Conn.Execute(strSql)  'linie 24
    Conn.Close
else
    'bliver udskrevet hvis id er blank!
    response.write("Ingenting at opdatere!")
end if
%>

og jeg vil gerne se outputtet
Avatar billede andersasp Nybegynder
21. april 2004 - 16:26 #20
Her er outputtet: 

UPDATE Categories SET (Kheadline = 'Category 3', Hheadline2 = 'This is category number three', Ktexts = 'Hallo hallaothis is fun! test') WHERE KID = 3 The page has been updated!
Avatar billede and_ Nybegynder
21. april 2004 - 16:29 #21
flyt lige denne:
The page has been updated!

op i:
'Tjekker at der er idnr!
if idnr <> "" then
    'gemmer i basen
    strSql= "UPDATE Categories SET (Kheadline = '" & Kheadlineupdate& "', Hheadline2 = '" & Hheadline2update & "', Ktexts = '" & tekst & "') WHERE KID = " & idnr
    response.write strSql
'    Conn.Execute(strSql)  'linie 24
    Conn.Close
    response.write "<br>The page has been updated!"
else
    'bliver udskrevet hvis id er blank!
    response.write("Ingenting at opdatere!")
end if
Avatar billede and_ Nybegynder
21. april 2004 - 16:31 #22
<%
'Åbner databasen
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& server.mappath("../../database/database.mdb")

'Erklærer variabler
Kheadlineupdate = Request.queryString("Kheadline")
Hheadline2update = Request.queryString("Kheadline2")
Ktextsupdate = Replace(Request.queryString("Ktexts"),"'","''")
tekst = replace(Ktextsupdate, vbcrlf, "<br>")
Kshowupdate = Request.queryString("Kshow")
KIDupdate = Request.queryString("KID")
idnr = Request.QueryString("KID")

'Tjekker at der er idnr!
if idnr <> "" then
    'gemmer i basen
    strSql= "UPDATE Categories SET Kheadline = '" & Kheadlineupdate& "', Hheadline2 = '" & Hheadline2update & "', Ktexts = '" & tekst & "' WHERE KID = " & idnr
    response.write strSql
'  Conn.Execute(strSql)  'linie 24
    Conn.Close
    response.write "<br>The page has been updated!"
else
    'bliver udskrevet hvis id er blank!
    response.write("Ingenting at opdatere!")
end if
%>
Avatar billede andersasp Nybegynder
21. april 2004 - 16:31 #23
Sådan! nu udskriver den!

UPDATE Categories SET (Kheadline = 'Category 3', Hheadline2 = 'This is category number three', Ktexts = 'Hallo hallaothis is fun! test') WHERE KID = 3
The page has been updated!
Avatar billede andersasp Nybegynder
21. april 2004 - 16:33 #24
dette udskriver den med det sidste kode du indsatte!

UPDATE Categories SET Kheadline = 'Category 3', Hheadline2 = 'This is category number three', Ktexts = 'Hallo hallaothis is fun! test' WHERE KID = 3
The page has been updated!
Avatar billede and_ Nybegynder
21. april 2004 - 16:34 #25
har du prøvet at køre den?
Avatar billede and_ Nybegynder
21. april 2004 - 16:34 #26
Conn.Execute(strSql)  'linie 24
Avatar billede andersasp Nybegynder
21. april 2004 - 16:35 #27
Totalt fedt!  nu virker det!  tusinde tak!!

Hvad var det egentligt der gik galt??
Avatar billede and_ Nybegynder
21. april 2004 - 16:39 #28
det var:

pkt1: Vi kaldte vores sql-sætning for strSql men forsøgte at kalde den med sql i vores execute. Da den ikke vidste at strSql og sql er samme linie, fejler den her.
Variablerne skal hedde det samme (selvfølgelig.......)

pkt2. Normalt har jeg aldrig haft problemer med at benytte parenteser i sql-sætninger, men det kunne denne altså ikke lide, derfor fjernede vi dem igen.....

Og så fik vi da lige optimeret din kode også :)
Avatar billede and_ Nybegynder
21. april 2004 - 16:40 #29
så det færdige resultat er som følger:

<%
'Åbner databasen
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& server.mappath("../../database/database.mdb")

'Erklærer variabler
Kheadlineupdate = Request.queryString("Kheadline")
Hheadline2update = Request.queryString("Kheadline2")
Ktextsupdate = Replace(Request.queryString("Ktexts"),"'","''")
tekst = replace(Ktextsupdate, vbcrlf, "<br>")
Kshowupdate = Request.queryString("Kshow")
KIDupdate = Request.queryString("KID")
idnr = Request.QueryString("KID")

'Tjekker at der er idnr!
if idnr <> "" then
    'gemmer i basen
    strSql= "UPDATE Categories SET Kheadline = '" & Kheadlineupdate& "', Hheadline2 = '" & Hheadline2update & "', Ktexts = '" & tekst & "' WHERE KID = " & idnr
'  Conn.Execute(strSql)  'linie 24
    Conn.Close
else
    'bliver udskrevet hvis id er blank!
    response.write("Ingenting at opdatere!")
end if
%>
Avatar billede and_ Nybegynder
21. april 2004 - 16:41 #30
og hvis det skal være helt rigtigt :)

<%
'Erklærer variabler
Kheadlineupdate = Request.queryString("Kheadline")
Hheadline2update = Request.queryString("Kheadline2")
Ktextsupdate = Replace(Request.queryString("Ktexts"),"'","''")
tekst = replace(Ktextsupdate, vbcrlf, "<br>")
Kshowupdate = Request.queryString("Kshow")
KIDupdate = Request.queryString("KID")
idnr = Request.QueryString("KID")

'Tjekker at der er idnr!
if idnr <> "" then
    'Åbner og gemmer i databasen
    Set Conn = Server.CreateObject("ADODB.Connection")
    Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& server.mappath("../../database/database.mdb")
    strSql= "UPDATE Categories SET (Kheadline = '" & Kheadlineupdate& "', Hheadline2 = '" & Hheadline2update & "', Ktexts = '" & tekst & "') WHERE KID = " & idnr
    response.write strSql
    Conn.Execute(strSql)
    Conn.Close
    response.write "The page has been updated!"
else
    'bliver udskrevet hvis id er blank!
    response.write("Ingenting at opdatere!")
end if
%>
Avatar billede and_ Nybegynder
21. april 2004 - 16:42 #31
damnit :)

denne skal lige fjernes:    response.write strSql
Avatar billede andersasp Nybegynder
21. april 2004 - 16:46 #32
Tusinde tak for hjælpen!
Avatar billede and_ Nybegynder
21. april 2004 - 16:47 #33
det er iorden :)

vi skal jo hjælpe hinanden :D
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