Avatar billede plaf Nybegynder
03. oktober 2005 - 13:15 Der er 8 kommentarer og
1 løsning

label med værdi fra database

Jeg vil have resultatet (der er kun 1) af en database-forespørgsel vist på min aspx-side. Jeg vil selv bestemme hvor og hvordan det skal stå - er en label løsningen?

Har forsøgt med:

Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        'Put user code to initialize the page here
        Dim oConnection As Odbc.OdbcConnection = New Odbc.OdbcConnection(Application("ConnString"))
        Dim oCommand As Odbc.OdbcCommand
        Dim oDataReader As Odbc.OdbcDataReader
        Dim sSQL As String = "SELECT * FROM adgang
        oConnection.Open()
        oCommand = New Odbc.OdbcCommand(sSQL, oConnection)
        oDataReader = oCommand.ExecuteReader
        Dim ID
        While oDataReader.Read()
            ID = CStr(oDataReader("ID"))
        End While
        oConnection.Close()
    End Sub

og:

<asp:Label id="Label5" style="Z-INDEX: 105; LEFT: 152px; POSITION: absolute; TOP: 64px" runat="server">
                <%=ID%>
            </asp:Label>

Men ID kommer ikke med over. Hvordan gør man det rigtigt?

/Plaf
Avatar billede dr_chaos Nybegynder
03. oktober 2005 - 13:17 #1
Sæt ID.Text property i stedet
Avatar billede arne_v Ekspert
03. oktober 2005 - 13:18 #2
ExecuteScalar lyder bedre end ExecuteReader i dit tilfælde

Skal du ikke:

Label5.Text = ID

?
Avatar billede plaf Nybegynder
03. oktober 2005 - 13:24 #3
Hej i to :-)

Kunne I specificere nærmere, hvad jeg skal skrive hvor? På forhånd tak :-)

/Plaf
Avatar billede arne_v Ekspert
03. oktober 2005 - 13:27 #4
oCommand = New Odbc.OdbcCommand(sSQL, oConnection)
        oDataReader = oCommand.ExecuteReader
        Dim ID
        While oDataReader.Read()
            ID = CStr(oDataReader("ID"))
        End While

->

        oCommand = New Odbc.OdbcCommand(sSQL, oConnection)
        ID = oCommand.ExecuteScalar.ToString

og

<asp:Label id="Label5" style="Z-INDEX: 105; LEFT: 152px; POSITION: absolute; TOP: 64px" runat="server">
                <%=ID%>
            </asp:Label>

->

<asp:Label id="Label5" style="Z-INDEX: 105; LEFT: 152px; POSITION: absolute; TOP: 64px" runat="server"/>

men med

Label5.Text = ID

i din kode
Avatar billede plaf Nybegynder
03. oktober 2005 - 13:38 #5
Er nok en smule langsom....(og helt ny udi det her). Har nu rettet koden på vb-sien til:

Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        'Put user code to initialize the page here
        Dim oConnection As Odbc.OdbcConnection = New Odbc.OdbcConnection(Application("ConnString"))
        Dim oCommand As Odbc.OdbcCommand
        Dim sSQL As String = "SELECT * FROM adgang"
        oConnection.Open()
        oCommand = New Odbc.OdbcCommand(sSQL, oConnection)
        ID = oCommand.ExecuteScalar.ToString
        oConnection.Close()
    End Sub

Rigtigt?

Hvor skal jeg srkive Label5.text

(Er der noget med, at de eneste dumme spørgsmål er dem, man selv kender svaret på - for det gør jeg ikke - selvom jeg har på fornemmelsen, at det er simplet..)

/Plaf
Avatar billede arne_v Ekspert
03. oktober 2005 - 13:40 #6
...
oConnection.Close()
Label5.Text = ID
End Sub
Avatar billede plaf Nybegynder
03. oktober 2005 - 13:41 #7
Jeps, så var den der - skriv et svar, så får du point :-)

/Plaf
Avatar billede arne_v Ekspert
03. oktober 2005 - 13:41 #8
hvis du bruger rigtig code behind skal Label5 være et protected field, men
det har VS nok sørget for
Avatar billede arne_v Ekspert
03. oktober 2005 - 13:41 #9
ok
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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