Avatar billede fru_t Nybegynder
05. december 2005 - 11:27 Der er 40 kommentarer og
1 løsning

Hente ny tekst ind i flash hver dag?

Hej.

Jeg har efterhånden oprettet en del spørgsmål, som allesammen kredser om dette problem: Jeg skal hente en tekst ind i flash, og hver dag skal der hentes en ny tekst ind, som netop passer til den pågældende dag. Samtidig skal jeg bruge et dato-script,så flash viser dags dato.

Den tekst, jeg skal hente ind, lægger som en tekstfil på den måde, at hver måned har én tekstfil, dvs 01.txt, 02.txt osv.

Hver måneds tekstfil er lavet således, at den tekst, der skal hentes ind fx den 1. januar, hedder "===1"

Ex:

===1

Her er en overskrift

Her er brødteksten

===2

Her er en overskrift

Her er brødteksten


osv osv frem til den ===31

Kan dette scriptes ind i flash? Og hvordan?

/fru_t
Avatar billede maqhem Nybegynder
06. december 2005 - 19:37 #1
Hvis det endnu er en mulighed, kan du så ikke lave hver fils indhold som dette:

------------------------------

&1o=Her er en overskrift
&1b=Her er brødteksten

&2o=Her er en anden overskrift
&2b=Her er en anden brødtekst

------------------------------

Jeg er ikke sikker på, at jeg kan generere en brugbar kode, men det vil gøre arbejdet MEGET nemmere :)
Avatar billede maqhem Nybegynder
06. december 2005 - 19:38 #2
Hvis du gør det, så skal jeg se hvad jeg kan gøre!
Avatar billede maqhem Nybegynder
06. december 2005 - 20:40 #3
Hvis du uddyber hvordan datoen skal stilles op, skal jeg med glæde lave et script til dig, det kunne for eksempel være:

DD/MM - ÅÅÅÅ    SS:MM:TT

Eller bare

MM - DD - ÅÅÅÅ

det bestemmer du :)

Men ellers har jeg lavet en kode, som henter både overskrift og tekst ind:

alle dine filer skal hedde præcis som nu.

Mens indholdet skal ved alle sammen være som:

------------------------------

&5o=Overskrift for 5. december.
&5b=Solen skinder dejligt :)

&6o=I dag :D
&6b=Men det er bidende koldt udenfor!

&7o=Ja, hvad skal jeg skrive hér, lige meget!
&7b=For det vigtigste er jo ikke overskriften, det er vel selve teksten  ;)

------------------------------

Hvis du kommer følgende stykke kode på din frame, virker skidtet:

onEnterFrame=function(){
    tid = new Date();
    day = tid.getDate();
    month = tid.getMonth()+1;
    if(month<10){
        month="0"+month;
    }
    nlv = new LoadVars();
    nlv.onLoad = function() {
        dags_overskrift.html = true;
        dags_overskrift.htmlText = this[day+"o"];
        dags_tekst.html = true;
        dags_tekst.htmlText = this[day+"b"];
    }
    nlv.load(month+".txt");
}

Du skal så lige huske, at du kan kode html i dine dato-txt-filer, det vil sige, at skriver du:

&7b=Bla, bla, bla...<br>hutelihut

Så vil den erstatte <br> med et linieskift :)

Så variablen hvoor overskriften ryger ind hedder dags_overskrift, og brødteksten ryger ind på dags_tekst :)
Avatar billede maqhem Nybegynder
06. december 2005 - 20:42 #4
Denne kode er auto-opdaterende, det vil sige, at åbner du dén side, hvor dette foregår henne klokken 24:56:20 den 5. maj, vil den vise indholdet for 5. maj, mens den vil skifte til 6. majs indhold efter 3 minutter og 40 sekunder :)
Avatar billede maqhem Nybegynder
06. december 2005 - 20:44 #5
Håber du kan få det til at virke!

:)

Nicolaj Wahlqvist
Avatar billede maqhem Nybegynder
06. december 2005 - 20:57 #6
klokslettet skulle selvfølgelig have været 23:56:20 i stedet for 24:56:20
Avatar billede fru_t Nybegynder
11. december 2005 - 21:08 #7
Hej Nicolaj.

Mange tak for dine mange svar. HELT FANTASTISK!!!

Jeg forsøger lige om et øjeblik, om jeg kan få det til at virke.

Datoscriptet må gerne være med dato og måned, hvis det kan lade sig gøre, altså fx:

12. december

(ikke årstal)

/fru_t
Avatar billede fru_t Nybegynder
11. december 2005 - 21:25 #8
Hej igen.

Det virker sandelig. Fedt!!

Dog har jeg det problem, at æ, ø og å ikke bliver vist. Jeg plejer at kunne løse det ved at sige "embed" og så tilføje disse bogstaver som både små og store. Men når jeg gør det, så vises der slet ingen tekst. Så har jeg prøvet at skrive samtlige bogstaver som "embed", men der bliver stadig ikke vist nogen tekst. Ved du, hvad man kan gøre ved det så? Er der ikke det problem hos dig?

/fru_t
Avatar billede sirbatman Nybegynder
12. december 2005 - 01:13 #9
Hej fru t!
Hvis du bruger en txt fil der er lavet med notesblok kan du få problemer med æ ø å, dette er fordi at notesblok er et gammelt program hvor aski tabellerne ikke understøtter æ ø å, du kan dog lave dine tekst filer i et xml dokument da xml understøtter æ ø å og hente dette ind i flash.

ps. Du kan godt åbne en xml fil i din notesblok og rette den, men så får du problemer med æ ø å igen, så brug evt. dreamweaver da denne understøtter æ ø å
Avatar billede maqhem Nybegynder
12. december 2005 - 09:13 #10
Det lyder faktisk som et fornuftigt foreslag, sirbatman kom med. Så omdøber du bare dit script til følgende:

onEnterFrame=function(){
    tid = new Date();
    day = tid.getDate();
    month = tid.getMonth()+1;
    r_day = tid.getDate();
    r_month_u = tid.getMonth();
    r_months=["januar","februar","marts","april","maj","juni","juli","august","september","oktober","november","december"];
    r_month=r_months[r_month_u];
    r_date=r_day+". "+r_month;
    if(month<10){
        month="0"+month;
    }
    nlv = new LoadVars();
    nlv.onLoad = function() {
        dags_overskrift.html = true;
        dags_overskrift.htmlText = this[day+"o"];
        dags_tekst.html = true;
        dags_tekst.htmlText = this[day+"b"];
    }
    nlv.load(month+".xml");
}

Og så skal du jo selvfølgelig lige huske, at ændre navnet på txt-filen, så det bliver til en xml-fil. For du problemer med at åbne den, bruger du selvfølgelig bare "Åben med...".

Jeg har i scriptet tilføjet et lille stykke kode, så nu returnerer variablen r_date "12. december".
Avatar billede maqhem Nybegynder
12. december 2005 - 09:17 #11
... dog kan jeg stadig ikke få æ, ø og å til at virke, men det afviger jo ikke fra, om du kan. Tester du det ikke lige?
Avatar billede maqhem Nybegynder
12. december 2005 - 17:39 #12
Jamen, hvis det skal være på dén måde, så skal du fa'me få et script der duer! :)

onEnterFrame=function(){
    tid = new Date();
    day = tid.getDate();
    month = tid.getMonth()+1;
    r_day = tid.getDate();
    r_month_u = tid.getMonth();
    r_months=["januar","februar","marts","april","maj","juni","juli","august","september","oktober","november","december"];
    r_month=r_months[r_month_u];
    r_date.text=r_day+". "+r_month;
    if(month<10){
        month="0"+month;
    }
    nlv = new LoadVars();
    nlv.onLoad = function() {
        dags_overskrift = this[day+"o"];
        dags_tekst = this[day+"b"];
    }
    nlv.load(month+".txt");
    System.useCodePage=true;
    if(System.capabilities.manufacturer.split(" ")[1]!="Macintosh"){
        sm_ae_ers=dags_overskrift.split("ae");
        ful_ers_1=sm_ae_ers.join("æ");
        sm_oe_ers=ful_ers_1.split("oe");
        ful_ers_2=sm_oe_ers.join("ø");
        sm_aa_ers=ful_ers_2.split("aa");
        ful_ers_3=sm_aa_ers.join("å");
        bi_ae_ers=ful_ers_3.split("AE");
        ful_ers_4=bi_ae_ers.join("Æ");
        bi_ae_ers=ful_ers_4.split("OE");
        ful_ers_5=bi_ae_ers.join("Ø");
        bi_ae_ers=ful_ers_5.split("AA");
        ful_ers_6=bi_ae_ers.join("Å");
        overskrift.text=ful_ers_6;
        sm_ae_ers=dags_tekst.split("ae");
        ful_ers_1=sm_ae_ers.join("æ");
        sm_oe_ers=ful_ers_1.split("oe");
        ful_ers_2=sm_oe_ers.join("ø");
        sm_aa_ers=ful_ers_2.split("aa");
        ful_ers_3=sm_aa_ers.join("å");
        bi_ae_ers=ful_ers_3.split("AE");
        ful_ers_4=bi_ae_ers.join("Æ");
        bi_ae_ers=ful_ers_4.split("OE");
        ful_ers_5=bi_ae_ers.join("Ø");
        bi_ae_ers=ful_ers_5.split("AA");
        ful_ers_6=bi_ae_ers.join("Å");
        tekst.text=ful_ers_6;
    }else{
        overskrift.text=dags_overskrift;
        tekst.text=dags_tekst;
    }
}

Dette gør det muligt, at benytte æ (Æ), ø (Ø) og å (Å):

System.useCodePage=true;

Og så har jeg hørt en lille fugl synge om, at det ikke duer til Macintosh, så vi sorterer lige dem fra med denne kode:

if(System.capabilities.manufacturer.split(" ")[1]!="Macintosh"){

Men det skal så lige siges, at hvis du vil have det til at du, skal dine tegn være:

-----------------
æ: ae
Æ: AE

ø: oe
Ø: OE

å: aa
Å: AA
-----------------

Så din tekstfils indhold kunne være:

-----------------
&12o=Og saa har vi en overskrift fra oeverste hylde
&12b=Og lidt broedtekst med nogle AE'er, OE'er og AA'er i :)
-----------------

Men da jeg fandt ud af, at det godt kan lade sig gøre med en txt-fil alligevel, har jeg omdøbt den til "<MÅNED>.txt". Men det kan du bare ændre i koden hvis du ikke ønsker at det skal være txt-filer.


Jeg håber, du får det til at du :)
Avatar billede maqhem Nybegynder
12. december 2005 - 17:42 #13
OG... meget vigtigt: Dit instance til din overskrift skal være overskrift, mend brødtekstens instance skal være tekst :)
Avatar billede maqhem Nybegynder
12. december 2005 - 17:43 #14
*mens
Avatar billede maqhem Nybegynder
12. december 2005 - 17:47 #15
Hmm... Nu kan du jo ikke kode html i txt-filen mere :S Det laver jeg altså lige om:

onEnterFrame=function(){
    tid = new Date();
    day = tid.getDate();
    month = tid.getMonth()+1;
    r_day = tid.getDate();
    r_month_u = tid.getMonth();
    r_months=["januar","februar","marts","april","maj","juni","juli","august","september","oktober","november","december"];
    r_month=r_months[r_month_u];
    r_date.text=r_day+". "+r_month;
    if(month<10){
        month="0"+month;
    }
    nlv = new LoadVars();
    nlv.onLoad = function() {
        dags_overskrift = this[day+"o"];
        dags_tekst = this[day+"b"];
    }
    nlv.load(month+".txt");
    System.useCodePage=true;
    if(System.capabilities.manufacturer.split(" ")[1]!="Macintosh"){
        sm_ae_ers=dags_overskrift.split("ae");
        ful_ers_1=sm_ae_ers.join("æ");
        sm_oe_ers=ful_ers_1.split("oe");
        ful_ers_2=sm_oe_ers.join("ø");
        sm_aa_ers=ful_ers_2.split("aa");
        ful_ers_3=sm_aa_ers.join("å");
        bi_ae_ers=ful_ers_3.split("AE");
        ful_ers_4=bi_ae_ers.join("Æ");
        bi_ae_ers=ful_ers_4.split("OE");
        ful_ers_5=bi_ae_ers.join("Ø");
        bi_ae_ers=ful_ers_5.split("AA");
        ful_ers_6=bi_ae_ers.join("Å");
        overskrift.html=true;
        overskrift.htmlText=ful_ers_6;
        sm_ae_ers=dags_tekst.split("ae");
        ful_ers_1=sm_ae_ers.join("æ");
        sm_oe_ers=ful_ers_1.split("oe");
        ful_ers_2=sm_oe_ers.join("ø");
        sm_aa_ers=ful_ers_2.split("aa");
        ful_ers_3=sm_aa_ers.join("å");
        bi_ae_ers=ful_ers_3.split("AE");
        ful_ers_4=bi_ae_ers.join("Æ");
        bi_ae_ers=ful_ers_4.split("OE");
        ful_ers_5=bi_ae_ers.join("Ø");
        bi_ae_ers=ful_ers_5.split("AA");
        ful_ers_6=bi_ae_ers.join("Å");
        tekst.html=true;
        tekst.htmlText=ful_ers_6;
    }else{
        overskrift.html=true;
        overskrift.htmlText=dags_overskrift;
        tekst.html=true;
        tekst.htmlText=dags_tekst;
    }
}
Avatar billede maqhem Nybegynder
12. december 2005 - 17:49 #16
Detsuden laver den altså også dobbelt linieskift ved mig hvis jeg laver linieskift i min txt-fil, men der skal du jo så bare skrive <br> i stedet for, at lave et linieskift :)
Avatar billede maqhem Nybegynder
12. december 2005 - 18:01 #17
Og så ville du vel gerne have et bud på, hvordan koden reagerer, ikke?

Hvis jeg skriver i 12.txt:

&12o=Og saa har vi en overskrift fra oeverste hylde
&12b=Og lidt broedtekst med nogle AE'er, OE'er og AA'er i :)

Skriver den i overskriften:

Og så har vi en overskrift fra øverste hylde

og i teksten:

Og lidt brødtekst med nogle Æ'er, Ø'er og Å'er i :)

Jeg har Windows - hvis jeg havde haft Macintosh ville den returnere følgende:

overskrift:
Og saa har vi en overskrift fra oeverste hylde

tekst:
Og lidt broedtekst med nogle AE'er, OE'er og AA'er i :)
Avatar billede maqhem Nybegynder
12. december 2005 - 19:41 #18
Kan du få det til at du?

:)
Avatar billede fru_t Nybegynder
12. december 2005 - 20:05 #19
Forsøger lige om straks at få det til at virke. Der var godt nok mange forskellige beskeder, men som jeg forstod det, så skulle det sidste script virke med ØÆÅ, også selvom jeg bibeholder mine filer som txt-filer, ikke?
Avatar billede maqhem Nybegynder
12. december 2005 - 20:06 #20
Lige præcis :)

Du er jo hammergo'!
Avatar billede fru_t Nybegynder
12. december 2005 - 20:19 #21
Hej igen.

Nej, jeg kan desværre ikke få det til at virke med txt-filerne. Kan du? Forsøger lige med xml-filerne.

/fru_t
Avatar billede maqhem Nybegynder
12. december 2005 - 20:22 #22
Henter den overhovedet teksten ind?
Avatar billede fru_t Nybegynder
12. december 2005 - 20:25 #23
Jeg har nu forsøgt med xml-filen, og jeg får stadig problemer med øæå - men til gengæld synes jeg, jeg bedre kan få overblikket over indholdet i filen, så jeg tror, jeg vil lave dem om til xml-filer uanset.

Vil dit script til txt-filerne stadig kunne bruges, hvis ellers jeg ændrer til xml i stedet for txt? (Hvis altså scriptet kan komme til at virke. Glemte lige tidligere at skrive, at jeg slet ikke får nogen tekst vist, når jeg publiserer).

/fru_t
Avatar billede maqhem Nybegynder
12. december 2005 - 20:30 #24
Altså, jeg kan jo godt få det til at du. Se hér:

Filer:

hentvars.fla
hentvars.exe (publisherer altid til .exe, men html'en burde give samme resultat :) )
12.txt

Kode på første frame i fla-filen:

onEnterFrame=function(){
    tid = new Date();
    day = tid.getDate();
    month = tid.getMonth()+1;
    r_day = tid.getDate();
    r_month_u = tid.getMonth();
    r_months=["januar","februar","marts","april","maj","juni","juli","august","september","oktober","november","december"];
    r_month=r_months[r_month_u];
    r_date.text=r_day+". "+r_month;
    if(month<10){
        month="0"+month;
    }
    nlv = new LoadVars();
    nlv.onLoad = function() {
        dags_overskrift = this[day+"o"];
        dags_tekst = this[day+"b"];
    }
    nlv.load(month+".txt");
    System.useCodePage=true;
    if(System.capabilities.manufacturer.split(" ")[1]!="Macintosh"){
        sm_ae_ers=dags_overskrift.split("ae");
        ful_ers_1=sm_ae_ers.join("æ");
        sm_oe_ers=ful_ers_1.split("oe");
        ful_ers_2=sm_oe_ers.join("ø");
        sm_aa_ers=ful_ers_2.split("aa");
        ful_ers_3=sm_aa_ers.join("å");
        bi_ae_ers=ful_ers_3.split("AE");
        ful_ers_4=bi_ae_ers.join("Æ");
        bi_ae_ers=ful_ers_4.split("OE");
        ful_ers_5=bi_ae_ers.join("Ø");
        bi_ae_ers=ful_ers_5.split("AA");
        ful_ers_6=bi_ae_ers.join("Å");
        overskrift.html=true;
        overskrift.htmlText=ful_ers_6;
        sm_ae_ers=dags_tekst.split("ae");
        ful_ers_1=sm_ae_ers.join("æ");
        sm_oe_ers=ful_ers_1.split("oe");
        ful_ers_2=sm_oe_ers.join("ø");
        sm_aa_ers=ful_ers_2.split("aa");
        ful_ers_3=sm_aa_ers.join("å");
        bi_ae_ers=ful_ers_3.split("AE");
        ful_ers_4=bi_ae_ers.join("Æ");
        bi_ae_ers=ful_ers_4.split("OE");
        ful_ers_5=bi_ae_ers.join("Ø");
        bi_ae_ers=ful_ers_5.split("AA");
        ful_ers_6=bi_ae_ers.join("Å");
        tekst.html=true;
        tekst.htmlText=ful_ers_6;
    }else{
        overskrift.html=true;
        overskrift.htmlText=dags_overskrift;
        tekst.html=true;
        tekst.htmlText=dags_tekst;
    }
}

textfields:

1. instance Navn: overskrift
2. instance Navn: tekst
3. instance Navn: r_date

Indhold af min txt-fil (12.txt):

&5o=5. DECEMBER!
&5b=Og lige lidt information om 5. december...

&6o=6. DECEMBER!
&6b=Og lige lidt information om 6. december...

&7o=7. DECEMBER!
&7b=Og lige lidt information om 7. december...

&12o=Saa har vi sq lige en fed overskrift til et script der bare funger
&12b=Og lidt "daejlig"<br>indhold ogsaa!


Ovenstående fungerer fint hos mig :)
Avatar billede maqhem Nybegynder
12. december 2005 - 20:34 #25
Hmm... Kan du ikke lige prøve med ovenstående, og hvis du da kan få det til at du, kan du jo ændre til xml-filer :)
Avatar billede fru_t Nybegynder
12. december 2005 - 20:36 #26
instance: troede navnet skulle være dags_overskrift og dags_tekst. Har ændret det til det, du skriver, men der bliver stadig ikke hentet nogen tekst ind.

Underligt. Dobbelttjekker lige igen.
Avatar billede maqhem Nybegynder
12. december 2005 - 20:38 #27
før skulle navnet være dags_overskrift og dags_tekst. Men efter at jeg har skulle ændre koden, så den kunne tage æ ø å har jeg ændret navnene, for at få det til at du
Avatar billede fru_t Nybegynder
12. december 2005 - 20:42 #28
ok. Men det vil stadig ikke virke.

Jeg får denne error, når jeg publiserer til swf (hvilket jeg altid publiserer til.)
Nu har jeg også publiseret til exe, men der vises stadig ingen tekst.

Hvis det virker hos dig, må det jo også kunne virke hos mig. Hrmpf. Kunne jeg få dig til at sende mig dine filer i en e-mail? Så kan det være, jeg kan se, hvad det er, jeg gør forkert. rikkefrede@mail.tele.dk

Og så skal du naturligvis have dine point. Du må gerne få dobbelt eller mere, hvis du skulle være interesseret, for jeg har godt nok været fantastisk glad for din hjælp!!

/fru_t
Avatar billede fru_t Nybegynder
12. december 2005 - 20:42 #29
Glemte at skrive error:
**Error** Scene=Scene 1, layer=Layer 1, frame=1:Line 19: There is no property with the name 'useCodePage'.
        System.useCodePage=true;

Total ActionScript Errors: 1     Reported Errors: 1
Avatar billede maqhem Nybegynder
12. december 2005 - 20:45 #30
Glad for at kunne hjælpe :)

Men nej, jeg skal da ikke have dobbelt point. Jeg hjælper meget gerne :)

Jeg sender en mail, og når vores problem er løst, kan du jo give mig de 200 du har udlovet
Avatar billede fru_t Nybegynder
12. december 2005 - 20:49 #31
Det gode ved xml er også, at den automatisk kan udskifte ø,ø og å :) Smart :)
Avatar billede maqhem Nybegynder
12. december 2005 - 20:50 #32
Det er detsuden også imod reglementet, at give over 200 :)
Avatar billede fru_t Nybegynder
12. december 2005 - 20:51 #33
Ok. Jamen så nøjes jeg med de 200. Vi skal jo holde os til reglerne :D
Avatar billede maqhem Nybegynder
12. december 2005 - 20:53 #34
Ja, det tror jeg er en god idé
Avatar billede maqhem Nybegynder
12. december 2005 - 20:53 #35
Og du er vel også glad, jo billigere du slipper, ikke? :P
Avatar billede fru_t Nybegynder
12. december 2005 - 20:54 #36
Nej, det betyder ikke så meget. Jeg bruger ikke mine point til andet end at dele ud, og jeg har rigeligt af dem :D
Avatar billede fru_t Nybegynder
12. december 2005 - 20:55 #37
Har du sendt noget per mail?
Avatar billede fru_t Nybegynder
12. december 2005 - 20:58 #38
Må man ifølge reglementet give 200 point til hver person, der svarer på spørgsmålet?
Avatar billede maqhem Nybegynder
12. december 2005 - 21:04 #39
Øh, det ved jeg faktisk ikke... Det kan vel findes et sted på eksperten...

Mailen kunne jeg ikke sende, den er for stor. Har du MSN?
Avatar billede fru_t Nybegynder
12. december 2005 - 21:06 #40
Ja. rikkefrede77@hotmail.com
Avatar billede maqhem Nybegynder
13. december 2005 - 14:31 #41
Har du givet mig karma? For jeg har lagt mærke til, at den nu er på 100%, men i går 0% :)
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