/ 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
update problem
Fra : Ole Nilsson


Dato : 16-09-02 11:33

Hej
Jeg har følgende indhold, men hvordan gør jeg det muligt også kan
opdaterer felterne data1 og data2 ? Hvis jeg bruger nedennævnte
syntaks, så kan jeg ikke opdaterer disse felter fordi de jo er
"optaget" idet opdatering forsøges. Jeg har prøvet noget med at
"delete" posten inden jeg opdaterer, men det virker ikke. Denne
metode fører jo frem til oprettelse af en hel ny post og det var
ikke lige det der var meningen.

...Her er alle form-værdierne omsat til str-værdi også disse to:
strdata1=Trim(Replace(request.form("data1"),"'",""))
strdata2=Trim(Replace(request.form("data2"),"'",""))
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "DBQ=" & server.mappath("../scripts/db.mdb") &
";Driver={Microsoft Access Driver (*.mdb)}"
strSQL = "SELECT data1,data2 FROM dataindhold WHERE data1='" &
strdata1 & "' AND data2='" & strdata2 & "'"
set rs=Connect.Execute(strSQL)
if rs.eof and rs.bof then

SQLstring= "UPDATE data SET navn='"&strnavn&"',
adresse='"&stradresse&"', tlf='"&strtlf&"', mail='"&strmail&"',
data1='"&Request.form("data1")&"',
data2='"&Request.form("data2")&"' WHERE nr = " & session("nr")
connect.Execute(SQLstring)

response.write "<p>Posten opdateret.</p>"
else
response.write "<p>Posten opdateret er ikke opdateret.</p>"

Nilsson


--
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

 
 
Jens Gyldenkærne Cla~ (16-09-2002)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 16-09-02 11:53

Ole Nilsson skrev:

> Jeg har følgende indhold, men hvordan gør jeg det muligt også kan
> opdaterer felterne data1 og data2 ? Hvis jeg bruger nedennævnte
> syntaks, så kan jeg ikke opdaterer disse felter fordi de jo er
> "optaget" idet opdatering forsøges.

Ikke forstået - hvad mener du med "optaget"?

> Jeg har prøvet noget med at
> "delete" posten inden jeg opdaterer, men det virker ikke. Denne
> metode fører jo frem til oprettelse af en hel ny post og det var
> ikke lige det der var meningen.


Du skal vel bare vælge posten igen, efter at den er opdateret? (jeg
er dog ikke sikker på at jeg forstår dit spørgsmål).

> ..Her er alle form-værdierne omsat til str-værdi også disse to:
> strdata1=Trim(Replace(request.form("data1"),"'",""))
> strdata2=Trim(Replace(request.form("data2"),"'",""))

Fint.


> if rs.eof and rs.bof then
>
> SQLstring= "UPDATE data SET navn='"&strnavn&"',
> adresse='"&stradresse&"', tlf='"&strtlf&"', mail='"&strmail&"',
> data1='"&Request.form("data1")&"',
> data2='"&Request.form("data2")&"' WHERE nr = " & session("nr")

Hov - hvorfor bruger du ikke dine variable strdata1 og 2 her? Der
er jo ikke kommet noget andet i dem bare fordi du har lavet et sql-
kald. Til gengæld risikerer du fejl med anførselstegn fordi du - i
modsætning til i din select-forespørgsel - ikke escaper dem.

> connect.Execute(SQLstring)
>
> response.write "<p>Posten opdateret.</p>"

Hvad sker der hvis execute-metoden fejler? - eller din where-
betingelse ikke udvælger nogen poster?

Ved du med sikkerhed at session("nr") altid findes i tabellen?


PS: Både din kode og dine usenetindlæg ville være lettere at læse
hvis du indsatte et par tomme linjer hist og her.

--
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

Ole Nilsson (16-09-2002)
Kommentar
Fra : Ole Nilsson


Dato : 16-09-02 15:52

Jens Gyldenkærne Clausen wrote in
dk.edb.internet.webdesign.serverside.asp:
> Ole Nilsson skrev:
>
> > Jeg har følgende indhold, men hvordan gør jeg det muligt også kan
> > opdaterer felterne data1 og data2 ? Hvis jeg bruger nedennævnte
> > syntaks, så kan jeg ikke opdaterer disse felter fordi de jo er
> > "optaget" idet opdatering forsøges.
>
> Ikke forstået - hvad mener du med "optaget"?
At de i forvejen findes i db, med værdier indsat tidligere af
brugeren. Dette gør jo at at den "sætning" jeg har nu hele tiden vil
finde disse værdier og derfor vil ikke opdaterer.
>
> > Jeg har prøvet noget med at
> > "delete" posten inden jeg opdaterer, men det virker ikke. Denne
> > metode fører jo frem til oprettelse af en hel ny post og det var
> > ikke lige det der var meningen.
>
>
> Du skal vel bare vælge posten igen, efter at den er opdateret? (jeg
> er dog ikke sikker på at jeg forstår dit spørgsmål).
>
> > ..Her er alle form-værdierne omsat til str-værdi også disse to:
> > strdata1=Trim(Replace(request.form("data1"),"'",""))
> > strdata2=Trim(Replace(request.form("data2"),"'",""))
>
> Fint.
>
>
> > if rs.eof and rs.bof then
> >
> > SQLstring= "UPDATE data SET navn='"&strnavn&"',
> > adresse='"&stradresse&"', tlf='"&strtlf&"', mail='"&strmail&"',
> > data1='"&Request.form("data1")&"',
> > data2='"&Request.form("data2")&"' WHERE nr = " & session("nr")
>
> Hov - hvorfor bruger du ikke dine variable strdata1 og 2 her?
Det har du ret i. Det kunne jeg ligeså godt.
Der er jo ikke kommet noget andet i dem bare fordi du har lavet et
sql-
> kald. Til gengæld risikerer du fejl med anførselstegn fordi du - i
> modsætning til i din select-forespørgsel - ikke escaper dem.
>
> > connect.Execute(SQLstring)
> >
> > response.write "<p>Posten opdateret.</p>"
>
> Hvad sker der hvis execute-metoden fejler? - eller din where-
> betingelse ikke udvælger nogen poster? Men "nr" findes for alle
poster.
>
> Ved du med sikkerhed at session("nr") altid findes i tabellen? JA
>
>
> PS: Både din kode og dine usenetindlæg ville være lettere at læse
> hvis du indsatte et par tomme linjer hist og her.
> Javel . . .

Venlig hilsen
Nilsson


--
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

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

Månedens bedste
Årets bedste
Sidste års bedste