|
| sql sætning? Fra : Thomas Brejner |
Dato : 23-08-03 19:40 |
|
Jeg har rodet med denne sql sætning i lidt tid, men kan ikke finde en fejl.
Det er sikkert bare et eller andet jeg har overset men tag lige et kig og
hjælp mig. Kategoriid er et tal felt i databasen og resten er text.
SQL = "insert into forum (kategoriid, navn, overskrift, email, forumbesked,
billed) values (" & Request("kategoriid") & ", '" & request("navn") & "', '"
& request("overskrift") & "', '" & request("email") & "', '" &
request("forumbesked") & "', '" & request("billed") & "' )"
| |
Torben Brandt (23-08-2003)
| Kommentar Fra : Torben Brandt |
Dato : 23-08-03 20:25 |
|
Thomas Brejner wrote:
> Jeg har rodet med denne sql sætning i lidt tid, men kan ikke finde en fejl.
> Det er sikkert bare et eller andet jeg har overset men tag lige et kig og
> hjælp mig. Kategoriid er et tal felt i databasen og resten er text.
> SQL = "insert into forum (kategoriid, navn, overskrift, email, forumbesked,
> billed) values (" & Request("kategoriid") & ", '" & request("navn") & "', '"
> & request("overskrift") & "', '" & request("email") & "', '" &
> request("forumbesked") & "', '" & request("billed") & "' )"
Hvilken fejlmeddelelse får du ?
Har du prøvet at udskrive sql-stregen ?
Response.Write SQL
Response.End
Læs gerne <URL: http://asp-faq.dk/article/?id=41>
/Torben
| |
Thomas Brejner (23-08-2003)
| Kommentar Fra : Thomas Brejner |
Dato : 23-08-03 20:26 |
|
jeg får denne fejlmeddelelse
Microsoft OLE DB Provider for ODBC Drivers error '80040e14'
[Microsoft][ODBC Microsoft Access Driver] Syntax error in INSERT INTO
statement.
"Torben Brandt" <name@domain.invalid> skrev i en meddelelse
news:3F47BF72.6000400@domain.invalid...
> Thomas Brejner wrote:
> > Jeg har rodet med denne sql sætning i lidt tid, men kan ikke finde en
fejl.
> > Det er sikkert bare et eller andet jeg har overset men tag lige et kig
og
> > hjælp mig. Kategoriid er et tal felt i databasen og resten er text.
> > SQL = "insert into forum (kategoriid, navn, overskrift, email,
forumbesked,
> > billed) values (" & Request("kategoriid") & ", '" & request("navn") &
"', '"
> > & request("overskrift") & "', '" & request("email") & "', '" &
> > request("forumbesked") & "', '" & request("billed") & "' )"
>
> Hvilken fejlmeddelelse får du ?
> Har du prøvet at udskrive sql-stregen ?
> Response.Write SQL
> Response.End
>
> Læs gerne <URL: http://asp-faq.dk/article/?id=41>
>
> /Torben
>
| |
Torben Brandt (23-08-2003)
| Kommentar Fra : Torben Brandt |
Dato : 23-08-03 20:36 |
|
Thomas Brejner wrote:
> jeg får denne fejlmeddelelse
>
> Microsoft OLE DB Provider for ODBC Drivers error '80040e14'
> [Microsoft][ODBC Microsoft Access Driver] Syntax error in INSERT INTO
> statement.
Og hvad når du udskriver sql-strengen:
Response.Write SQL
Response.End
Er du sikker på at feltnavnene er stavet korrekt? F.eks. staves feltet
'billed' eller 'billede'?
/Torben
| |
Peter Lykkegaard (23-08-2003)
| Kommentar Fra : Peter Lykkegaard |
Dato : 23-08-03 20:50 |
|
Thomas Brejner wrote:
> jeg får denne fejlmeddelelse
>
> Microsoft OLE DB Provider for ODBC Drivers error '80040e14'
> [Microsoft][ODBC Microsoft Access Driver] Syntax error in INSERT INTO
> statement.
>
Check dine variabler der fra din webform
Hvis der ikke er validering på inddata så bør du implementere dette
Læs mere om dette på asp-faq
http://www.asp-faq.dk/article/?id=95
mvh/Peter Lykkegaard
| |
Christian M. Nielsen (23-08-2003)
| Kommentar Fra : Christian M. Nielsen |
Dato : 23-08-03 21:09 |
|
"Thomas Brejner" <thomasb@postbilen.dk> wrote in message
news:bi8ce0$1p12$1@news.cybercity.dk...
> SQL = "insert into forum (kategoriid, navn, overskrift, email,
forumbesked,
> billed) values (" & Request("kategoriid") & .............>
Plejer det ikke være Request.NOGET("kategoriid") etc?
Request.Form("xxx")
Request.QueryString("xxx")
--
Mvh / Regards
-=< Christian >=-
What capital has 164 letters in its name? See my web page to find out.
http://www.cmnielsen.dk ICQ: 25308942
" If something's hard to do, then it's not worth doing. Homer J. Simpson"
| |
Jørn Andersen (23-08-2003)
| Kommentar Fra : Jørn Andersen |
Dato : 23-08-03 23:29 |
|
On Sat, 23 Aug 2003 22:08:30 +0200, "Christian M. Nielsen"
<look_for_it@my.webpage> wrote:
>"Thomas Brejner" <thomasb@postbilen.dk> wrote in message
>news:bi8ce0$1p12$1@news.cybercity.dk...
>
>> SQL = "insert into forum (kategoriid, navn, overskrift, email,
>forumbesked,
>> billed) values (" & Request("kategoriid") & .............>
>
>
>Plejer det ikke være Request.NOGET("kategoriid") etc?
>
>Request.Form("xxx")
>Request.QueryString("xxx")
Ikke nødvendigvis. Hvis man kun skriver Request, leder den efter en
værdi i denne rækkefølge:
QueryString
Form
Cookies
ClientCertificate
ServerVariables
Det kan være en måde at tillade input fx fra enten en Querystring
eller en Form.
Der er dog et sikkerhedsmæssigt "men": Jo mere man åbner for input, jo
lettere er det at få et uønsket input.
I øvrigt er der (i eksemplet ovenfor) et stort sikkerhedshul ved at
bruge Request.* direkte i en SQL-streng uden validering - se fx:
<url: http://www.asp-faq.dk/article/?id=95>
--
Jørn Andersen,
Brønshøj
| |
Jørn Andersen (23-08-2003)
| Kommentar Fra : Jørn Andersen |
Dato : 23-08-03 23:38 |
|
On Sun, 24 Aug 2003 00:29:16 +0200, Jørn Andersen <jorn@jorna.dk>
wrote:
>Hvis man kun skriver Request, leder den efter en
>værdi i denne rækkefølge:
>QueryString
>Form
>Cookies
>ClientCertificate
>ServerVariables
Jeg glemte lige kilden:
"Beginning Active Server Pages 3.0" fra Wrox, s. 267.
--
Jørn Andersen,
Brønshøj
| |
|
|