. .. : Swf.hu 1.0 archívum : Swf.hu főoldal >>> : .. .




 
 
SEGÉDLETEK Flash+XML

XML támogatott hír panel készítése
  feltöltve: 2005.04.03 | szerző: ismeretlen | olvasva: 11805 alkalommal

     
 

Egy XML támogatott hírgyűjtő panelt fogunk elkészíteni, mely bármelyikünk oldalán, vagy munkájában hasznos lehet. Előnye hogy az .swf fájlt egyszer kell publikálni, felrakni a netre, onnantól pedig csak az XML-t kell átírni mondjuk a NotePad-ban és már látszik is a frissítés.

Bevezetés

Ebben a segédletben nem térünk ki arra hogyan csinálj gombokat, mc-ket, mi az az Actions paletta, vagyis a segédlet megkövetel egy alap szintű tudást a Flash-ről. Ez a segédlet is FLMX-re íródott, de ha jól tudom az XML kezelésben nem sok újat nem hozott az MX 2004, így remélhetőleg a legújabb Flash-sel fejlesztőknek is érdekes, hasznos lesz a tutorial.


Az XML-ről

Az XML az eXtensible Markup Language (kiterjeszthető leíró nyelv) rövidítése. Ez egy leíró nyelv, mely adatok struktúrálására alkalmas és ideális is, amit az mutat, hogy 1998 óta jelen van az informatikában és népszerű technológiává vált az adatok cseréjében, legyen szó két program közti kommunikációról, vagy épp itt a Flash ellátásáról. A HTML nyelv is adatleíró, de abban pl. különbözik az XML-től, hogy a HTML az adott tartalom megjelenésére vonatkozóan is tartalmazhat utasításokat.

A tagek (jelölők) a struktúráltságot hordozó kódok. Ismerősnek kell lenniük a HTML-ből, pl.: <b> ...vastagított tartalom ... </b>, vagy akár a <table> ... táblázat ... </table>. A kezdő és a záró tagek és a köztük lévő tartalom alkot egy elemet. És itt jön a poén:
mert míg a HTMl-nek előre definiált jelölői vannak, addig az XML-ben mi magunk hozhatunk létre ilyeneket, megalkotva ezzel a struktúránkat.

Ezen kívül a jelölőinket kiegészíthetjük paraméterekkel is. Ezek mindig a nyitó taghez tartoznak, egyébként pont úgy mint a HTML-ben. Pl.:

< jelolonev parameternev="ertek">

Ennyi ismeretet elsajátítva már simán írhatunk XML file-okat, ám van még három dolog ami igen fontos. Az egyik az az XML deklaráció, mellyel minden XML file-nak kezdőnie kell, hogy az értelmező program (itt a Flash) számára jelezzük hogy XML adatok következnek.

<?xml version="1.0" encoding="ISO-8859-2"?>

Itt az encoding="" után következő rész a közép európai kódolást intézi el nekünk, hogy ékezetes betűinket helyesen kapja meg a Flash. Ezt én azonban el szoktam hagyni, és NotePad-ban UTF-8 kódolással szoktam elmenteni a file-omat. Ennek az XML deklarációnak van egy kis előnye is, mégpedig, hogy tetszőleges kiterjesztéssel mentheted el XML dokumentumaidat, a Flash fog tudni dolgozni a file-oddal mint XML. De mi értelme az .xml kiterjesztéstől eltérni?

Én nemrég tapasztaltam meg egy munkám során, hogy egy multi cég a server-én letiltotta az XML file-okat. Egy kis oldalt csináltam, mely rengeteg XML-ből épült fel. Így nekem mindenhol át kellett írnom a kiterjesztést a .fla-kban, de ezt csak azután tehettem meg miután tenegri elárulta ezt a kis turpisságot. Vagyis azt, hogy a kiterjesztések nem tesznek egy dokumentumot adott file tipussá, azt mindig valamilyen deklaráció végzi (itt a fent említett). Így én vígan átírtam a Flash moziban a kiterjesztéseket és magukat a file neveket (kiterjesztéseit) is .xml-ről .xhtml-re és így már minden futott a server-ükön, hál' az égnek! A kiterjesztés csak nekünk embereknek jelzés , többlet információ az adott file-ról. Ha te ezt tudtad, akkor elnézésedet kérem hogy ezzel traktáltalak.

A másik fontos dolog, hogy az XML file-oknak jól formázottnak kell lenniük ahhoz, hogy a Flash megértse őket. Ez (azon kívül hogy az alapvető XML szabályoknak megfelel) annyit jelent, hogy minden XML dokumentumnak rendelkeznie kell egy gyökér elemmel (root node). Ez a lentebbi példában világossá válik majd, de...

Van egy harmadik fontos dolog amit még tudnod kell, hogy az XML tökéletes beágyazást igényel a HTML-el ellentétben mert csak így lesz jól formált az XML file-od. Azt hogy minden rendben van-e a file-lal, azt úgy ellenőrizheted, hogy megnyitod az Internet Explorer-ben. Ha valamit elrontottál, akkor nem fog rendesen megjelenni a tartalom. Itt egy rossz beágyazást használó XML file részlet:

< haz>
Házamban ez meg az van.
< konyha>
Konyhámban és a házamban ez meg az van
< /haz>
Konyhámban ez meg az van
</ konyha>

Erre valami ilyet fogsz kapni ha megnyitod IE-ben:

Nem túl szép igaz?
Akkor most hogy már mindent tudunk, javítsuk és egészítsük is ki a fenti példánkat, hogy megkapjunk egy tipikus XML file-t. Nyisd meg a NotePad-ed és írd bele következő kódot. Persze másolhatod is, de ez olyan mint a HTML tanulás. Amíg az alap dolgokat nem seggeltem be HTML-ben addig ki nem nyitottam a Dreamweaver-t, hanem csak NotePad-el írtam mindent. Szerintem a kézzel való másolás itt is a javadra válik és talán jobban megragad az XML igen egyszerű, pár szabálya a fejedben. A most következő XML például jól jöhetne egy ingatlan iroda oldalának elkészítésénél, ahol a rengeteg házat egy Flash galériában kéne megjeleníteni. Természetesen könnyen, és gyorsan frissíthetőnek kell lennie. Adott esetben még keresni is kell tudnia a user-nek az oldalon.

< ?xml version="1.0" encoding="UTF-8" ?>
<Ingatlanok>
<Haz1 alapterulet="15m * 15m" telek="D-i fekvésű 1500 m2">
Itt jön a ház általános leírása. Ki tervezte, melyik kerületben van, stb., stb.
<Foldszint szoba="5 db" mellekhelyseg="van">
A földszint általános leírása kerülhetne ide.
<Konyha>
Mit tud a konyha, van-e elszívó és a többi franc.
</Konyha>
<Nappali hazimozi="van" meret="40m2" />
</Foldszint>
</Haz1>
</Ingatlanok>

Ezt ha elmentjük .xml kiterjesztéssel, akkor az IE-ben le tudjuk ellenőrizni hogy mindent helyesen írtunk-e.



Most már meg tudunk írni egy XML file-t magunktól is, ezt a pár szabályt szem előtt tartva. Még annyit érdemes tudni, hogy mik azok a térközök . A szerkesztés során a formázáshoz használt behúzások, sortürések, szóközök és tabulátorok alkotják a térközöket. Ezeket a Flash-ben (értelmező program) figyelmen kívül lehet hagyni, mivel a dokumentum olvashatóságát szolgálják csak és nem horodoznak információt.

Az XML lehetőséget ad még az érvényességek definiálására is. Ezt én még életemben nem használtam ki:), de hasznos lehet akkor ha bizonyos szabályokat szeretnénk bevezetni XML file-jaink egy csoportjára. Ha az előbb említett ingatlan iroda valóban egy óriási cég lenne, mondjuk 15000 házzal, lakással, ingatlannal, telekkel, mezőgazdasági területtel, akkor nem lenne ártalmas pár korlátozó szabályt bevezetni egyes ingatlan fajtákon belül. Pl.: a házakban (nyílván ebből van a legtöbb) a <Nappali> tag, csak a <Haz>tagen belül lehet. Vagy sosem kaphat a <Szoba> tag, újabb gyermekeket, csak paramétereket maximum, tehát ő a legalsó szint az XML fánkban. A DTD-vel (Dokumentum Típus Definíciók - Document Type Definitions) és az XML Schema nyelvvel lehet ezeket a szabályokat leírni és ezekkel egy dokumentum érvényességét vizsgálni. Ez azonban igen bonyolult dolog és az sem elhanyagolható hogy fogalmam nincs róla:), úgyhogy ugorjunk.

 
     
 
 

© Devnet.hu. A segédletek semmilyen formában nem másolhatók, publikálhatók a Devnet.hu és a szerzők közös írásos engedélye nélkül.
 
. .. : Swf.hu 1.0 archívum : Swf.hu főoldal >>> : .. .