Avatar billede oskar Nybegynder
21. august 2001 - 21:46 Der er 15 kommentarer og
1 løsning

Fejl i koden?

Dette er mit første alvorlige forsøg med ASP. Jeg har gået på kursus og læst i nogle bøger men kan altså ikke helt få det til at fungere. Hvad har jeg lavet forkert her. Filen indlaes.asp indeholder bl.a. følgende:

strSQL = \"Insert into Fejlmelding (\"

strSQL = strSQL & \"Lokale, \"
strSQL = strSQL & \"Maskine, \"
strSQL = strSQL & \"Anmelder, \"
strSQL = strSQL & \"Fejl, \"
strSQL = strSQL & \"Uddybning) \"

strSQL = strSQL & \"values(\'\"

strSQL = strSQL & \"Request.Form(\'Lokale\'), \"
strSQL = strSQL & \"Request.Form(\'Maskine\', \"
strSQL = strSQL & \"Request.Form(\'Anmelder\', \"
strSQL = strSQL & \"Request.Form(\'Fejl\', \"
strSQL = strSQL & \"Request.Form(\'Uddybning\') \"

Conn.Execute(strSQL)

Men når jeg kører den får jeg denne fejlmeddelelse:

Microsoft OLE DB Provider for ODBC Drivers error \'80040e14\'

[Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in query expression \'\'Request.Form(\'Lokale\'), Request.Form(\'Maskine\', Request.Form(\'Anmelder\', Request.Form(\'Fejl\', Request.Form(\'Uddybning\')\'.

/test/indlaes.asp, line 34

linie 34 er Conn.Execute(strSQL)

Avatar billede netsrac Praktikant
21. august 2001 - 21:50 #1
lidt afhængigt af om alle dine felter er tekst ?

strSQL = strSQL & \"Lokale, \"
strSQL = strSQL & \"Maskine, \"
strSQL = strSQL & \"Anmelder, \"
strSQL = strSQL & \"Fejl, \"
strSQL = strSQL & \"Uddybning) \"

strSQL = strSQL & \"values(\'\"

strSQL = strSQL & Request.Form(\"Lokale\") & \"\',\'\"
strSQL = strSQL & Request.Form(\"Maskine\") & \"\',\'\"
strSQL = strSQL & Request.Form(\"Anmelder\") & \"\',\'\"
strSQL = strSQL & Request.Form(\"Fejl\") & \"\',\'\"
strSQL = strSQL & Request.Form(\"Uddybning\") & \"\')\"
Avatar billede jacobchr Nybegynder
21. august 2001 - 21:50 #2
Prøv med ;

strSQL = \"Insert into Fejlmelding (\"

strSQL = strSQL & \"Lokale, \"
strSQL = strSQL & \"Maskine, \"
strSQL = strSQL & \"Anmelder, \"
strSQL = strSQL & \"Fejl, \"
strSQL = strSQL & \"Uddybning) \"

strSQL = strSQL & \"values(\'\"

strSQL = strSQL & \"Request.Form(\'Lokale\'), \"
strSQL = strSQL & \"Request.Form(\'Maskine\'), \"
strSQL = strSQL & \"Request.Form(\'Anmelder\'), \"
strSQL = strSQL & \"Request.Form(\'Fejl\'), \"
strSQL = strSQL & \"Request.Form(\'Uddybning\'))\"

Conn.Execute(strSQL)


/jacob
Avatar billede ldanielsen Nybegynder
21. august 2001 - 21:52 #3
strSQL = strSQL & Request.Form(\"Lokale\") & \"\', \'\"
strSQL = strSQL & Request.Form(\"Maskine\") & \"\', \'\"
strSQL = strSQL & Request.Form(\"Anmelder\") & \"\', \'\"
strSQL = strSQL & Request.Form(\"Fejl\") & \"\', \'\"
strSQL = strSQL & Request.Form(\"Uddybning\") & \"\')\"
Avatar billede ldanielsen Nybegynder
21. august 2001 - 21:56 #4
eller måske er dette i virkeligheden mere overskueligt_

str1 = \"Insert into Fejlmelding (Lokale, Maskine, Anmelder, Fejl, Uddybning) values \"

str2 = \"(\'\" & Request.Form(\"Lokale\") & \"\', \'\" & Request.Form(\"Maskine\") & \"\', \'\" & Request.Form(\"Anmelder\") & \"\', \'\" & Request.Form(\"Fejl\") & \"\', \'\" & Request.Form(\"Uddybning\") & \"\')\"

strSQL = str1 & str2
Avatar billede ldanielsen Nybegynder
21. august 2001 - 21:57 #5
En lang linie, ikke?:

str1 = \"Insert into Fejlmelding (Lokale, Maskine, Anmelder, Fejl, Uddybning) values \"

str2 = \"(\'\" & Request.Form(\"Lokale\") & \"\', \'\" & Request.Form(\"Maskine\") & \"\', \'\" & Request.Form(\"Anmelder\") & \"\', \'\" & Request.Form(\"Fejl\") & \"\', \'\" & Request.Form(\"Uddybning\") & \"\')\"

strSQL = str1 & str2

_______________________________________________________________________________________________________________________________________________________________________
Avatar billede ldanielsen Nybegynder
21. august 2001 - 22:00 #6
det færdige resultat skulle gerne se ud ca som:

Insert into Fejlmelding (Lokale, Maskine, Anmelder, Fejl, Uddybning) values (\'Lokale 4B\', \'Overhead-projektor\', \'Søren Andersen\', \'Pæren er åbenbart sprunget\', \'\')\"
Avatar billede oskar Nybegynder
21. august 2001 - 22:00 #7
Det sidste felt er Notat, resten er tekstfelter. Jeg afprøver lige de forskellige svar ...
Avatar billede oskar Nybegynder
21. august 2001 - 22:09 #8
Det var Idas lange og dejligt overskuelige sætninger der gjorde udfaldet, de to andre forslag virkede desværre ikke.

Mange tak for hjælpen
Avatar billede netsrac Praktikant
21. august 2001 - 22:13 #9
Så vidt jeg kan se er min da nøjagtig magen til, bortset fra at den ikke er på en linie ? Hvad siger du ldanielsen ?
Avatar billede netsrac Praktikant
21. august 2001 - 22:14 #10
Hvem er Ida ? tror nok at Lars bliver sur nu :-)
Avatar billede ldanielsen Nybegynder
21. august 2001 - 22:22 #11
Jeg siger Tak,

-og så siger jeg at jeg fan\'me snart finder mig et nyt brugernavn!!

Hvad med \'nesleinadl\' eller \"sral\" ?
Avatar billede ldanielsen Nybegynder
21. august 2001 - 22:27 #12
Angående det med tekstfelter: Hvis fletet i databasen er et talfelt, skal der ikke være plinger omkring:

INSERT INTO PointOversigt (Navn, Point) VALUES (\'Lars Danielsen\', 100)

:o)
Avatar billede netsrac Praktikant
21. august 2001 - 22:37 #13
ldanielsen >> Hvad siger du til at min var ens med din ?
Avatar billede ldanielsen Nybegynder
21. august 2001 - 22:46 #14
Helt sikkert!
på nær et par mellemrum
- men oskar er newbie, ikke så derfor ...

Du var 2 minutter hurtigere, så du burde have haft pointene.
Avatar billede oskar Nybegynder
21. august 2001 - 22:47 #15
Du må da indrømme at det ser ud som om der står Ida Nielsen og ikke L Danielsen.
Avatar billede ldanielsen Nybegynder
21. august 2001 - 22:50 #16
Tja, men pyt med det
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