Avatar billede carstenandersen Nybegynder
05. december 2009 - 18:43 Der er 11 kommentarer og
1 løsning

Have databaseudtræk i et xml-dokument

Hej eksperter

Jeg har netop downloadet en flash billede viser, http://www.flashcomponents.net/component/highly_customizable_xml_banner_rotator.html, som fungerer helt fint. Jeg vil gerne bruge den sammen med min mysql-database og min kodning foregår i asp, altså så jeg i min database kan definere placering af billedefiler og antallet af billeder.

Manuelt retter jeg blot i ét dokument, en config.xml, men hvordan får jeg sat databaseudtræk i denne fil?

Har kigget lidt på dette, http://www.eksperten.dk/spm/386517, men hvis jeg ændrer config.xml til config.asp med tilføjelser i toppen, kan jeg ikke i andre filer få rettet config.xml til config.asp?

Som I kan se, er jeg på dybt vand, så jeg håber virkelig, at I kan guide mig :-)

På forhånd tak.
Avatar billede The Real Yoda Juniormester
14. maj 2010 - 14:59 #1
Du kunne via FSO skrive en fil med det indhold du vil ..

<%
Set filesys = CreateObject("Scripting.FileSystemObject")
Set filen = filesys.CreateTextFile(server.mappath("/")&"\config.xml", True)

'Start billede/text loop her

filen.WriteLine("Your text goes here.") 'en af disse pr linje du vil skrive i filen ..

'slut billede/tekstlook her
filen.Close
set filen = nothing
set filesys = nothing
%>
Avatar billede carstenandersen Nybegynder
17. maj 2010 - 06:54 #2
Super, at du er kommet på banen, da jeg endnu ikke har fået det løst :-)

Jeg er nok bare ikke helt med. Filen, config.xml, ser f.eks. sådan ud:

<config

    bannerX="0"
    bannerY="0"
    bannerWidth="390"
    bannerHeight="300"
    bannerBGColor="FFFFFF"
   
    numbersX="10"
    numbersY="270"
    numbersSpacing="0"
    numbersHorizontal="yes"
   
    numberTextColor="FFFFFF"
    numberTextAlpha="70"
    numberTextRollOverColor="111111"
    numberTextRollOverAlpha="100"
   
    numberLineColor="000000"
    numberLineAlpha="80"
    numberLineRollOverColor="FFFFFF"
    numberLineRollOverAlpha="70"
   
    numberBGColor="111111"
    numberBGAlpha="40"
    numberRollOverBGColor="FFFFFF"
    numberRollOverBGAlpha="100"
   
    descriptionBGColor="000000"
    descriptionBgAlpha="20"
    descriptionLocation="up"

    preloadingColor="FFFFFF"
    preloadingAlpha="70"
    preloadingTextColor="FFFFFF"
    preloadingTextAlpha="70"

    timerBarColor="EE2211"
    timerBarAlpha="50"
    timerBarHeight="3"
    timerBarLocation="down"
   
    bannerAutoPlay="true"

/>

<items>
    <item delaytime="3" src="/billeder/billede1.jpg" href="http://www.xxxxxx.dk" target="_blank">
        <![CDATA[www.xxxxxx.dk]]>
    </item>
    <item delaytime="3" src="/billeder/billede2.jpg" href="http://www.yyyyyy.dk" target="_blank">
        <![CDATA[www.yyyyyy.dk]]>
    </item>
</items>

Skal ovenstående linier omskrives til filen.WriteLine("Your text goes here."), hvor Your text goes here. skal være linieteksten?

Skal filen blot ende på .asp, og have et almindeligt kald til databasen?

Virkelig på forhånd tak.
Avatar billede The Real Yoda Juniormester
17. maj 2010 - 11:45 #3
Så må det jo være noget i stil med

Set filesys = CreateObject("Scripting.FileSystemObject")
Set filen = filesys.CreateTextFile(server.mappath("/")&"\config.xml", True)

filen.WriteLine("<config")
filen.WriteLine("")
filen.WriteLine("bannerX=\"0\" ")
filen.WriteLine("bannerY=\"0\" ")
osv. til du er færdig med toppen af filen..

filen.WriteLine("<items>")
'Start billede/text loop her

filen.WriteLine("<item delaytime=\"3\" src=\"/billeder/billede1.jpg\" href=\"http://www.xxxxxx.dk\"  target=\"_blank\">")
filen.WriteLine("<![CDATA[www.xxxxxx.dk]]>")
filen.WriteLine("</item>")

...bliver jo så gentaget med hvert database element og skal jo bare rettes til med data fra databasen

'slut billede/tekstlook her

filen.WriteLine("</items>")

filen.Close
Avatar billede carstenandersen Nybegynder
17. maj 2010 - 13:28 #4
Jeg kan godt følge dig lidt, men ikke helt ;-)

Jeg har prøvet med:

<%
Set filesys = CreateObject("Scripting.FileSystemObject")
Set filen = filesys.CreateTextFile(server.mappath("/flash/test/deploy")&"\config.xml", True)

filen.WriteLine("<config")
filen.WriteLine("")
filen.WriteLine("bannerX=\"0\" ")
filen.WriteLine("bannerY=\"0\" ")
filen.WriteLine("bannerWidth=\"390\" ")
filen.WriteLine("bannerHeight=\"300\" ")
filen.WriteLine("bannerBGColor=\"FFFFFF\" ")

filen.WriteLine("bannerAutoPlay=\"true\" ")

filen.WriteLine("<items>")

filen.WriteLine("<item delaytime=\"3\" src=\"/billeder/betingelser.jpg\" href=\"http://www.xxxxxx.dk\"  target=\"_blank\">")
filen.WriteLine("<![CDATA[www.xxxxxx.dk]]>")
filen.WriteLine("</item>")

filen.WriteLine("</items>")

filen.Close
set filen = nothing
set filesys = nothing
%>

Har kaldt filen config.asp - korrekt? Hvad med stien i "Set filen = filesys.CreateTextFile(server.mappath("/flash/test/deploy")&"\config.xml", True)" - er da ikke helt rigtig?
Avatar billede The Real Yoda Juniormester
17. maj 2010 - 13:51 #5
filesys.CreateTextFile(server.mappath("/")&"flash\test\deploy\config.xml", True)" - er da ikke helt

prøv den :)
Avatar billede carstenandersen Nybegynder
17. maj 2010 - 14:04 #6
OK, nu begynder jeg at se hele sammenhængen.

Nu kommer der dog denne fejl:

Microsoft VBScript compilation error '800a03ee'

Expected ')'

/flash/test/deploy/config.asp, line 7

filen.WriteLine("bannerX=\"0\" ")
Avatar billede The Real Yoda Juniormester
17. maj 2010 - 15:01 #7
ahh ..

prøv med
filen.WriteLine("bannerX=""0"" ")


og så andre steder hvor der er \" at rette det til ""
Avatar billede carstenandersen Nybegynder
18. maj 2010 - 07:01 #8
Ok, afprøvet og virker ok, men nu fejl omkring mappath:

Microsoft VBScript runtime error '800a004c'

Path not found

/flash/test/deploy/config.asp, line 3

Altså: Set filen = filesys.CreateTextFile(server.mappath("/")&"flash\test\deploy\config.xml", True)
Avatar billede The Real Yoda Juniormester
18. maj 2010 - 08:33 #9
\ før flash ..
Avatar billede carstenandersen Nybegynder
18. maj 2010 - 10:10 #10
Sådan :-) Det virker ...

Tusind tak for hjælpen. Jeg har haft problemet i rigtig lang tid, men havde lagt det på hylden, da jeg bare ikke kunne løse det. Sådan !

Smid et svar og pointene er mere end fuld fortjent !
Avatar billede The Real Yoda Juniormester
18. maj 2010 - 10:31 #11
svar er skam allerede smidt i starten :)
Avatar billede carstenandersen Nybegynder
18. maj 2010 - 10:41 #12
Ups ;-)

Så er der afgivet point
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