/ 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 : Thomas Brejner


Dato : 11-02-03 20:34

Jeg har et problem med denne kode. Den gør ikke noget som helst
når man trykker update andet end den reloader siden og den har
ikke rettet noget.

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

Set RS = Server.CreateObject("ADODB.Recordset")
SQL = "Select * From besked Where id=" &
Request.Querystring("id")
RS.Open SQL, Conn, 3, 3

If Request.QueryString("update") = "true" Then
RS.Update
RS("navn") = Request.Form("navn")
RS("email") = Request.Form("email")
RS("besked") = Request.Form("besked")
RS.Update
End If
%>
<center>
<form method="post" action="retbesked.asp?id=<%
=Request.QueryString("id") %>">
<input type="text" name="navn" size="20"><br><br>
<input type="text" name="email" size="20"><br><br>
<TEXTAREA rows=4 cols=25 name=besked></TEXTAREA><br><br>
<input type="submit" value="Update"> </p>
</center>
<%
Conn.Close
Set Conn = Nothing
%>

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

 
 
TH (11-02-2003)
Kommentar
Fra : TH


Dato : 11-02-03 22:33

Hej,

"Thomas Brejner" <Thomasb@postbilen.dk> skrev i en meddelelse
news:b2bj6r$2r6$1@sunsite.dk...
> Jeg har et problem med denne kode. Den gør ikke noget som helst
> når man trykker update andet end den reloader siden og den har
> ikke rettet noget.

Jeg har kun set på din kode i 2 sek så der kan være mere galt...men du
siger:

> If Request.QueryString("update") = "true" Then

Den querystring er ikke defineret. Hvis du mener om der er blevet trykket på
"update" så er det:
request.form("update")....

/TH


---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.449 / Virus Database: 251 - Release Date: 27-01-2003



Jens Gyldenkærne Cla~ (11-02-2003)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 11-02-03 22:43

Thomas Brejner skrev:

> Jeg har et problem med denne kode. Den gør ikke noget som helst
> når man trykker update andet end den reloader siden og den har
> ikke rettet noget.

Hvis du skal opdatere data skal du enten benytte et opdaterbart
recordset eller (bedre) bruge en opdateringsforespørgsel.

Pt. gør du ingen af delene.

> RS.Open SQL, Conn, 3, 3

Det første tretal er værdien for "adOpenStatic" - altså en statisk
cursor. Den kan du ikke opdatere med.

> If Request.QueryString("update") = "true" Then
> RS.Update

Hvis du ville opdatere med et recordset ville jeg skrive Rs.Edit
herover i stedet for Rs.Update.

Men til almindelige opdateringer er det langt bedre at bruge en
update-forespørgsel.

Se en kort gennemgang af syntaksen her:
<http://html.dk/tutorials/asp/lektion22.asp>. Bemærk at der ikke
skal bruges noget recordsæt - en opdateringsforespørgsel returnerer
ingen poster.
--
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øren Kaastrup (11-02-2003)
Kommentar
Fra : Søren Kaastrup


Dato : 11-02-03 23:39



Jens GyldenkærneClausen wrote in
dk.edb.internet.webdesign.serverside.asp:
> Thomas Brejner skrev:
>
> > Jeg har et problem med denne kode. Den gør ikke noget som helst
> > når man trykker update andet end den reloader siden og den har
> > ikke rettet noget.
>
> Hvis du skal opdatere data skal du enten benytte et opdaterbart
> recordset eller (bedre) bruge en opdateringsforespørgsel.
>
> Pt. gør du ingen af delene.
>
> > RS.Open SQL, Conn, 3, 3
>
> Det første tretal er værdien for "adOpenStatic" - altså en statisk
> cursor. Den kan du ikke opdatere med.
>
Vil ikke blande mig men vil det sige at denne sætning ikke duer:

objRS.open "open bus"&tabel&" where billede like '"&path&"'",
objConn , adOpenStatic, adLockOptimistic, adCmdTable   

som du kan se bruger jeg adOpenStatic er det virker udemærket???

mener kun problemet ligger i at der står
If Request.QueryString("update") = "true"
for er den det????? jeg mener er værdien her true??


Søren


> > If Request.QueryString("update") = "true" Then
> > RS.Update
>
> Hvis du ville opdatere med et recordset ville jeg skrive Rs.Edit
> herover i stedet for Rs.Update.
>
> Men til almindelige opdateringer er det langt bedre at bruge en
> update-forespørgsel.
>
> Se en kort gennemgang af syntaksen her:
> <http://html.dk/tutorials/asp/lektion22.asp>. Bemærk at der ikke
> skal bruges noget recordsæt - en opdateringsforespørgsel
returnerer
> ingen poster.
> --
> 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


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

Jens Gyldenkærne Cla~ (11-02-2003)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 11-02-03 23:53

Søren Kaastrup skrev:

> Vil ikke blande mig men vil det sige at denne sætning ikke
> duer:
>
> objRS.open "open bus"&tabel&" where billede like '"&path&"'",
> objConn , adOpenStatic, adLockOptimistic, adCmdTable

Hvad mener du med "open bus"? - det har ikke så meget med sql at
gøre. Er det en asp-side du har ovenstående kode på?

> som du kan se bruger jeg adOpenStatic er det virker
> udemærket???

Jeg har ikke sagt at adOpenStatic ikke virker - blot at man ikke
kan opdatere med et statisk postsæt. Hvis man opdaterer er det - så
vidt jeg ved - kun postsættet der opdateres, og altså ikke den
bagvedliggende database (det er det der ligger i det statiske).

Jeg har dog ikke afprøvet det.

> mener kun problemet ligger i at der står
> If Request.QueryString("update") = "true"
> for er den det????? jeg mener er værdien her true??

Det er en reel fejlmulighed (som jeg overså i mit første indlæg).

NB: Læs venligst min signatur. Du citerer langt mere end
nødvendigt.
--
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øren Kaastrup (12-02-2003)
Kommentar
Fra : Søren Kaastrup


Dato : 12-02-03 09:59

Jens GyldenkærneClausen wrote in
dk.edb.internet.webdesign.serverside.asp:
> Søren Kaastrup skrev:
>
> > Vil ikke blande mig men vil det sige at denne sætning ikke
> > duer:
> >
> > objRS.open "open bus"&tabel&" where billede like '"&path&"'",
> > objConn , adOpenStatic, adLockOptimistic, adCmdTable
>
> Hvad mener du med "open bus"? - det har ikke så meget med sql at
> gøre. Er det en asp-side du har ovenstående kode på?
>
Nå da da -- jamen min tabel hedder bus + et variabel navn og det jeg
beder om er at åbne den så jeg kan opdaterer en post.



> > som du kan se bruger jeg adOpenStatic er det virker
> > udemærket???
>
> Jeg har ikke sagt at adOpenStatic ikke virker - blot at man ikke
> kan opdatere med et statisk postsæt. Hvis man opdaterer er det - så
> vidt jeg ved - kun postsættet der opdateres, og altså ikke den
> bagvedliggende database (det er det der ligger i det statiske).
>
> Jeg har dog ikke afprøvet det.
>
Virker fint, kunne også have brugt adopenKeyset, grunden til jeg
bruger denne Cusortype er fordi jeg senere bruger RecordCount der kun
virker med de 2 Cursortyper

Mvh
Søren
> > mener kun problemet ligger i at der står
> > If Request.QueryString("update") = "true"
> > for er den det????? jeg mener er værdien her true??
>
> Det er en reel fejlmulighed (som jeg overså i mit første indlæg).
>
> NB: Læs venligst min signatur. Du citerer langt mere end
> nødvendigt.
> --
> 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


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

Jens Gyldenkærne Cla~ (12-02-2003)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 12-02-03 12:00

Søren Kaastrup skrev:

>>> objRS.open "open bus"&tabel&" ...

>> Hvad mener du med "open bus"? - det har ikke så meget med sql
>> at gøre. Er det en asp-side du har ovenstående kode på?

> Nå da da -- jamen min tabel hedder bus + et variabel navn og
> det jeg beder om er at åbne den så jeg kan opdaterer en post.

Jeg har bare aldrig set "open" brugt som en del af source-
parameteren til et recordset.

Tilladte parametertyper for source er (iflg.
<http://www.devguru.com/Technologies/ado/quickref/recordset_open.ht
ml>):
- Command object
- SQL query string
- table name
- stored procedure call
- URL
- full or relative path/file name
- Stream object containing a Recordset

Dit eksempel ligner mest en SQL-streng - men jeg har svært ved at
se hvad "Open" skal gøre godt for der.

Din afsluttende konstant - adCmdTable - virker også ulogisk i
forhold til source-parameteren.


> Virker fint, kunne også have brugt adopenKeyset, grunden til
> jeg bruger denne Cusortype er fordi jeg senere bruger
> RecordCount der kun virker med de 2 Cursortyper

Jeg har læst lidt op på CursorTypes - og du har ret mht.
opdateringsmuligheder. En statisk cursor kan godt opdatere det
bagvedliggende recordset - den kan blot ikke se ændringer foretaget
af andre brugere i den periode hvor recordsettet er aktivt.

>> NB: Læs venligst min signatur. Du citerer langt mere end
>> nødvendigt.

Den overså du vist.
--
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øren Kaastrup (11-02-2003)
Kommentar
Fra : Søren Kaastrup


Dato : 11-02-03 23:23

Prøv lige at skrive
response.write Request.QueryString("update")
og se hvad der står i den gåt jo ud fra der skal stå "True"

Søren



Thomas Brejner wrote in dk.edb.internet.webdesign.serverside.asp:
> Jeg har et problem med denne kode. Den gør ikke noget som helst
> når man trykker update andet end den reloader siden og den har
> ikke rettet noget.
>
> <%
&gt; ' Databaseforbindelse - husk at angive sti til din database
&gt; Set Conn = Server.CreateObject("ADODB.Connection")
&gt; DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
&gt; DSN = DSN & "DBQ=" & Server.MapPath("database.mdb")
&gt; Conn.Open DSN
&gt;
&gt; Set RS = Server.CreateObject("ADODB.Recordset")
&gt; SQL = "Select * From besked Where id=" &
&gt; Request.Querystring("id")
&gt; RS.Open SQL, Conn, 3, 3
&gt;
&gt; If Request.QueryString("update") = "true" Then
&gt; RS.Update
&gt; RS("navn") = Request.Form("navn")
&gt; RS("email") = Request.Form("email")
&gt; RS("besked") = Request.Form("besked")
&gt; RS.Update
&gt; End If
&gt; %>
> <center>
> <form method="post" action="retbesked.asp?id=<%
&gt; =Request.QueryString("id") %>">
> <input type="text" name="navn" size="20"><br><br>
> <input type="text" name="email" size="20"><br><br>
> <TEXTAREA rows=4 cols=25 name=besked></ TEXTAREA><br><br>
> <input type="submit" value="Update"> </p>
> </center>
> <%
&gt; Conn.Close
&gt; Set Conn = Nothing
&gt; %>
>
> --
> 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


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

Søren Kaastrup (11-02-2003)
Kommentar
Fra : Søren Kaastrup


Dato : 11-02-03 23:31

Hej kan ikke helt følge dig

Hvorfor skriver du ikke
if Request.("navn") <> "" then ' eller en anden request
RS.Update
&gt; RS("navn") = Request.Form("navn")
&gt; RS("email") = Request.Form("email")
&gt; RS("besked") = Request.Form("besked")
&gt; RS.Update

Den der med update = True går vist ikke.

Søren



Thomas Brejner wrote in dk.edb.internet.webdesign.serverside.asp:
> Jeg har et problem med denne kode. Den gør ikke noget som helst
> når man trykker update andet end den reloader siden og den har
> ikke rettet noget.
>
> <%
&gt; ' Databaseforbindelse - husk at angive sti til din database
&gt; Set Conn = Server.CreateObject("ADODB.Connection")
&gt; DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
&gt; DSN = DSN & "DBQ=" & Server.MapPath("database.mdb")
&gt; Conn.Open DSN
&gt;
&gt; Set RS = Server.CreateObject("ADODB.Recordset")
&gt; SQL = "Select * From besked Where id=" &
&gt; Request.Querystring("id")
&gt; RS.Open SQL, Conn, 3, 3
&gt;
&gt; If Request.QueryString("update") = "true" Then
&gt; RS.Update
&gt; RS("navn") = Request.Form("navn")
&gt; RS("email") = Request.Form("email")
&gt; RS("besked") = Request.Form("besked")
&gt; RS.Update
&gt; End If
&gt; %>
> <center>
> <form method="post" action="retbesked.asp?id=<%
&gt; =Request.QueryString("id") %>">
> <input type="text" name="navn" size="20"><br><br>
> <input type="text" name="email" size="20"><br><br>
> <TEXTAREA rows=4 cols=25 name=besked></ TEXTAREA><br><br>
> <input type="submit" value="Update"> </p>
> </center>
> <%
&gt; Conn.Close
&gt; Set Conn = Nothing
&gt; %>
>
> --
> 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


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

Carsten Suurland (11-02-2003)
Kommentar
Fra : Carsten Suurland


Dato : 11-02-03 23:56

Hej Thomas

Problemet ligger i din forms action egenskab
Du har her ikke defineret "update"...

Den burde se således ud:

<form method="post" action="retbesked.asp?update=true&id=<%
=Request.QueryString("id") %>">

/Carsten Suurland

"Thomas Brejner" <Thomasb@postbilen.dk> wrote in message
news:b2bj6r$2r6$1@sunsite.dk...
> Jeg har et problem med denne kode. Den gør ikke noget som helst
> når man trykker update andet end den reloader siden og den har
> ikke rettet noget.
>
> <%
> ' 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
>
> Set RS = Server.CreateObject("ADODB.Recordset")
> SQL = "Select * From besked Where id=" &
> Request.Querystring("id")
> RS.Open SQL, Conn, 3, 3
>
> If Request.QueryString("update") = "true" Then
> RS.Update
> RS("navn") = Request.Form("navn")
> RS("email") = Request.Form("email")
> RS("besked") = Request.Form("besked")
> RS.Update
> End If
> %>
> <center>
> <form method="post" action="retbesked.asp?id=<%
> =Request.QueryString("id") %>">
> <input type="text" name="navn" size="20"><br><br>
> <input type="text" name="email" size="20"><br><br>
> <TEXTAREA rows=4 cols=25 name=besked></TEXTAREA><br><br>
> <input type="submit" value="Update"> </p>
> </center>
> <%
> Conn.Close
> Set Conn = Nothing
> %>
>
> --
> 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



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