/ 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
Database update der gør posten usynlig i b~
Fra : Kjærbøl


Dato : 30-10-03 14:24

Hej!

Er der nogen logisk forklaring på, at en opdatering af min
database via en formular, gør at posten bagefter ikke kan hentes
frem? Det går fint med de øvrige poster, som jeg ikke opdaterer,
og også poster der tilføjes via en formular kan "ses" bagefter.
At opdateringerne rent faktisk er gennemført ses, når man direkte
åbner Access - der er de.

Mvh. Helene og tak for de gode tutorials!

--
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~ (30-10-2003)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 30-10-03 14:28

Kjærbøl skrev:

> Er der nogen logisk forklaring på, at en opdatering af min
> database via en formular, gør at posten bagefter ikke kan hentes
> frem?

Det er svært at sige ud fra du oplysninger du har givet. Prøv at
læse artiklen her: <http://asp-faq.dk/article/?id=41>
- og vend tilbage med lidt flere oplysninger.


> Mvh. Helene og tak for de gode tutorials!

NB: Denne gruppe har ikke formelt noget med html.dk (eller deres
tutorials) at gøre. Læs evt.
<http://html.dk/nyhedsgrupper/usenet.asp>
--
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

Kjærbøl (30-10-2003)
Kommentar
Fra : Kjærbøl


Dato : 30-10-03 15:10

Hej igen!

> Det er svært at sige ud fra du oplysninger du har givet. Prøv at
> læse artiklen her: <http://asp-faq.dk/article/?id=41>
> - og vend tilbage med lidt flere oplysninger.

Hm, tjo det er ikke så let lige at forklare og det giver ikke mening
at sende koden, da den jo virker, når jeg ikke lige har opdateret.
Jeg kan nok bedst demonstrere fejlen ved at lade dig klikke ind på
sitet, hvor du så må brøve nogle af posterne af. De to øverste poster
virker ikke, da de er blevet opdateret (min de er i databasen!!), når
du kommer til "Agora" virker det som det skal, denne post er da
heller ikke blevet opdateret. Linket er:
http://www.tsnuk.dk/Leksikon_editor/Redigerslet.asp

Det sære er jo, at selve det rullepanel hvori man vælger posterne
hentes fra databasen, derfor forstår jeg det overhovedet ikke, for
hvis posten virkelig ikke var der, skulle den jo så heller ikke
fremkomme som en valgmulighed.

Jeg håber, det kan bringe dig lidt på sporet....så må du spørge
videre herfra.
>
> NB: Denne gruppe har ikke formelt noget med html.dk (eller deres
> tutorials) at gøre.
Undskyld forvirringen.

Hilsen Helene


--
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~ (30-10-2003)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 30-10-03 15:35

Kjærbøl skrev:

> Hm, tjo det er ikke så let lige at forklare og det giver ikke
> mening at sende koden, da den jo virker, når jeg ikke lige har
> opdateret.

Det der giver mening er at sende relevant kode. Når man prøver at
redigere en post der allerede er redigeret, kommer følgende
fejlmeddelelse:

bq1:    
ADODB.Field error '800a0bcd'

Either BOF or EOF is True, or the current record has been deleted.
Requested operation requires a current record.

/Leksikon_editor/editor.asp, line 43
#

- Den er særdeles relevant.

For at finde årsagen til fejlen kan man nu gå "baglæns". Start med
at finde ud af hvad der står i linje 43 (send det gerne hertil).

Formentlig forsøger du at udskrive et felt fra dit datasæt.
Fejlkoden ovenfor betyder at der ikke er nogen post at udskrive -
det betyder at fejlen formentlig ligger "højere" oppe end linje 43.

Den sql-sætning du bruger til at hente data med er et godt sted at
lede. Se på det link jeg gav før hvordan man kan udskrive den
resulterende sql. Den udskrift er også relevant i gruppen.


> http://www.tsnuk.dk/Leksikon_editor/Redigerslet.asp

Tak for linket - det er en rigtig god ide at give mulighed for at
se siden online.
--
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

Kjærbøl (30-10-2003)
Kommentar
Fra : Kjærbøl


Dato : 30-10-03 17:37

> bq1:    
> ADODB.Field error '800a0bcd'
>
> Either BOF or EOF is True, or the current record has been deleted.
> Requested operation requires a current record.
>
> /Leksikon_editor/editor.asp, line 43
> #
>
> - Den er særdeles relevant.
>
> For at finde årsagen til fejlen kan man nu gå "baglæns". Start med
> at finde ud af hvad der står i linje 43 (send det gerne hertil).

Den ser sådan ud:
<%

Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" &
Server.MapPath("../../db/Arkilex.mdb")
' Åben databaseforbindelsen
Conn.Open DSN

strSQL= "SELECT Krop.Term, Krop.Beskrivelse FROM Krop Where
Krop.Term ='" & request.form("editor") & "'"
'Response.Write "SQL-sætning bliver: " & strSQL
'Response.End

Set rs = Conn.Execute(strSQL)
strTerm = rs("Term")
Response.Write "<b>" & strTerm & "</b>"
rs.Close
Set rs = Nothing

%>



Se på det link jeg gav før hvordan man kan udskrive den
> resulterende sql. Den udskrift er også relevant i gruppen.
Nå jeg vælger "Abacus" bliver det:

SQL-sætning bliver: SELECT Krop.Term, Krop.Beskrivelse FROM Krop
Where Krop.Term ='Abacus'

Kan det løses nu?

Mvh. Helene

--
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~ (30-10-2003)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 30-10-03 20:56

Kjærbøl skrev:

>> Start med at finde ud af hvad der står i linje 43 (send det
>> gerne hertil).

> Set rs = Conn.Execute(strSQL)
> strTerm = rs("Term")

Er det ovenstående der er linje 43? (eller 45 hvis du har sat et
par ekstra linjer ind).

Under alle omstændigheder bør du lave et tjek for .EOF inden du
udskriver noget fra et postsæt:

If not rs.EOF Then
   strTerm = rs("Term")
Else
   strTerm = "Fejl..."
End If


>> Se på det link jeg gav før hvordan man kan udskrive den
>> resulterende sql. Den udskrift er også relevant i gruppen.

> Nå jeg vælger "Abacus" bliver det:

> SQL-sætning bliver: SELECT Krop.Term, Krop.Beskrivelse FROM
> Krop Where Krop.Term ='Abacus'

Det ser jo fint nok ud. Men spørgsmålet er så om der står "Abacus"
eller måske "Abacus
" (med linjeskift til sidst) i databasen.

Et hurtigt tjek viser at det nok er der problemet ligger.

Her er et uddrag af din html-kode fra som den så ud for nogle
minutter siden:

<select name="editor" multiple size="23">

<option>Abacus
<br></option><option>Adam-stil
<br></option><option>Agora<br></option><option>Akantus<br>
....

Nu valgte jeg så Agora, trykkede rediger, valgte opdater og gik
tilbage til oversigten. Og så ser samme kildekodestykke sådan ud:

<select name="editor" multiple size="23">

<option>Abacus
<br></option><option>Adam-stil
<br></option><option>Agora
<br></option><option>Akantus<br></option>

Problemet skyldes at du bruger et textarea til din term - her er et
uddrag af koden fra editor.asp:

<textarea rows="1" name="Term" cols="20">Angevinsk gotik
</textarea><br>

Linjeskiftet kommer formentlig fra asp-filen - hvis du har skrevet:

<textarea ...><%= strTerm %>
</textarea>

- så betyder det faktisk at du tilføjer et linjeskift hver gang du
redigerer en post.

Brug en almindelig <input type="text"...> til tekstfelter hvor
linjeskift ikke er nødvendigt.


> Kan det løses nu?

En her og nu-løsning er at bruge like i din søgning. Altså i stedet
for "SELECT [felter] FROM [tabel] WHERE term = 'søgestreng'" bruger
man "SELECT [felter] FROM [tabel] WHERE term LIKE 'søgestreng%'".

Men du bør stadig ændre din form så du ikke benytter textarea til
den korte tekst. Bemærk også at hvis du har:

<textarea ...><%= Strbeskrivelse %>
</textarea>

- til den lange tekst, vil du også her indføre et ekstra linjeskift
hver gang du redigerer teksten. Sørg for at der ikke står andet end
teksten fra databasen mellem start- og slutkoden for textarea.


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

Kjærbøl (30-10-2003)
Kommentar
Fra : Kjærbøl


Dato : 30-10-03 22:05

Jens GyldenkærneClausen wrote in
dk.edb.internet.webdesign.serverside.asp:
> Kjærbøl skrev:
>
> >> Start med at finde ud af hvad der står i linje 43 (send det
> >> gerne hertil).
>
> > Set rs = Conn.Execute(strSQL)
> > strTerm = rs("Term")
>
> Er det ovenstående der er linje 43? (eller 45 hvis du har sat et
> par ekstra linjer ind).
>
> Under alle omstændigheder bør du lave et tjek for .EOF inden du
> udskriver noget fra et postsæt:
>
> If not rs.EOF Then
>    strTerm = rs("Term")
> Else
>    strTerm = "Fejl..."
> End If
>
>
> >> Se på det link jeg gav før hvordan man kan udskrive den
> >> resulterende sql. Den udskrift er også relevant i gruppen.
>
> > Nå jeg vælger "Abacus" bliver det:
>
> > SQL-sætning bliver: SELECT Krop.Term, Krop.Beskrivelse FROM
> > Krop Where Krop.Term ='Abacus'
>
> Det ser jo fint nok ud. Men spørgsmålet er så om der står "Abacus"
> eller måske "Abacus
> " (med linjeskift til sidst) i databasen.
>
> Et hurtigt tjek viser at det nok er der problemet ligger.
>
> Her er et uddrag af din html-kode fra som den så ud for nogle
> minutter siden:
>
> <select name="editor" multiple size="23">
>
> <option>Abacus
> <br></option><option>Adam-stil
> <br></option><option>Agora<br></option><option>Akantus<br>
> ....
>
> Nu valgte jeg så Agora, trykkede rediger, valgte opdater og gik
> tilbage til oversigten. Og så ser samme kildekodestykke sådan ud:
>
> <select name="editor" multiple size="23">
>
> <option>Abacus
> <br></option><option>Adam-stil
> <br></option><option>Agora
> <br></option><option>Akantus<br></option>
>
> Problemet skyldes at du bruger et textarea til din term - her er et
> uddrag af koden fra editor.asp:
>
> <textarea rows="1" name="Term" cols="20">Angevinsk gotik
> </ textarea><br>
>
> Linjeskiftet kommer formentlig fra asp-filen - hvis du har skrevet:
>
> <textarea ...><%= strTerm %>
> </ textarea>
>
> - så betyder det faktisk at du tilføjer et linjeskift hver gang du
> redigerer en post.
>
> Brug en almindelig <input type="text"...> til tekstfelter hvor
> linjeskift ikke er nødvendigt.
>
>
> > Kan det løses nu?
>
> En her og nu-løsning er at bruge like i din søgning. Altså i stedet
> for "SELECT [felter] FROM [tabel] WHERE term = 'søgestreng'" bruger
> man "SELECT [felter] FROM [tabel] WHERE term LIKE 'søgestreng%'".
>
> Men du bør stadig ændre din form så du ikke benytter textarea til
> den korte tekst. Bemærk også at hvis du har:
>
> <textarea ...><%= Strbeskrivelse %>
> </ textarea>
>
> - til den lange tekst, vil du også her indføre et ekstra linjeskift
> hver gang du redigerer teksten. Sørg for at der ikke står andet end
> teksten fra databasen mellem start- og slutkoden for textarea.
>
>
> --
> 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


--
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~ (31-10-2003)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 31-10-03 10:31

Kjærbøl skrev - ingenting, men citerede hele mit indlæg.

Ville du sige noget?
--
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 : 177560
Tips : 31968
Nyheder : 719565
Indlæg : 6408943
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste