Jørn Andersen wrote in dk.edb.internet.webdesign.serverside.asp:
> On Sun, 2 Feb 2003 17:19:29 +0100, "Kim Lund Hansen"
> <pervo@get2net.dk> wrote:
>
> >Du kan bruge:
> >' SQL sætning opbygges
> >strSQL = "Insert into csklan ("
> >
> >strSQL = strSQL & "klannavn, "
> > strSQL = strSQL & "klantype, "
> > strSQL = strSQL & "email, "
> > strSQL = strSQL & "web, "
> > strSQL = strSQL & "ircchan, "
> > strSQL = strSQL & "klantag) "
> >
> >strSQL = strSQL & "values("
> >
> >strSQL = strSQL & "'" & Request.Form("klannavn") & "', "
> >strSQL = strSQL & "'" & Request.Form("klannavn") & "', "
> >strSQL = strSQL & "'" & Request.Form("email") & "', "
> >strSQL = strSQL & "'" & Request.Form("web") & "', "
> >strSQL = strSQL & "'" & Request.Form("ircchan") & "', "
> >strSQL = strSQL & "'" & Request.Form("klantag") & "') "
>
> Svaret er i princippet godt nok - i den forstand, at det formentlig
> vil virke. (Bortset fra den lille fejl med klannavn <-> klantype.) Og
> også i den forstand, at det leder spørgeren på det rette spor.
>
> Jeg vil dog benytte lejligheden til at advare mod at putte
> formular-resultater direkte ind i en SQL-streng.
>
> Man bør normalt lave en eller anden form for validering af
> formular-resulaterne, inden de indsættes i SQL-strengen.
>
> Jeg plejer at hente input ind som noget af det første på siden,
> tildele dem et variabelnavn og så lave en basal validering her - noget
> i retning af:
>
> strKlannavn = Request.Form("klannavn")
> If Len(strKlannavn) > 0 Then
> strKlannavn = Replace(strKlannavn, "'", "''")
> Else
> ' Vis evt. en advarsel eller gør noget andet ...
> End if
>
> Denne validering checker, om der overhovedet er et input, der kan
> behandles. Hvis der er, checker den for, om der er enkelt-plinger ('),
> som så dubleres - da de ellers ville smadre SQL-strengen. Man kan evt.
> også gøre det med apostrofer (").
>
> Hvordan man vil validere afhænger selvfølgelig af, hvilke krav der
> stilles til de enkelte formular-resulater, når de skal indsættes i
> databasen. Nogle gange vil man sikre sig, at der er tale om et tal,
> andre gange at en streng har en bestemt længde, et tal har en bestemt
> størrelse osv. osv.
>
> Se i øvrigt også Jakob Andersens glimrende artikel:
> <url:
http://activedeveloper.dk/aspdigital/2002053001.asp>
>
> Slutningen af SQL-strengen kommer så til at se ud nogenlunde som:
> strSQL = strSQL & "values("
> strSQL = strSQL & "'" & strKlannavn & "', "
> strSQL = strSQL & "'" & strKlantype & "', "
> strSQL = strSQL & "'" & strEmail & "', "
> strSQL = strSQL & "'" & strWeb & "', "
> strSQL = strSQL & "'" & strIrcchan & "', "
> strSQL = strSQL & "'" & strKlantag & "') "
>
> Eller lidt kortere:
> strSQL = strSQL & "values(" & _
> "'" & strKlannavn & "', " & _
> "'" & strKlantype & "', " & _
> "'" & strEmail & "', " & _
> "'" & strWeb & "', " & _
> "'" & strIrcchan & "', " & _
> "'" & strKlantag & "') "
>
> PS: Gider du tage et kig på:
> <URL:
http://www.usenet.dk/netikette/citatteknik.html>
>
> --
> Jørn Andersen,
> Brønshøj
Tak for det svar men har ikke tænkt at følge det nu da det kun er til
eget brug og er selv klar over hvad der kan og må skrives i mine
formler... men jeeg vil huske på...
--
Danmarks største specialiserede IT jobdatabase
- Udelukkende med IT- og internetrelaterede jobs
- Opret en profil og lad drømmejobbet finde dig
KLIK HER! =>
http://www.html.dk/job