Curs Flash

XML (Extensible Markup Language) este un format special de structurare si stocare a datelor in fisiere cu extensia .xml cu o sintaxa bazata pe tag-uri, este ca o baza de date simpla in care datele sunt adaugate ierarhic in tag-uri, precum la HTML.

Ca o sintaxa simpla a unui cod in format XML este:
<?xml version="1.0"?>
<baza>
  <tag atribut="valoare">
    <tag_in atribut="valoare">Data stocata</tag_in>
  </tag>
</baza>
- Daca nu stiti ce face si cum se lucreaza cu documente XML, studiati tutorialul de la pagina Documente XML.

Formatul XML este in general folosit pentru stocarea de date cum ar fi adrese de imagini sau pagini, adrese si nume de fisiere audio/video si altele, care pot fi utilizate /prelucrate in ActionScript cu functiile specifice E4X, ale claselor XML si XMLList.
Datele in format XML pot fi utilizate in ActionScript prin preluarea lor dintr-un fisier extern sau create direct in script.

Creare date XML cu E4X

E4X este un "nickname" (un alt nume) folosit in ActionScript pentru XML in standardul ECMAScript. Este acelasi standard pentru acces XML folosit si in JavaScript 2.0.
Cu E4X in ActionScript 3 sunt mai multe variante de a crea date in format XML direct in codul scriptului.
Exista 2 optiuni principale:
    1. Prin scrierea directa a intregii structuri XML (tag-uri, atribute, ...) ca valoare a unei variabile de tip XML.
    2. Prin adaugarea separata a fiecarui element. Aici sunt doua modalitati: cu operatorul punct (.) si cu metode ale claselor XML, XMLList.
• In aceasta lectie vor fi prezentate fiecare din aceste modalitati. Ca regula generala, toate folosesc o instanta de obiect a clasei XML.
    - Un obiect XML reprezinta o portiune dntr-un format de date XML, precum: elemente (tag-uri), atribute, comentarii, text.
    - XMLList e o lista de obiecte /elemente XML, indexate numeric, ca un Array.


1. Sa luam un exemplu simplu in care e folosita prima varianta.
// Instanta XML cu datele XML complete
var poze:XML = <imglist>
    <image id="1">
      <url>dir/img1.jpg</url>
      <title>Titlu img1</title>
    </image>
  </imglist>;

trace(poze);        // Afiseaza in Output structura XML
- Acest cod creaza o structura de date XML, in variabila "poze", in care e stocata adresa si titlu unei imagini, iar pt. verificare, daca testati, "trace(poze)" afiseaza in Output aceasta structura.

• Datele in codul XML pot fi adaugate si prin variabile, astfel sunt mai usor de modificat si de folosit mai departe in script. Dar aceste variabile trebuie incadrate intre acolade, dupa cum e in exemplu urmator, ce creaza aceeasi structura de date XML ca cel de mai sus.
// Variabile cu date ce trebuie adaugate in XML
var img_id:int = 1;
var img_url:String = 'dir/img1.jpg';
var img_title:String = 'Titlu img1';

// Instanta XML cu datele XML complete
var poze:XML = <imglist>
    <image id={img_id}>
      <url>{img_url}</url>
      <title>{img_title}</title>
    </image>
  </imglist>;

trace(poze);        // Afiseaza in Output structura XML

2. Iata acelasi format XML creat prin adaugarea separata a fiecarui element, cu operatorul punct:
// Instanta XML cu tag-ul root (de baza)
var poze:XML = <imglist/>;        // Se poate si new XML(<imglist/>);
poze.image.@id = 1;         // Creaza tagul <image>, include si un atribut "id" cu valoare 1
poze.image.url = 'dir/img1.jpg';     // Adauga in tagul <image> un tag <url>
poze.image.title = 'Titlu img1';     // Adauga in tagul <image> un tag <title>

trace(poze);
- Acest cod creaza si returneaza in Output aceeasi structura XML ca cea de la primul exemplu.
Observati modalitatea de creare a fiecarui element, logica sintaxei e destul de simpla:
    - Tagul de baza, numit si radacina (root) se adauga la declararea instantei, cu forma <numetag/>
    - Celelalte tag-uri se creaza prin adaugarea lor la variabila cu instanta XML, sub forma ierarhica, separate cu notatia punct (.).
    - Atributul se adauga la fel, cu notatia punct, dupa tag-ul unde trebuie inclus, dar cu un caracter "@" in fata, ca sa fie recunoscut ca e un element atribut.

• O alta modalitate de a adauga elemente in structura XML este prin folosirea urmatoarelor metode din clasele XML, XMLList: - Aceasta abordare, prin metode, poate parea mai greu de inteles, dar este eficienta cand se doreste adaugarea unor date inainte sau dupa altele deja existente.
Iata acelasi format XML din exemplele de mai sus, de data aceasta creat prin utilizarea metodelor.
// Instanta XML cu tag-ul root (de baza)
var poze:XML = <imglist/>;

// Se adauga fiecare element in parte
// Tagul <image>, apoi, in el: <url> si <title>
poze.appendChild(<image id="1"></image>);
poze.image.prependChild(<url>dir/img1.jpg</url>);
poze.image.insertChildAfter(poze.image.url, <title>Titlu img1</title>);

trace(poze);

Se poate aplica oricare din aceste variante, sau combinate. Totusi, in general se folosesc date XML incarcate din fisier extern, deoarece acel fisier poate fi utilizat si cu alte aplicatii pe server (de ex. cu PHP).
Preluarea datelor XML din fisiere externe este prezentata intr-o lectie urmatoare.


Fisierul FLA cu exemplele din aceasta lectie poate fi descarcat de la: XML - E4X - creare.

Un Test simplu in fiecare zi

HTML
CSS
JavaScript
PHP-MySQL
Engleza
Spaniola
Ce tag adauga imagine in pagina web?
<div> <img> <span>
<img src="http://coursesweb.net/imgs/webcourses.gif" width="191" height="63" alt="Courses-Web" />
Care din aceste coduri CSS afiseaza textul inclinat?
font-style: italic; text-decoration: underline; font-weight: 500;
#id {
  font-style: italic;
}
Clic pe functia jQuery care ascunde animat un element HTML.
click() hide() show()
$(document).ready(function() {
  $(".a_class").click(function(){ $(this).hide("slow"); });
});
Clic pe functia definita corect in PHP.
fname function() {} function fname() {} function $fname() {};
function fname($a, $b) {
  echo $a * $b;
}
Indicati forma pentru Prezent Perfect Continuu a verbului "to walk" (a merge).
have walked have been walking be walking
I have been walking for 5 hours.
- Merg pe jos de 5 ore.
Indicati Trecutul Nedefinit pentru verbul "ser" (a fi) la forma Yo.
será sería fui
Yo fui entrenador.
- Am fost antrenor.
Creare date XML - E4X in ActionScript 3

Last accessed pages

  1. Prepozitii - Prepositions (16587)
  2. Coduri pt culori (39253)
  3. Notiuni fundamentale despre bazele de date SQL (7718)
  4. Cursuri si Tutoriale: Engleza, Spaniola, HTML, CSS, Php-Mysql, JavaScript, Ajax (138611)
  5. Creare si editare pagini HTML (46958)

Popular pages this month

  1. Cursuri si Tutoriale: Engleza, Spaniola, HTML, CSS, Php-Mysql, JavaScript, Ajax (4749)
  2. Curs HTML gratuit Tutoriale HTML5 (3842)
  3. Curs si Tutoriale JavaScript (3183)
  4. Prezentul simplu si continuu - Present Tense Simple and Continuous (3178)
  5. Curs PHP MySQL, Tutoriale si Scripturi PHP (3062)