/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
indsætte data i DB
Fra : Peter Andersen


Dato : 21-01-04 13:32

Hejza...

jeg har en lille database, hvor jeg gerne vil have indsat data.
jeg henter data via en formular på en html-side, og vil så gerne
have dem ned i DB via en asp.

jeg forestiller mig at det kan gøres via url'en, men er stadig
for grøn til helt at fatte alle sammenhænge. har været igennem
tutorial og forsøgt, men...

scriptet til at smide date ind i db er sakset fra tutorial, og så
forestiller jeg mig at data må kunne indsættes, hvis "bare" jeg
skriver det rigtige ved ???? !

Sådan ser scriptet ud - lige nu! (bortset fra '????')

' SQL sætning opbygges
strSQL = "Insert into personer ("

strSQL = strSQL & "Id, "
strSQL = strSQL & "Kalde_navn, "
strSQL = strSQL & "email, "
strSQL = strSQL & "telefon_nr) "

strSQL = strSQL & "values( "

strSQL = strSQL & "'­­­????', "
strSQL = strSQL & "'????', "
strSQL = strSQL & "'????', "
strSQL = strSQL & "'????')"

' SQL sætning eksekveres
Conn.Execute(strSQL)


er jeg helt ude i hampen...?

mvh

peter

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

 
 
Lars Hoffmann (21-01-2004)
Kommentar
Fra : Lars Hoffmann


Dato : 21-01-04 13:46

"Peter Andersen" <peter@gourmad.dk> escribió en el mensaje
news:bulrfi$4rn$1@sunsite.dk...

> strSQL = strSQL & "Id, "
> strSQL = strSQL & "Kalde_navn, "
> strSQL = strSQL & "email, "
> strSQL = strSQL & "telefon_nr) "
>
> strSQL = strSQL & "values( "
>
> strSQL = strSQL & "'­­­????', "
......
> er jeg helt ude i hampen...?

Nej det ser ikke værst ud, du skal dog være opmærksom på at der ikke skal
plinger rundt om værdier i et tal-felt. Din id er nok numerisk og du bør
derfor fjerne ' rundt om ????, således at det kommer til at se sådanher ud:

strSQL = "Insert into personer ("

strSQL = strSQL & "Id, "
strSQL = strSQL & "Kalde_navn, "
strSQL = strSQL & "email, "
strSQL = strSQL & "telefon_nr) "

strSQL = strSQL & "values( "

strSQL = strSQL & "­­­????, "
strSQL = strSQL & "'????', "
strSQL = strSQL & "'????', "
strSQL = strSQL & "'????')"

MEd venlig hilsen
Lars hoffmann



Chrisser (21-01-2004)
Kommentar
Fra : Chrisser


Dato : 21-01-04 13:52

Peter Andersen wrote:
> scriptet til at smide date ind i db er sakset fra tutorial, og så
> forestiller jeg mig at data må kunne indsættes, hvis "bare" jeg
> skriver det rigtige ved ???? !

Det kan de da.

> Sådan ser scriptet ud - lige nu! (bortset fra '????')

Jeg vil foreslå dig at hente værdierne på forhånd, på den måde har du
mulighed for at validere dem inden indsættelse i databasen. Hvis du sender
via get-metoden:

id = Request.Querystring("NavnPåDitIDFelt")
navn = Request.Querystring("NavnPåDitNavneFelt")

Hvis du bruger post:

id = Request.Form("NavnPåDitIDFelt")
navn = Request.Form("NavnPåDitNavneFelt")

> ' SQL sætning opbygges
> strSQL = "Insert into personer ("
>
> strSQL = strSQL & "Id, "
> strSQL = strSQL & "Kalde_navn, "
> strSQL = strSQL & "email, "
> strSQL = strSQL & "telefon_nr) "
>
> strSQL = strSQL & "values( "

strSQL = strSQL & id & "," ' kommentar: her går jeg ud fra at id er
numerisk
strSQL = strSQL & "'" & navn & "'" & "," ' kommentar: her går jeg ud fra
at navn er tekst, så skal der pinger om værdien

osv.

> strSQL = strSQL & ")"

> er jeg helt ude i hampen...?

Det synes jeg ikke
Chrisser



Jens Gyldenkærne Cla~ (21-01-2004)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 21-01-04 13:54

Peter Andersen skrev:

> jeg forestiller mig at det kan gøres via url'en, men er stadig
> for grøn til helt at fatte alle sammenhænge. har været igennem
> tutorial og forsøgt, men...

....hvad? Hvad har du forsøgt og hvad sker der når du forsøger?


> scriptet til at smide date ind i db er sakset fra tutorial, og så
> forestiller jeg mig at data må kunne indsættes, hvis "bare" jeg
> skriver det rigtige ved ???? !

Hvis du læser hele lektion 20, skulle du gerne kunne få en ide til
hvad der skal stå. Prøv at se afsnittet "Gem input fra brugerne i
en database" (<http://html.dk/tutorials/asp/lektion20.asp>).


> strSQL = strSQL & "values( "
>
> strSQL = strSQL & "'­­­????', "

Du skal hente noget fra din form eller querystring. Det gøres med
Request.Form("navn_på_formfelt") eller
Request.Querystring("navn_på_formfelt").

Husk at det kun er tekstværdier der skal have anførselstegn om sig
- talværdier (fx id) skal stå uden anførselstegn.


> ' SQL sætning eksekveres

Et godt råd. Prøv at udskrive din sql-sætning i stedet for at
eksekvere den mens du tester siden. Det kan du gøre som her:

Response.write "SQL: " & strSQL
Response.End

' Denne og de følgende to linjer er udkommenteret. Derfor udføres
' de ikke
' Conn.Execute(strSQL)

Nu kan du prøve siden med forskellige input fra din form. Hver gang
vil den udskrive sql-sætningen på skærmen. Den kan du så
sammenligne med den syntaks der er angivet i lektion 20.
- Er der både start- og slutparanteser?
- Er der startanførselstegn men ikke slutanførselstegn?
- Mangler der værdier mellem to kommaer?

Hvis sql-sætningen ser rigtig ud, kan du også afprøve den direkte i
din database (går ud fra at du benytter Access). Åbn databasen,
vælg ny forespørgsel i designvisning, sig nej tak til at få
tilføjet tabeller til forespørgslen og gå ind i sql-visningen (du
kan skifte med knappen øverst til venstre på menulinjen).

Her kan du så indsætte sql-sætningen (uden "SQL: ") fra siden og se
om den virker.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408929
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste