Avatar billede imp Nybegynder
11. november 2003 - 17:07 Der er 1 løsning

Billeder, tekst og billedtekst.

Ohøj...

Nu er jeg utrolig meget nybegynder i ASP - har kun arbejdet med det i 2-3 uger så det er ikke alt for lang tid, men jeg har da fat i grundprincipperne, tror jeg. Heh...

Jeg er ved at lave en indholdsside som skal kunne vise tekst, tekst med billeder, tekst med billeder og billedtekst, billeder og billeder med billedtekst... Synes det er temmelig svært at hitte ud af... Men har da fået smækket lidt sammen...

<%@ Language=VBScript %>
<%option explicit %>
<!-- #INCLUDE FILE="inc/adovbs.asp" -->
<!-- #INCLUDE FILE="inc/datastore.asp" -->

<%
Response.Write "<HTML>" & vbCrLf
Response.Write "<HEAD>" & vbCrLf
Response.Write "<META NAME=""GENERATOR"" Content=""Microsoft Visual Studio 6.0"">" & vbCrLf
Response.Write "<link href=""indholdStylesheet.css"" rel=""stylesheet"" type=""text/css"">" & vbCrLf
Response.Write "</HEAD>" & vbCrLf
Response.Write "<BODY>" & vbCrLf

Dim intSideNr, strSQL, oRsTekst, txtTekst, intUnderMenuID, intTekstID, intSort, intOvrSkrTxtID, strOvrSkrTxt, oRsOverSkrift, oRsGrafik, intImgH, intImgW, strImgURL, intImgUndrMnuID, oRsBilledtekst, intImgTxtID, intImgGrafikID, strImgTxt, intGrafikID

Response.Write "<table width=545 border=0 cellpaddin=0 cellspacing=0>"
Response.Write "<tr>"
Response.Write "<td>"

hentTekst
hentGrafik
hentBilledtekst
'visGrafik
'visOverskrift
'hentAlt
'visBilledtekst
visTekst
closeHTML

'Response.Write "<a href=""#"" onclick=""window.print()"">print</a>"

Sub hentBilledtekst
   
    strSQL = "SELECT billedtekst.grafikID AS grafikID2, billedtekst.billedtekst, billedtekst.billedtekstID, grafik.grafikID AS grafikID1, "
    strSQL = strSQL & "grafik.grafik, grafik.height, grafik.undermenuID, grafik.sortorder, grafik.tekstID, "
    strSQL = strSQL & "grafik.width "
    strSQL = strSQL & "FROM billedtekst INNER JOIN "
    strSQL = strSQL & "grafik ON billedtekst.grafikID = grafik.grafikID "
    strSQL = strSQL & "order by sortorder Asc"
   
'    Response.Write strSQL
   
    Set oRsBilledtekst=Server.CreateObject("ADODB.Recordset")
    oRsBilledtekst.Open strSQL, strConnect, adOpenForwardOnly, adLockReadOnly, adCmdText   

'    Response.Write strSQL & "<br><br>"
   
End Sub

Sub hentTekst

    strSQL = "SELECT tekst.sortorder AS sortorder, tekst.undermenuID AS undermenuID, tekst.tekstID AS tekstID1, "
    strSQL = strSQL & "tekstoverskrift.tekstID AS tekstID2, tekstoverskrift.tekstoverskrift AS tekstoverskrift, tekstoverskrift.tekstoverskriftID AS tekstoverskriftID, tekst.tekst AS tekst "
    strSQL = strSQL & "FROM tekst INNER JOIN "
    strSQL = strSQL & "tekstoverskrift ON tekst.tekstID = tekstoverskrift.tekstID "
    strSQL = strSQL & "order by sortorder Asc"
   
'    Response.Write strSQL & "<br>"
   
    Set oRsTekst=Server.CreateObject("ADODB.Recordset")
    oRsTekst.Open strSQL, strConnect, adOpenForwardOnly, adLockReadOnly, adCmdText
   
End Sub

Sub hentGrafik
   
    strSQL = "SELECT grafik.grafikID, grafik.grafik, grafik.height, grafik.width, "
    strSQL = strSQL & "grafik.undermenuID, grafik.sortorder, grafik.tekstID "
    strSQL = strSQL & "FROM grafik "
    strSQL = strSQL & "order by sortorder Asc"

'    Response.Write strSQL
   
    Set oRsGrafik=Server.CreateObject("ADODB.Recordset")
    oRsGrafik.Open strSQL, strConnect, adOpenForwardOnly, adLockReadOnly, adCmdText   
   
End Sub

Sub visTekst
   
    if not oRsTekst.eof then
   
        while not oRsTekst.eof

            intOvrSkrTxtID = oRsTekst("tekstoverskrift")
            intUnderMenuID = oRsTekst("undermenuID")
            intTekstID = oRsTekst("tekstID1")
            txtTekst = oRsTekst("tekst")
            intSort = oRsTekst("sortorder")
            intSideNr = Request.QueryString("intsideNr")
           
            if int(intSideNr) = int(intUnderMenuID) then
                Response.Write "<p class=""style1"">" & intOvrSkrTxtID & "</p>"
               
                if int(intSideNr) = int(intUnderMenuID) then
                    Response.Write txtTekst & "<p><a href=""#"" onclick=""window.print()"">print</a></p>"

                    while not oRsGrafik.eof
                        intImgH = oRsGrafik("height")
                        intImgW = oRsGrafik("width")
                        strImgURL = oRsGrafik("grafik")
                        intImgUndrMnuID = oRsGrafik("undermenuID")
                        intGrafikID = oRsGrafik("grafikID")
                        intSideNr = Request.QueryString("intsideNr")
       
                        if int(intImgUndrMnuID) = int(intSideNr) then
                            Response.Write "<table width=" & intImgW & " border=""0"" align=""center"" cellpadding=""0"" cellspacing=""0""><tr><td><img src=grafik/" & strImgURL & " height=" & intImgH & " width=" & intImgW & " border=""1""><br></td></tr>"
                            while not oRsBilledtekst.EOF
                                    intImgTxtID = oRsBilledtekst("billedtekstID")
                                    strImgTxt = oRsBilledtekst("billedtekst")
                                    intImgGrafikID = oRsBilledtekst("grafikID")
                                    if int(intImgGrafikID) = int(intGrafikID) then
                                        Response.Write "<tr><td>" & strImgTxt & "</td></tr>"
                                    else
                                        Response.Write "</table><br>"
                                    end if
                                oRsBilledtekst.MoveNext
                            wend
                            Response.Write "<tr><td>" & strImgTxt & "</td></tr></table><br>"
                        else
                            Response.Write ""
                        end if
                        oRsGrafik.MoveNext
                    wend

                else
                    while not oRsGrafik.eof
                    intImgH = oRsGrafik("height")
                    intImgW = oRsGrafik("width")
                    strImgURL = oRsGrafik("grafik")
                    intImgUndrMnuID = oRsGrafik("undermenuID")
                    intSideNr = Request.QueryString("intsideNr")
                    intGrafikID = oRsGrafik("grafikID")
       
                    if int(intImgUndrMnuID) = int(intSideNr) then
                        Response.Write "<table width=" & intImgW & " border=""0"" align=""center"" cellpadding=""0"" cellspacing=""0""><tr><td><img src=grafik/" & strImgURL & " height=" & intImgH & " width=" & intImgW & " border=""1""><br></td></tr>"
                            while not oRsBilledtekst.EOF
                            intImgTxtID = oRsBilledtekst("billedtekstID")
                            strImgTxt = oRsBilledtekst("billedtekst")
                            intImgGrafikID = oRsBilledtekst("grafikID2")
                            if int(intImgGrafikID) = int(intGrafikID) then
                                Response.Write "<tr><td>" & strImgTxt & "</td></tr></table><br>"
                            else
                                Response.Write "</table><br>"
                            end if
                        oRsBilledtekst.MoveNext
                        wend
                        Response.Write "<tr><td>" & strImgURL & "</td></tr></table><br>"
                    else
                        Response.Write ""
                    end if
                    oRsGrafik.MoveNext
                    wend
                    Response.Write ""
                end if
               
            else
                Response.Write ""

'                while not oRsGrafik.eof
'                    intImgH = oRsGrafik("height")
'                    intImgW = oRsGrafik("width")
'                    strImgURL = oRsGrafik("grafik")
'                    intImgUndrMnuID = oRsGrafik("undermenuID")
'                    intGrafikID = oRsGrafik("grafikID")
'                    intSideNr = Request.QueryString("intsideNr")
'       
'                    if int(intImgUndrMnuID) = int(intSideNr) then
'                        Response.Write "<table width=" & intImgW & " border=""0"" align=""center"" cellpadding=""0"" cellspacing=""0""><tr><td><img src=grafik/" & strImgURL & " height=" & intImgH & " width=" & intImgW & " border=""1""><br></td></tr>"
'                        while not oRsBilledtekst.EOF
'                                intImgTxtID = oRsBilledtekst("billedtekstID")
'                                strImgTxt = oRsBilledtekst("billedtekst")
'                                intImgGrafikID = oRsBilledtekst("grafikID")
'                                if int(intImgGrafikID) = int(intGrafikID) then
'                                    Response.Write "<tr><td>" & strImgTxt & "</td></tr>"
'                                else
'                                    Response.Write "</table><br>"
'                                end if
'                            oRsBilledtekst.MoveNext
'                        wend
'                        Response.Write "<tr><td>" & strImgTxt & "</td></tr></table><br>"
'                    else
'                        Response.Write ""
'                    end if
'                    oRsGrafik.MoveNext
'                wend
           
            end if
           
            oRsTekst.MoveNext

        Wend
       
    end if

End Sub
Sub closeHTML

    Response.Write "<td>" & vbCrLF
    Response.write "<tr>" & vbCrLF
    Response.Write "</table>" & vbCrLF
    Response.Write "</BODY>" & vbCrLF
    Response.Write "</HTML>" & vbCrLF
   
End Sub

%>

Lige nu er der fejl i den da jeg har gjort et eller andet galt så det ved jeg godt ;)

Det den skal er at den skal vise tekst. Men hvis der er nogle billeder til teksten skal den vise dem sådan at der kommer den første tekst der tilhører undermenuen, så skal den vise billede 1 med billedteksten under billedet, så skal den have næste tekst til samme undermenupunkt nedenunder og derefter billede 2 og billedtekst to osv. I kan se et eksempel på hvad jeg mener her:


http://home1.stofanet.dk/imp/lang.htm

Men hvis der ikke er noget billede der hører til skal den kun vise teksten og hvis der ikke er noget tekst der hører med, men kun et billede så skal den kun vise billedet...

Jeg ved det er noget af en opgave nu hvor I ikke har adgang til min database og alt sådan noget, men det er desværre ikke muligt for mig at give jer adgang til den...

Det skal lige siges at SQL sætningerne gerne skulle være rigtige og at de fungerer med min database... så hvis der er noget i dem der undrer jer, mht. f.eks. nogle variabler så er det nogle der ligger i de øverste to inkluderede filer, men dem kan jeg desværre heller ikke vise jer...

Endnu engang vil jeg lige sige at jeg godt ved det er en træls og svær opgave så derfor er der også sat mange point af... Jeg ville blive UTROLIG glad hvis der var en eller flere der gad hjælpe mig da jeg er helt lost i det...

På forhånd mange tak :D

Mvh. Nicolai

P.S. Trælst man kun kan give 200 point...
Avatar billede imp Nybegynder
26. november 2003 - 01:22 #1
Heh.... Tak for svarene... Nå, men jeg fik selv løst det ved at tænke mig om og kom egentlig på en MEGET nemmere kode der fungerede 10 gange bedre... Heh... Så 200 point til mig...!

Mvh. Nicolai
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