Avatar billede snowflake7 Nybegynder
19. februar 2004 - 12:51 Der er 7 kommentarer og
1 løsning

array og Recordset

Hej Eksperter
vi er en gruppe som har et problem med ovenstående vi poster lige koden :

%

'Sub openDB()
           
   

'End Sub

'Sub closeDB()
   
'End Sub

%>

<%
Sub getLanguage()

    Dim rs, Conn, DSN
   
    Set rs = Server.CreateObject("ADODB.Recordset")
    Set Conn = Server.CreateObject("ADODB.Connection")
    DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
    DSN = DSN & "DBQ=" & Server.MapPath ("databaser/languageDB.mdb")
    Conn.Open DSN
   
    Dim sqlSetning
   
    If (session("language") = Da) then
        sqlSetning = "select Danish from Language"
    Elseif (session("language") = Swe) then
        sqlSetning = "select Swedish from Language"
    Elseif (session("language") = No) then
        sqlSetning = "select Norwegian from Language"
    Elseif (session("language") = Fin) then
        sqlSetning = "select Finnish from Language"
    Else sqlSetning = "select English from Language"
    End if

    Set rs = Conn.Execute(sqlSetning)
   
    Dim feild_List
    feild_List = ""
    Dim f
    f = ""
   
    do       
        f = "" & rs("Danish")
       
        feild_List = feild_List & f & ","
        rs.MoveNext
    loop While Not rs.EOF
   
    Conn.Close
    Set Conn = Nothing
   
    Dim arr_feild_List
    arr_feild_List = Split(feild_List,",")

    For t = LBound(arr_feild_List) to UBound(arr_feild_List)
              Response.Write arr_feild_List(t)
      Next
End Sub

%>

Det der er problemer med er det her
do       
        f = "" & rs("Danish")
Vi har fået følgende fejlmeddelelse :

Item can not be found in the collection corrosponding to the name or ordinal.


Og så lige et spørgsmål fra mig privat Ordinal hvad er det med et dansk ord?
Avatar billede soda Nybegynder
19. februar 2004 - 12:57 #1
Går ud fra, at sproget du vil vælge i tabellen Language er strenge ? - I så fald, så mangler du et ' eller " i Jeres SQL Sætning.

Eks.

sqlSetning = "select 'Danish' from Language" eller
sqlSetning = "select ""Danish"" from Language"
Avatar billede soda Nybegynder
19. februar 2004 - 13:00 #2
Det kunne også være Jeres rs("Danish"), som formodentlig skulle være rs("Language") i stedet for.
Avatar billede snowflake7 Nybegynder
19. februar 2004 - 13:45 #3
<%

'Sub openDB()
           
   

'End Sub

'Sub closeDB()
   
'End Sub

%>

<%
Function getLanguage()

    Dim rs, Conn, DSN
   
    Set rs = Server.CreateObject("ADODB.Recordset")
    Set Conn = Server.CreateObject("ADODB.Connection")
    DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
    DSN = DSN & "DBQ=" & Server.MapPath ("databaser/languageDB.mdb")
    Conn.Open DSN
   
    Dim sqlSetning
   
    If (session("language") = Da) then
        sqlSetning = "select Danish from Language"
    Elseif (session("language") = Swe) then
        sqlSetning = "select Swedish from Language"
    Elseif (session("language") = No) then
        sqlSetning = "select Norwegian from Language"
    Elseif (session("language") = Fin) then
        sqlSetning = "select Finnish from Language"
    Else sqlSetning = "select English from Language"
    End if

    Set rs = Conn.Execute(sqlSetning)
   
    Dim feild_List
    feild_List = ""
    Dim f
    f = ""
   
    do       
        f = "" & rs("Language")
       
        feild_List = feild_List & f & ","
        rs.MoveNext
    loop While Not rs.EOF
   
    Conn.Close
    Set Conn = Nothing
   
    Dim arr_feild_List
    arr_feild_List = Split(feild_List,",")

    For t = LBound(arr_feild_List) to UBound(arr_feild_List)
              Response.Write arr_feild_List(t)
      Next
    getLanguage = arr_feild_List
End Function

%>

Den kommer med samme fejl igen . Kan det have noget at gøre med at vi i vores access database har brugt
Danish Notat altså notat datatypen?

Vi er altså næsten sikre på at det skal være danish der skal stå!?!
Avatar billede soda Nybegynder
19. februar 2004 - 14:02 #4
Jeg er ikke 100% klar over, hvad datatype notat må indeholde i Access, men umiddelbart ville jeg havde brugt datatype tekst til at definere sproget.

Har I mulighed for, at lave dette om ?
Avatar billede snowflake7 Nybegynder
19. februar 2004 - 14:13 #5
vi har prøvet at lave notat om til tekst men det hjalp desværre ikke noget.
vi har prøvet med select 'sprog' from language og
vi har prøvet med select ""sprog"" from language
vi har tjekket efter stave fejl

hvor sprog enten er Danish, Swedish, Norwegian, Finnish eller English

Dette er fejlmeddelelsen
Error Type:
ADODB.Recordset (0x800A0CC1)
Item cannot be found in the collection corresponding to the requested name or ordinal.
/sandberg/functioner/db_functioner.asp, line 47

den kommer med samme fejl lige meget hvad vi retter.
Avatar billede snowflake7 Nybegynder
19. februar 2004 - 14:55 #6
he he fandt fejlen

if sætningen skulle se således ud

If (session("language") = "Da") then
        sqlSetning = "select Danish from Language"
    Elseif (session("language") = "Swe") then
        sqlSetning = "select Swedish from Language"
    Elseif (session("language") = "No") then
        sqlSetning = "select Norwegian from Language"
    Elseif (session("language") = "Fin") then
        sqlSetning = "select Finnish from Language"
    Else sqlSetning = "select English from Language"
    End if
Avatar billede soda Nybegynder
19. februar 2004 - 15:00 #7
Ja, det var vidst også det eneste jeg ikke fik bedt Jer ændret, men det er logisk nok.
Avatar billede snowflake7 Nybegynder
19. februar 2004 - 22:58 #8
lukker
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