/ 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
Tilføj poster til tabel i database
Fra : Flemming Jensen


Dato : 13-05-02 21:05

Hejsa

Jeg er ved at prøve at kæde en database på min hjemmeside, men jeg kan ikke
rigtig finde ud af hvordan jeg tilføjer data til databasen. Jeg vil gerne
bruge brugernes indputs, men kan ikke få det til at virke med flere forms,
kun en! Når der kun er en post, som her Fornavn er det let nok:

strSQL = "Insert into Medlemmere (Fornavn) values('" &
Request.Form("Fornavn") & "')"

Men hvad gør jeg når jeg gerne vil have flere, altså f.eks. også Efternavn??

Hvorfor kan man ikke sige:

strSQL = "Insert into Medlemmere (Fornavn) values('" &
Request.Form("Fornavn") & "')"

strSQL = strSQL & strSQL = "Insert into Medlemmere (Efternavn) values('" &
Request.Form("Efternavn") & "')"

Det må være sådan noget lignende, kan bare ikke gennemskue det helt!


--
Flemming Jensen



 
 
Jakob Andersen (13-05-2002)
Kommentar
Fra : Jakob Andersen


Dato : 13-05-02 21:12

"Flemming Jensen" <CyberOrc@hotmail.com> wrote in message
news:D%UD8.2316$4f4.170758@news000.worldonline.dk...
> strSQL = "Insert into Medlemmere (Fornavn) values('" &
> Request.Form("Fornavn") & "')"
> Men hvad gør jeg når jeg gerne vil have flere, altså f.eks. også
Efternavn??

strSQL = "INSERT INTO Medlemmere(Fornavn, Efternavn) values('" &
Request.Form( "Fornavn" ) & "', '" & Request.Form( "Efternavn" ) & "')"

Men ovenstående er ikke helt optimalt da hvis en bruger indtaster ' i sit
fornavn eller efternavn fejler SQL sætningen da den tror at teksten slutter
og det næste der kommer er en variabel, derfor skal man altid udskifte ' med
'' da man på denne måde "escaper" tegnet således at databasen er klar over
at næste tegn er specielt:

Altså sådan her:
<%
Fornavn = Request.Form( "Fornavn" )
Fornavn = Replace( Fornavn, "'", "''")
Efternavn = Request.Form( "Efternavn " )
Efternavn = Replace( Efternavn , "'", "''")
strSQL = "INSERT INTO Medlemmere(Fornavn, Efternavn) values('" & Fornavn &
"', '" & Efternavn & "')"
%>

--
Jakob Andersen



Gregers Petersen (13-05-2002)
Kommentar
Fra : Gregers Petersen


Dato : 13-05-02 21:17

"Flemming Jensen" <CyberOrc@hotmail.com> skrev i en meddelelse
news:D%UD8.2316$4f4.170758@news000.worldonline.dk...
> Det må være sådan noget lignende, kan bare ikke gennemskue det helt!

Tjah, det kan se således ud:
strSQL = "Insert into Medlemmere (Fornavn,Efternavn) values('" &
Request.Form("Fornavn") & "','" & Request.Form("Efternavn") & "')"


--
MvH

Gregers Petersen
http://disclaimer.gpweb.dk





Flemming Jensen (13-05-2002)
Kommentar
Fra : Flemming Jensen


Dato : 13-05-02 21:30

Jeg prøvede at gøre som jeg forstod I skrev til mig. Men det virker stadig
ikke. Hvad er der er i vejen her:

<html>
<title>Tilfoej data i databasen</title>
<head>
</head>
<body>
<%

' Databaseforbindelse - husk at angive sti til din database
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath("database.mdb")
Conn.Open DSN

'Udskifter ' med ''

Fornavn = Request.Form( "Fornavn" )
Fornavn = Replace( Fornavn, "'", "''")

Efternavn = Request.Form( "Efternavn " )
Efternavn = Replace( Efternavn , "'", "''")

Email = Request.Form( "Email " )
Email = Replace( Email , "'", "''")

Addresse = Request.Form( "Addresse " )
Addresse = Replace( Addresse , "'", "''")

Postnrby = Request.Form( "Postnrby " )
Postnrby = Replace( Postnrby , "'", "''")

' SQL sætning opbygges
strSQL = "Insert into Medlemmere (Fornavn,Efternavn) values('" &
Request.Form("Fornavn") & "','" & Request.Form("Efternavn") & "')"

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

' Luk databaseforbindelse
Conn.Close

Set Conn = Nothing
%>

<h1>Databasen er opdateret!</h1>
</body>
</html>



Søg
Reklame
Statistik
Spørgsmål : 177504
Tips : 31968
Nyheder : 719565
Indlæg : 6408551
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste