Avatar billede Dalgaard Nybegynder
14. februar 2002 - 15:08 Der er 14 kommentarer

Værdi fra DB til variabel i Javascript

Jeg skriver mit ASP i Java og har et helt basalt problem. Jeg skal have en værdi fra databasen over i en variabel. Det lyder simpelt, men jeg kan simpelthen ikke magte det.

Jeg skulle mene det var:

variabel = objRS("kolonnenavn");

Jeg skulle mene den så lagde værdien fra Databasen over i variablen, men nej..jeg får følgende fejl:

ADODB.Recordset error '800a0cc1'

Item cannot be found in the collection corresponding to the requested name or ordinal.

/test/index.asp, line 16
Avatar billede kennethrisum Nybegynder
14. februar 2002 - 15:10 #1
Check at du har skrevet kolonnenavnet rigtigt..
Avatar billede Dalgaard Nybegynder
14. februar 2002 - 15:14 #2
Kolonnen ligger i en tabel der hedder: anmeldelse.
Kolonnen hedder: karakter.
Den kode der ikke virker er:

vurd = objRS("karakter");
Avatar billede kennethrisum Nybegynder
14. februar 2002 - 15:21 #3
Din fejl kommer fordi kolonnen "karakter" ikke findes i dit recordset. Prøv evt. med index i stedet for (f.eks. vurd = objRS(0)).
Avatar billede Dalgaard Nybegynder
14. februar 2002 - 15:26 #4
du må gerne, hvis du har tid/lyst, forklare lidt nærmere om det index der. og helt specifik hvordan det implementeres, det er nyt for mig.
Avatar billede kennethrisum Nybegynder
14. februar 2002 - 15:38 #5
Når du åbner recordset'et gør du det med

objRs.Open "SELECT KOL1, KOL2, KOL3 FROM TAB1",....

KOL1 bliver så til objRS(0)
KOL2 bliver så til objRS(1)
...
Avatar billede Dalgaard Nybegynder
14. februar 2002 - 15:45 #6
Med mindre der skal yderligere til end:
vurd = objRS(0)
Så kan jeg ikke få det til at virke..
Avatar billede -mundi- Nybegynder
14. februar 2002 - 15:49 #7
Du har checket at der er nogen records i recordsettet ikke ? noget i stil med

if not rs.eof then

end if

på VB'sk
Avatar billede Dalgaard Nybegynder
14. februar 2002 - 15:51 #8
Der er noget i recordsættet, fordi jeg udskriver en værdi lidt senere i koden. Jeg kan bare ikke fange den skide værdi fra databasen og smide den over i en variabel...på Javask
Avatar billede -mundi- Nybegynder
14. februar 2002 - 15:56 #9
og det er ikke et felt med Null som value ?
Avatar billede Dalgaard Nybegynder
14. februar 2002 - 16:46 #10
nix...det er en simpel tal værdi, der er i øjeblikket kun en record i tabellen, og den kan jeg sagtens få skrevet ud igennem mit recordsæt. Det er bare et spørgsmål om at få den ene værdi fra databasen ind i en variabel...
Avatar billede excession Nybegynder
14. februar 2002 - 23:56 #11
kom med koden.. :)

-- xs
Avatar billede Søren Bech Morsing Praktikant
15. februar 2002 - 08:17 #12
nå du skal i hvert fald også skrive:

Response.Write("vurd = " & objRS("karakter") & ";")
Ellers får du jo ikke skrevet tin javascript linie (clientside)
Avatar billede Søren Bech Morsing Praktikant
15. februar 2002 - 08:17 #13
ps - og du er selvfølgelig inde i
<script language="javascript">
<%Response.Write("vurd = " & objRS("karakter") & ";")%>
</script>

Du skal gøre det
Avatar billede Dalgaard Nybegynder
15. februar 2002 - 11:30 #14
Ok, det er ret flovt. Men sådan er det vel med programmering, pludselig er der noget der løser sig. Jeg har fundet fejlen, og beklager mange gange ulejligheden. Det viser sig at i ASP - Javascript kan man godt lægge værdier fra databasen over i en variabel med en så simpel kode som: variabel = obRS("kolonnenavn");

Det jeg glemte var (rødme) at udføre SQL kaldet inden jeg lagde værdien over. Igen, sorry.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester