Avatar billede sommerfulg Nybegynder
25. april 2001 - 12:18 Der er 6 kommentarer og
1 løsning

Problem med udtræk af database

Hvorfor får jeg en fejl der hedder:
Variable is undefined: \'opgaver\'


Når jeg bruger denne adgang?? Jeg skal blot have vist titlen på de 5 seneste opgaver

henter nyeste opgaver
    sub nyeste(opgaver)

        Dim Conn, RS, Tittel
        Set Conn     = Server.CreateObject(\"ADODB.Connection\")
        Conn.Open Application(\"fildb\")
        Set RS     = Server.CreateObject(\"ADODB.Recordset\")
        Dim temp
        temp = 0
        RS.CursorType    = adOpenStatic

        Select case streng
        case \"opg\"
            RS.Open \"SELECT ID, Tittel FROM TFiles\", Conn
        end select
       
        RS.MoveLast
            While NOT RS.bof AND Temp < 5
            Response.write \"<img border=\"\"0\"\" src=\"\"/forum/i1.gif\"\">&nbsp;\"
            Tittel=LEFT(RS(\"Tittel\"),30)
            Tittel=LEFT(Tittel,INSTRREV(Tittel,\"\")) &\"...\"
                Response.write \"<b><a href=\"\"/Upload/downloadDB.asp?ID=\"& RS(\"ID\") &\"\"\">\"& Tittel
                Response.write \"</a></b><br>\"
                Temp = Temp + 1
            RS.MovePrevious
        Wend
        RS.Close
        Set RS = NOTHING
        Conn.Close
        Set Conn = NOTHING
    end sub


*******
når de skal vises nede i min body bruger jeg dette:

<%
    streng = \"opg\"
    call nyeste(opgaver)
%>
Avatar billede nute Nybegynder
25. april 2001 - 12:21 #1
hvor definerer du variabelen \'opgaver\' ?
Avatar billede nute Nybegynder
25. april 2001 - 12:21 #2
for meg ser det ut som om det er dette du skal gjøre:

sub nyeste(opgaver)

        Dim Conn, RS, Tittel
        Set Conn    = Server.CreateObject(\"ADODB.Connection\")
        Conn.Open Application(\"fildb\")
        Set RS    = Server.CreateObject(\"ADODB.Recordset\")
        Dim temp
        temp = 0
        RS.CursorType    = adOpenStatic

        Select case streng
        case \"opg\"
            RS.Open \"SELECT ID, Tittel FROM TFiles\", Conn
        end select
       
        RS.MoveLast
            While NOT RS.bof AND Temp < 5
            Response.write \"<img border=\"\"0\"\" src=\"\"/forum/i1.gif\"\">&nbsp;\"
            Tittel=LEFT(RS(\"Tittel\"),30)
            Tittel=LEFT(Tittel,INSTRREV(Tittel,\"\")) &\"...\"
                Response.write \"<b><a href=\"\"/Upload/downloadDB.asp?ID=\"& RS(\"ID\") &\"\"\">\"& Tittel
                Response.write \"</a></b><br>\"
                Temp = Temp + 1
            RS.MovePrevious
        Wend
        RS.Close
        Set RS = NOTHING
        Conn.Close
        Set Conn = NOTHING
    end sub


*******
når de skal vises nede i min body bruger jeg dette:

<%
    streng = \"opg\"
    call nyeste(streng)
%>

/nute
Avatar billede sommerfulg Nybegynder
25. april 2001 - 12:22 #3
Det er måske det der er problemet? Hvordan gør jeg det?
Avatar billede sommerfulg Nybegynder
25. april 2001 - 12:53 #4
Det virkede men udløste et andet problem. Fordi jeg henter fra to forskellige databaser.

Den nye fejl er:
Operation is not allowed when the object is closed.

(nu henter den fint opgaverne , men ikke fra case \"spg\" ....altså de seneste spørgsmål fra anden database

<%@ LANGUAGE=\"VBSCRIPT\" %>
<% Option Explicit
%>
<!-- #INCLUDE VIRTUAL=\"/adovbs.inc\" -->

<%

    dim link

    sub hent_link(link)
        Dim conn, RS, sql

        Set conn = Server.CreateObject(\"ADODB.Connection\")
        conn.Open Application(\"database\")
        Set RS = Server.CreateObject(\"ADODB.Recordset\")
        RS.Open  \"SELECT * FROM TLink WHERE LinkType=\'\"& link &\"\'\", conn

            while not RS.EOF
                response.write \"<a href=\"\"java script:AabenLink(\'\"
                response.write  RS(\"URL\")
                response.write \"\')\"\">\"
                response.write RS(\"Beskrivelse\")
                response.write \"</a><br>\"
                RS.MoveNext
            Wend

            RS.Close
            Set RS = NOTHING
            conn.close
            Set conn = NOTHING
    end sub
   
    Dim streng, SvarStatus
    \' Henter antal åbne og lukkede spg.
    sub hent_total(SvarStatus)
        Dim Conn, RS
        Set Conn     = Server.CreateObject(\"ADODB.Connection\")
        Conn.Open Application(\"Database\")
        Set RS = Server.CreateObject(\"ADODB.Recordset\")
        RS.CursorType = adOpenStatic


        Select case SvarStatus
        case FALSE
            RS.Open \"SELECT Svar_ID FROM TSvar WHERE SvarStatus=FALSE AND SvarTil=0\", Conn
            Response.write RS.RecordCount
        case TRUE
            RS.Open \"SELECT Svar_ID FROM TSvar WHERE SvarStatus=TRUE  AND SvarTil=0\", Conn
            Response.write RS.RecordCount
        end select

        RS.Close
        Set RS = NOTHING
        Conn.Close
        Set Conn = NOTHING
    end sub

    \' henter nyeste emner og indlæg
    sub nyeste(streng)

        Dim Conn, RS, overskrift
        Set Conn     = Server.CreateObject(\"ADODB.Connection\")
        Conn.Open Application(\"Database\")
        Set RS     = Server.CreateObject(\"ADODB.Recordset\")
        Dim temp
        temp = 0
        RS.CursorType    = adOpenStatic

        Select case streng
        case \"spg\"
            RS.Open \"SELECT Svar_ID, Overskrift FROM TSvar WHERE SvarTil=0\", Conn
        case \"ind\"
            RS.Open \"SELECT Svar_ID, Overskrift FROM TSvar\", Conn
        end select
       
        RS.MoveLast
            While NOT RS.bof AND Temp < 5
            Response.write \"<img border=\"\"0\"\" src=\"\"/forum/i1.gif\"\">&nbsp;\"
            overskrift=LEFT(RS(\"overskrift\"),30)
            overskrift=LEFT(overskrift,INSTRREV(overskrift,\"\")) &\"...\"
                Response.write \"<b><a href=\"\"/forum/sesvar.asp?ID=\"& RS(\"Svar_ID\") &\"\"\">\"& overskrift
                Response.write \"</a></b><br>\"
                Temp = Temp + 1
            RS.MovePrevious
        Wend
        RS.Close
        Set RS = NOTHING
        Conn.Close
        Set Conn = NOTHING
    end sub

\' henter nyeste opgaver
    sub nyeste(opgaver)

        Dim Conn, RS, Tittel
        Set Conn     = Server.CreateObject(\"ADODB.Connection\")
        Conn.Open Application(\"fildb\")
        Set RS     = Server.CreateObject(\"ADODB.Recordset\")
        Dim temp
        temp = 0
        RS.CursorType    = adOpenStatic

        Select case streng
        case \"opg\"
            RS.Open \"SELECT ID, Tittel FROM TFiles\", Conn
        end select
       
        RS.MoveLast
            While NOT RS.bof AND Temp < 5
            Response.write \"<img border=\"\"0\"\" src=\"\"/forum/i1.gif\"\">&nbsp;\"
            Tittel=LEFT(RS(\"Tittel\"),30)
            Tittel=LEFT(Tittel,INSTRREV(Tittel,\"\")) &\"...\"
                Response.write \"<b><a href=\"\"/Upload/downloadDB.asp?ID=\"& RS(\"ID\") &\"\"\">\"& Tittel
                Response.write \"</a></b><br>\"
                Temp = Temp + 1
            RS.MovePrevious
        Wend
        RS.Close
        Set RS = NOTHING
        Conn.Close
        Set Conn = NOTHING
    end sub

%>
Avatar billede nute Nybegynder
25. april 2001 - 12:57 #5
prøv dette:

<%@ LANGUAGE=\"VBSCRIPT\" %>
<% Option Explicit
%>
<!-- #INCLUDE VIRTUAL=\"/adovbs.inc\" -->

<%
        Dim conn, RS, sql

        Set conn = Server.CreateObject(\"ADODB.Connection\")
        conn.Open Application(\"database\")

    dim link

    sub hent_link(link)
        Set RS = Server.CreateObject(\"ADODB.Recordset\")
        RS.Open  \"SELECT * FROM TLink WHERE LinkType=\'\"& link &\"\'\", conn

            while not RS.EOF
                response.write \"<a href=\"\"java script:AabenLink(\'\"
                response.write  RS(\"URL\")
                response.write \"\')\"\">\"
                response.write RS(\"Beskrivelse\")
                response.write \"</a><br>\"
                RS.MoveNext
            Wend

            RS.Close
    end sub
   
    Dim streng, SvarStatus
    \' Henter antal åbne og lukkede spg.
    sub hent_total(SvarStatus)
        RS.CursorType = adOpenStatic


        Select case SvarStatus
        case FALSE
            RS.Open \"SELECT Svar_ID FROM TSvar WHERE SvarStatus=FALSE AND SvarTil=0\", Conn
            Response.write RS.RecordCount
        case TRUE
            RS.Open \"SELECT Svar_ID FROM TSvar WHERE SvarStatus=TRUE  AND SvarTil=0\", Conn
            Response.write RS.RecordCount
        end select

        RS.Close
    end sub

    \' henter nyeste emner og indlæg
    sub nyeste(streng)

        Dim overskrift
        Dim temp
        temp = 0
        RS.CursorType    = adOpenStatic

        Select case streng
        case \"spg\"
            RS.Open \"SELECT Svar_ID, Overskrift FROM TSvar WHERE SvarTil=0\", Conn
        case \"ind\"
            RS.Open \"SELECT Svar_ID, Overskrift FROM TSvar\", Conn
        end select
       
        RS.MoveLast
            While NOT RS.bof AND Temp < 5
            Response.write \"<img border=\"\"0\"\" src=\"\"/forum/i1.gif\"\">&nbsp;\"
            overskrift=LEFT(RS(\"overskrift\"),30)
            overskrift=LEFT(overskrift,INSTRREV(overskrift,\"\")) &\"...\"
                Response.write \"<b><a href=\"\"/forum/sesvar.asp?ID=\"& RS(\"Svar_ID\") &\"\"\">\"& overskrift
                Response.write \"</a></b><br>\"
                Temp = Temp + 1
            RS.MovePrevious
        Wend
        RS.Close
    end sub

\' henter nyeste opgaver
    sub nyeste(opgaver)

        Dim Tittel
        Dim temp
        temp = 0
        RS.CursorType    = adOpenStatic

        Select case streng
        case \"opg\"
            RS.Open \"SELECT ID, Tittel FROM TFiles\", Conn
        end select
       
        RS.MoveLast
            While NOT RS.bof AND Temp < 5
            Response.write \"<img border=\"\"0\"\" src=\"\"/forum/i1.gif\"\">&nbsp;\"
            Tittel=LEFT(RS(\"Tittel\"),30)
            Tittel=LEFT(Tittel,INSTRREV(Tittel,\"\")) &\"...\"
                Response.write \"<b><a href=\"\"/Upload/downloadDB.asp?ID=\"& RS(\"ID\") &\"\"\">\"& Tittel
                Response.write \"</a></b><br>\"
                Temp = Temp + 1
            RS.MovePrevious
        Wend
        RS.Close
    end sub
    conn.close
    Set conn = NOTHING

%>

/nute
Avatar billede sommerfulg Nybegynder
25. april 2001 - 13:14 #6
Nute - Tak for dit engagement - Nu får jeg en anden fejl:

ADODB.Recordset error \'800a0e7d\'

Operation is not allowed on an object referencing a closed or invalid connection.

/forside15.asp, line 18

*****************
Kan det skyldes at opgaverne som sgat skal hentes fra en anden database som hedder \"fildb\" og resten hentes fra \"database\"??
Scriptet ser nu ud som du skrev:

<%@ LANGUAGE=\"VBSCRIPT\" %>
<% Option Explicit
%>
<!-- #INCLUDE VIRTUAL=\"/adovbs.inc\" -->

<%
        Dim conn, RS, sql

        Set conn = Server.CreateObject(\"ADODB.Connection\")
        conn.Open Application(\"database\")
       

    dim link

    sub hent_link(link)
       
        Set RS = Server.CreateObject(\"ADODB.Recordset\")
        RS.Open  \"SELECT * FROM TLink WHERE LinkType=\'\"& link &\"\'\", conn

            while not RS.EOF
                response.write \"<a href=\"\"java script:AabenLink(\'\"
                response.write  RS(\"URL\")
                response.write \"\')\"\">\"
                response.write RS(\"Beskrivelse\")
                response.write \"</a><br>\"
                RS.MoveNext
            Wend

            RS.Close
                end sub
   
    Dim streng, SvarStatus
    \' Henter antal åbne og lukkede spg.
    sub hent_total(SvarStatus)
        RS.CursorType = adOpenStatic


        Select case SvarStatus
        case FALSE
            RS.Open \"SELECT Svar_ID FROM TSvar WHERE SvarStatus=FALSE AND SvarTil=0\", Conn
            Response.write RS.RecordCount
        case TRUE
            RS.Open \"SELECT Svar_ID FROM TSvar WHERE SvarStatus=TRUE  AND SvarTil=0\", Conn
            Response.write RS.RecordCount
        end select

        RS.Close
            end sub

    \' henter nyeste emner og indlæg
    sub nyeste(streng)

        Dim overskrift
        Dim temp
        temp = 0
        RS.CursorType    = adOpenStatic

        Select case streng
        case \"spg\"
            RS.Open \"SELECT Svar_ID, Overskrift FROM TSvar WHERE SvarTil=0\", Conn
        case \"ind\"
            RS.Open \"SELECT Svar_ID, Overskrift FROM TSvar\", Conn
        end select
       
        RS.MoveLast
            While NOT RS.bof AND Temp < 5
            Response.write \"<img border=\"\"0\"\" src=\"\"/forum/i1.gif\"\">&nbsp;\"
            overskrift=LEFT(RS(\"overskrift\"),30)
            overskrift=LEFT(overskrift,INSTRREV(overskrift,\"\")) &\"...\"
                Response.write \"<b><a href=\"\"/forum/sesvar.asp?ID=\"& RS(\"Svar_ID\") &\"\"\">\"& overskrift
                Response.write \"</a></b><br>\"
                Temp = Temp + 1
            RS.MovePrevious
        Wend
        RS.Close
            end sub

\' henter nyeste opgaver
    sub nyeste(opgave)

        Dim Tittel
        Dim temp
        temp = 0
        RS.CursorType    = adOpenStatic

        Select case streng
        case \"opg\"
            RS.Open \"SELECT ID, Tittel FROM TFiles\", Conn
        end select
       
        RS.MoveLast
            While NOT RS.bof AND Temp < 5
            Response.write \"<img border=\"\"0\"\" src=\"\"/forum/i1.gif\"\">&nbsp;\"
            Tittel=LEFT(RS(\"Tittel\"),30)
            Tittel=LEFT(Tittel,INSTRREV(Tittel,\"\")) &\"...\"
                Response.write \"<b><a href=\"\"/Upload/downloadDB.asp?ID=\"& RS(\"ID\") &\"\"\">\"& Tittel
                Response.write \"</a></b><br>\"
                Temp = Temp + 1
            RS.MovePrevious
        Wend
        RS.Close
            end sub
            conn.close
            Set conn = NOTHING

%>
Avatar billede sommerfulg Nybegynder
26. april 2001 - 02:25 #7
Så lukkes denne - Nute løste problemet
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