CUPRINS

INTRODUCERE
1 1.1 1.2 1.3 1.3.1 2 2.1 2.2 2.2. 1 2.2. 2 2.2. 3 2.2. 4 2.3 2.3.1 2.3. 2 2.4 2.4. 1 2.4. 2 3 3.1 3.1.1 3.2 3.3 3.4 3.5 4 4.1 4.2 4.3 4.4 5

Modelul Client-Server
Scurt istoric Noţiuni generale Arhitecturi Client-Server. Particularităţi şi avantaje Arhitectura two-tier.

Descrierea mijloacelor instrumentale
Limbajul HTML. Baze de date Sisteme de gestiune a bazelor de date. Mysql Avantajele sistemelor de gestiune a bazelor de date Limbajul SQL Interogări şi comenzi asupra bazelor de date Limbajul PHP. Noţiuni generale Avantajele şi neajunsurile PHP Flash. Aplicaţii multimedia interactive Tehnologia FLEX Limbajele MXML şi Action Script

Proiectarea sistemului
Metodologii de dezvoltare Etapele de dezvoltare a produsului soft Selectarea metodologiei convenabile Modelul conceptual Arhitectura sistemului Crearea diagramelor UML

Descrierea sistemului realizat
Descrierea funcţionării sistemului Conexiunea FLASH-PHP-MySQL Structura Bazei de Date Interfaţa cu utilizatorul

Argumentarea economică a proiectului de licenţă
Concluzii Bibliografie Anexe

UTM 2151.788.01 ME
Mod. Coala Nr. document Semnăt. R. Vîrlan V. Cărbune V. Negură E. Guţuleac Data Litera Coala Coli 103 Elaborat Conducător Consultant Contr. norm. Aprobat

Modul Client-Server pentru Sistem Multimedia on-line

4 UTM FCIM C – 073

ADNOTARE

Această teză de licenţă are ca obiectiv crearea legaturii dintre clienţi şi serverul web al Sistemului Multimedia. În cadrul tezei s-a utilizat arhitectura client-server, în baza căreia se proiectează sisteme informaţionale eficiente şi sigure, atît clasice, cît şi pentru Internet, unde partea client este asigurată de Web-browser. Memoriul explicativ este structurat pe 4 capitole si contine 70 de pagini. In anexe sunt prezentate codurile-sursa ale programelor, precum si structura bazei de date. In raport se contin 11 figuri care ilustreaza intr-un mod mai eficient descrierea teoretica.

Coala Mod Coala Nr. document Semnăt . Data

UTM 2151.788.01 ME

6

ANNOTATION

This Thesis aims to create the link between customers and web server of the Multimedia Systems. In this thesis it was used the client-server architecture, based on which it designs efficient and secure information systems, both classical and for the Internet, where the customer part is assured of Web-browser. Explanatory memorandum is divided into four chapters and contains 70 pages. The annex presents the source code of the software, and the database structure. The report contains 11 figures that illustrate the theoretical description more efficiently.

Coala Mod Coala Nr. document Semnăt . Data

UTM 2151.788.01 ME

7

Introducere
Jocurile online sunt jucate în reţele de calculatoare, de obicei pe Internet. Un avantaj al jocurilor online este posibilitatea de conectare la jocuri cu mai mulţi jucători, deşi sunt obişnuite şi jocurile cu un singur jucător. Cum World Wide Web s-a dezvoltat şi browserele au devenit mai sofisticate, a început să se creeze şi jocuri pentru browsere web ca şi client. Jocurile simple pentru un singur jucător puteau fi jucate folosind un browser web iar jocurile mai complicate contactau un server web pentru a permite jocul cu mai mulţi jucători. Dezvoltarea tehnologiilor grafice pe web precum Flash şi Java a permis jocurilor pentru browsere să devină mai complexe. Aceste jocuri, cunoscute şi prin tehnologia folosită drept "jocuri Flash" sau "jocuri Java", au devenit din ce în ce mai populare. Aruncand o privire pe statisticile motoarelor de cautare vom descoperi ca jocurile flash sunt printre cele mai cautate lucruri pe internet. Există multe jocuri flash creative pe Internet şi aproape oricine a jucat un joc flash măcar o dată. Majoritatea jocurilor realizate cu tehnologie flash, cel mai adesea se joacă de unul singur, avînd în comun doar o lista cu scoruri record comună pentru toţi jucătorii. Cele mai importante aspecte ale popularitaţii jocurilor flash este accesul uşor şi faptul că majoritatea din ele, rulează cu uşurinţă pe aproape orice sistem de operare, chiar şi pe calculatoarele mai puţin performante. În prezent există multe jocuri flash (Sisteme Multimedia) online bazate pe mai mulţi jucători care percep o taxă lunară pentru abonarea la serviciile lor în timp ce proiectul de faţă va oferi o alternativă fără nicio taxă lunară. Doar cu o simplă inregistrare, orice utilizator poate avea acces gratuit la sistemul multimedia. Acesta din urmă, împreună cu serverul web formează un sitem integru. Obiectivul de bază al proiectului de diplomă este de a realiza legatura dintre clienţi şi serverul web al Sistemului Multimedia. Proiectul va cuprinde realizarea serverului cu baza de date precum si interfaţa clientului prin care acesta va comunica cu serverul. Scopul este de a crea legătura FLASH (ActionScript)PHP-MySQL. Raportul proiectului este organizat în 4 capitole după cum urmează:

Coala Mod Coala Nr. document Semnăt . Data

UTM 2151.788.01 ME

8

În acest capitol. Coala Mod Coala Nr. costul softului necesar proiectării. avantajele acestui modul. MXML. document Semnăt . În Capitolul 2 sunt descrise instrumentele şi tehnologiile necesare pentru realizarea proiectului. cu ajutorul surselor bibliografice se va stabili ce reprezintă de fapt modulul Client-Server. precum si sistemul de gestiune a bazelor de date – MySQL.a. Totodată se stabilesc potenţialii utilizatori ai produsului final în vederea estimării profitului. ActionScript.01 ME 9 . Capitolul 5 reflectă cheltuielile de proiectare. adică interacţiunea (schimbul de informaţii) dintre client şi server. În Anexe sunt prezentate sursele de cod ale produselor program. instrumentele necesare în cazul dat sunt limbajele de programare HTML. cum se realizează acesta.788. După cum se poate observa mai sus. Se determină costul forţei de muncă. Tot aici se prezintă structura bazei de date.Capitolul 1 este consacrat analizei modulului Client-Server. precum şi modelul conceptual al proiectului. precum şi alţi factori care necesită mijlioace financiare. ş. În Capitolul 3 se prezintă metodologia de dezvoltare a produsului soft. ce reprezintă serverul. În Capitolul 4 se descrie modul de funcţionare a sistemului. Data UTM 2151. PHP.

pe lîngă calculele ce erau preponderente în tehnologia informatică embrionară computerele s-ar preta şi la înmagazinarea şi exploatarea volumelor mari de informaţii. document Semnăt . Până spre anii ‘80 contau doar mainframe-urile. Data şi a schimbului de informaţii între mai multe UTM 2151. odată cu aceasta. punîndu-se. De asemenea. Şi astăzi pentru aproape orice mediu departamental (sau grup de lucru) organizarea centralizată a informaţiilor constituie o primă opţiune. informaţia a crescut ca dimensiune. problema stocării unei mari cantităţi de date. O dată cu informaţia a apărut şi necesitatea schimbului de informaţii. începând cu anul 1948 s-au făcut mai multe studii. Coala Mod Coala Nr. cercetări şi experimente privind stocarea datelor. MODELUL CLIENTSERVER 1. rapiditatea obţinerii rezultatului. bazele de date fiind foarte mari. Astfel. Odată cu evoluţia omenirii. Odată cu apariţia a ceea ce numim astăzi World Wide Web un astfel de vis a devenit realitate.01 ME 10 .1. arhitecturi şi tehnologii privind bazele de date. minisistemele şi supercomputerele. iar de-a lungul timpului s-au manifestat mai multe modele.788. Modul de utilizare a calculatoarelor s-a schimbat dramatic odată cu apariţia reţelelor de calculatoare ce oferă posibilitatea partajării calculatoare interconectate între ele. adică o bază de date care să conţină informaţii din cît mai multe domenii şi care să poată fi accesată de un număr cât mai mare de persoane. Prima dezvoltare în acest sens aparţine firmei Novell care a produs pentru prima dată sistemul de acces la distanţă pentru PC-uri. Încă din zorii civilizaţiei IT s-a observat că . Mult timp modelul de organizare centralizat (datele sunt depozitate pe un sistem central de unde utilizatorii le accesează) a raspuns cel mai bine cerinţelor de exploatare a bazelor de date. Pentru aceasta era nevoie de un suport material care să stocheze informaţia şi să o transmită mai departe. o altă problemă este regăsirea informaţiei şi. Până cu puţin timp în urmă acest ideal se menţinea în domeniul viselor. Încă din cele mai vechi timpuri oamenii au avut nevoie de informaţii.1 Scurt istoric De mult timp se cocheta cu ideea creării unei baze de date universale. prin urmare.

. document Semnăt . SERVER INTERNET ……………………………. majoritatea calculelor fiind efectuate de motorul bazei de date.1).Odată cu răspândirea şi dezvoltarea calculatoarelor s-au deschis şi orizonturile.788. iar ca o prima tendinţă s-a dovedit necesitatea descentralizării şi interoperării. 1. Data UTM 2151. iar cele mari şi-au aplecat atenţia asupra accesibilităţii.01 ME 11 .2 Noţiuni generale În modelul “client-server” avem de a face cu o bază de date centralizată care prelucrează cererile logice provenite de la client. rezultatele fiind primite sub formă de tabele (fig. Coala Mod Coala Nr. Evoluţia ramurii desktop a bazelor de date s-a făcut în paralel cu mainstream-ul. Cele mai evidente tendinţe se pot descrie pe scurt astfel: bazele de date mici doreau să-şi dezvolte funcţionalităţi de sistem relaţional (să poată defini relaţii şi să încorporeze SQL) şi să-şi extindă limitele. dar influenţându-se reciproc. materializată prin interfeţe utilizator facile chiar şi pentru activităţile administrative (o interfaţă de calitate ajunge deseori un argument de piaţă). folosind aplicaţii pentru a transmite comenzi SQL serverului bazei de date. Un astfel de server “înţelege” atât natura cererii cât şi structura şi localizarea datelor. Clientul are doar o interfaţă grafică cu care poate accesa baza de date de pe server. 1.

una îndeplinind cererile celeilalte (fig. Nivelul clientului trebuie să prezintă o interfaţă comodă a utilizatorului (UI – user interface) şi să nu fie complicată pentru a o utiliza. ne indică faptul că avem de a face cu două entităţi distincte care comunică între ele. de a salva lucru îndeplinit pînă cînd el nu se va afla într-un loc nepericulos.2. client-server. corect să reacţioneze la acţiunile utilizatorului. fie ca două procese independente în cazul în care este disponibil un sistem de operare multiproces.788. rezolvarea cererilor înseamnă returnarea unui set de date către client.Un server ideal al aplicaţiilor trebuie rapid să execute componentele adiţionale şi să garanteze siguranţa. Serverul bazei de date oferă posibilitate de acces rapid la volume mari de date.1. CLIENT Cerere Răspuns Cerere Răspunsuri SERVER Fig. Data UTM 2151. susţine securitatea şi oferă echipamente puternice pentru elaborare şi administrare. Coala Mod Coala Nr. procesul server. să păstreze toate schimbările în caz dacă se trece în regim autonom. securitatea şi gestionarea la un număr mare de utilizatori. De multe ori. Procesul server trebuie să poată să fie găsit întotdeauna la aceeaşi adresă de către clienţi pentru ca aceştia să îi poată comunica cererile. rulează în permanenţă în gol. şi de a garanta un acces pretutindeni. selectat după dorinţele acestuia. aşteptând să primească sarcini de executat. răspunde la o mulţime de solicitări concomitente. UI ideal trebuie să ofere texte de ajutor. între clienţi şi server trebuie să existe un limbaj comun în aşa fel încât cererile adresate serverului să poată fi uşor întelese şi rezolvate de către acesta. Unul dintre procese. fie prin intermediul unor procese fie create câte unul pentru fiecare client în parte. niciodată nimic nu pierde. automat să se actualizeze.2 Comunicaţia de tip client-server între procese Cele două entităţi trebuie să poată lucra separat.1).1. Un server poate în general deservi mai multe procese client fie direct. Desigur. pot lansa cererile de oriunde din reţea.1 Interacţiunea dintre Client şi Server CLIENT n Tehnologiile de dezvoltare a aplicaţiilor. Procesele clienţi însă. fie pe calculatoare distincte.CLIENT1 CLIENT2 Fig. document Semnăt . 1.01 ME 12 .

cu un control centralizat şi unitar al datelor. furnizează informaţiile/serviciile clientului. Data UTM 2151. formulează o cerere de informaţii/servicii. client-server este un model de lucru în care mai multe programe autonome comunică prin schimb de mesaje. Clienţii trebuie să cunoască doar formatul în care sosesc datele pe reţea. un format în general mult mai simplu. portabilitate. s-au cristalizat o serie de avantaje: flexibilitate. Într-o tentativă de definiţie ambiguă. tot prin intermediul unui mesaj. traficul pe reţea este mult mai mic. serverul ar putea transmite spre client doar acele înregistrări care îndeplinesc condiţia. Coala Mod Coala Nr. consultări) sau comenzi pe care le "înaintează" serverului. Fenomenul client/server a constituit suportul unei adevărate mutaţii în arhitectura sistemelor informaţionale. Clienţii comunică într-un limbaj standard cererile lor către server. sunt transferate către client.Dezavantajul unei astfel de abordări este acela că toate înregistrările. document Semnăt . cerere adresată unui alt calculator denumit server. În acest fel. În acest caz. clienţii (în număr mare de obicei) nu trebuie să conţină în interior algoritmi sofisticaţi de selectare a înregistrărilor care îndeplinesc o anumită condiţie. În general. Un client este un calculator care. d) analizează datele din rezultatele interogărilor/comenzilor primite de la server. Aceşti algoritmi sunt memoraţi o singură dată. b) "formulează" interogări (cereri. Serverul. întreaga operaţiune derulânduse de o manieră transparentă pentru utilizator. Prin combinarea ergonomiei de lucru specifice suprafeţelor grafice de lucru. clienţii sunt calculatoare personale (PC-uri) utilizate pentru activităţi de gestionare a datelor. c) transmite interogările/comenzile respective serverului prin intermediul unei tehnologii de comunicaţie. mutaţie vizibilă în prima parte a anilor '90. iar acesta le execută indiferent dacă este vorba de cereri de selectare de date sau de actualizare a acestora. datele originale sunt mereu protejate de server şi memorate în orice format care consideră serverul că este mai eficient. deschidere către diferite platforme de lucru etc. scalabilitate. În plus. indiferent dacă îndeplinesc sau nu condiţia dorită. O idee mai bună ar fi aceea că împreună cu cererea. Un server se caracterizeaza prin faptul că: a) furnizează un serviciu clientului. să-i fie comunicată serverului şi condiţia care trebuie îndeplinită de către înregistrări pentru a putea fi prelucrate. Mai mult decât atât. Acestea sunt ideile care stau la baza unei arhitecturi client-server. Sistemele client/server sunt sisteme informatice distribuite.01 ME 13 . în interiorul serverului. Un post client se caracterizează prin faptul că: a) prezintă o interfaţă utilizator care e de obicei grafică. prin intermediul unui mesaj.788.

Serverele utilizează baze de date relaţionale în stocarea şi întreţinerea datelor între care există referinţe. Data UTM 2151.sistemul de gestiune a bazelor de date.788. Foarte multă lume consideră clientul şi serverul ca fiind două entităţi hardware. Clientul este cel ce transmite o cerere server-ului. Toate organizaţiile din ziua de azi guvernamentale. portabilitate între platforme şi un acces standardizat la resurse. să controleze periferice sau să efectueze cereri adiţionale altor servere.b) răspunde la interogările/comenzile clientului. Aceste referinţe sunt menţinute printr-o tehnologie denumită integritate referenţială (referential integrity) care oferă mecanisme care acţionează asupra datelor (trigger) şi proceduri de stocare (stored procedure). Trebuie înteles că modelul Client/Server implică o entitate software (clientul) care efectuează cereri. În foarte multe arhitecturi. Pentru a putea îndeplini cererea serverul poate referi o sursă de informaţie (baze de date).01 ME 14 . Coala Mod Coala Nr. Termenul de Client/Server provine de la metoda tradiţională de accesare a unui computer central numit server de către computere aflate la distanţă sau clienţi într-o infrastructură de reţea. Această dezvoltare şi necesitatea utilizării pe o arie mare a unor date de interes comun a dus la apariţia. Fiecare element contribuie în funcţionarea platformei având rolul său. dar independent în execuţia funcţiilor sale. aplicaţiile având rolul reducerii costurilor şi imbunătăţirii serviciilor faţă de competiţie. document Semnăt . utilizarea şi proiectarea modelului Client/Server. economice şi majoritatea întreprinderilor mari şi mici recunosc rolul central pe care aplicaţiile software îl au în cadrul lor. un client poate face cereri la multiple servere şi un server şi un server poate deservi mai mulţi clienţi. care oferă date distribuite. Relaţia între client şi server este una de comandă/control. aplicaţia fiind procesată prin divizarea ei între cele două entităţi iar transferul de date este bidirecţional. Acest model este o combinaţie a trei tehnologii: sistemul relaţional de management al bazelor de date (DBMS). clientul iniţiază cererea şi serverul este cel ce o îndeplineşte transmiţând rezultatul clientului. făcând transparent dialogul dintre client şi server. acesta o interpretează şi apoi o efectuează. reţeaua şi interfaţa client (bazată pe GUI/PC).interfaţa cu utilizatorul (sistem de operare/mediu grafic) . acestea fiind îndeplinite de o altă entitate software (serverul). dar de fapt sunt entităţi software.aplicaţia (prelucrările sau procesele) . c) ascunde detaliile sistemului client/server. Orice sistem distribuit este alcătuit din minimum trei componente principale: . să efectueze procesări asupra datelor.

reducându-se totodată traficul pe reţea prin furnizarea datelor strict necesare utilizatorului. procesare şi date. dar care trebuie să se asigure că legăturile dintre aceste straturi (interfeţe) sunt proiectate corect.Graphical User Interface) front-end către o bază de date partajată. numărul utilizatorilor. răspundirea lor geografică natura reţelelor şi toate tipurile de tranzacţii necesare înainte de a decide tipul arhitecturii. programatorii neavând nevoie să cunoască un limbaj anume pentru a accesa date.preluând acest avantaj . Server-ul este orientat în procese Coala Mod Coala Nr.788. Data UTM 2151. Aceste servere de baze de date utilizează un sistem de management al bazelor de date (DBMS) pentru a defini. Arhitecturile Client/Server definesc cum aceste trei componente sunt împărţite între entităţile software şi distribuite în reţea. Particularităţi şi avantaje Arhitectura client/server a apărut datorită limitărilor arhitecturii file sharing. stoca şi manipula date . nivelul de integrare şi interfaţare cerut. organizaţiile pot reduce procesarea redundantă prin utilizarea procedurilor trigger şi de stocare. şi nu a întregului fişier. 1.3 Arhitecturi Client-Server. utilizarea unor astfel de arhitecturi putând aduce multe beneficii în viitor companiei permiţând adaptarea la diferite standarde şi tehnologii. straturile pot fi proiectate independent unul faţă de celălalt şi realizate de diferiţi specialişti. ea trebuie să ia în considerare complexitatea aplicaţiei. flexibilitatea precum şi întreţinerea aplicaţiei. Câteva din caracteristicile acestei arhitecturi sunt: Centralizarea informaţiei . Arhitectura afectează toate aspectele software. Serverul procesor central . Ea îmbunătăţeşte actualizarea multi-user direct prin intermediul unei interfeţe utilizator grafice (GUI . datele sunt stocate pe un server central şi există un singur punct de control care administrează cererile aplicaţiilor şi platformelor. Clientul poate funcţiona pe un server hardware şi să efectueze cereri de la un server care rulează pe un alt server hardware sau pe un PC sau clientul şi serverul pot funcţiona pe acelaşi computer. cererile utilizatorilor pot fi soluţionate direct. Această arhitectură înlocuieşte server-ul de fişiere cu un server de baze de date. Această tehnică maximizează performanţele fără a compromite modelul centralizat şi reduce probabilitatea existenţei de date redundante în aplicaţii. document Semnăt . Arhitectura client/server fiind o arhitectură stratificată.Un server nu iniţializează niciodată un dialog cu clienţii.01 ME 15 . De asemenea alegerea arhitecturii afectează timpul de dezvoltare. La majoritatea aplicaţiilor end user se urmăreşte: prezentare. există o varietate de moduri cum pot fi divizate şi implementate. Utilizând un sistem de gestiune a bazelor de date.într-un astfel de mediu .Serverul este generic. Utilizând tehnicile de identificare o organizaţie poate creea magazii de date de la diferite servere distribuite în diferite zone geografice.

standard ca: menţinerea unor reguli.1 Arhitectura two-tier Arhitectura client/server pe two-tier (două entităţi) a fost dezvoltată în anii 1980 având drept sursă arhitectura file server. Mecanismele de duplexing. scalabilitatea prin deservirea până la 100 de utilizatori (arhitectura file server este potrivită numai pentru un număr mic de utilizatori) Coala Mod Coala Nr. Licenţierea. Referitor la costurile unor astfel de arhitecturi.01 ME 16 . astfel apare necesitatea de a explica acest tip de arhitectură. în plus serverele şi DBMS sunt desemnate să gestioneze baze de date masive fără o degradare simţitoare a performanţelor. 1. Securitate . Sybase sau Informix necesită sute de mii de dolari iar dezvoltarea unor aplicaţii necesită memorie. iar prin intermediul funcţiilor de stocare pe un server comun datele pot fi manipulate corect din punct de vedere logic şi viabile pentru o varietate de limbaje şi unelte ale lor. validări. viteză şi securitate.3. Singura sa funcţie este să proceseze cererile asupra bazelor sale de date.serverul este un computer dedicat să proceseze un set limitat de cereri de la clienţi. Performanţe . memorie. document Semnăt . de asemenea aceste baze de date permit definirea de useri şi parole care permit evitarea accesului unor persoane neautorizate.uri sau acomodat foarte uşor acestui mediu client/server care oferă o excelentă infrastructură pentru a asigura informaţie organizaţiei asigurând integritate. şi referinţe de integritate. Cele mai populare tipuri de arhitecturi sunt cu doua entităţi (two-tier) şi cu trei (three-tier). maşini noi şi noi sisteme de operare. instalarea şi întreţinerea unor sisteme ca Oracle. Proiectul de faţă va fi realizat conform arhitecturii two-tier. mirroring şi copiere permise administratorilor asigură evitarea dezastrelor.serverele ce lucrează pe platforme ca UNIX . hard disc-uri mari şi un sistem de operare. server-ele sunt cele ce necesită procesoare rapide. clienţi care le accesează. SQL oferă facilităţi eficient de utilizare a traficului în reţea deoarece doar subseturi ale datelor sunt transmise în reţea. Windows NT sau OS/2 pot oferi o mai mare securitate pentru managementul bazelor de date în comparaţie cu file server-ele standard.788. şi a avut drept scop îmbunătăţirea următoarele caracteristici: utilizabilizabilitatea prin intermediul unei interfeţe prietenoase. Data UTM 2151. Din acest motiv în prezent multe organizaţii care au utilizat mainframe. bazate pe forme.

document Semnăt . Marele avantaj al acestui model. există numeroase instrumente de dezvoltare care permit crearea rapidă a aplicaţiilor. Prezentarea este deţinută în exclusivitate de client. Datele transmise clientului pot fi manipulate de acesta cum doreşte. aplicaţia client deţinînd controlul oricărei modificări care apare în cadrul unui sistem ducînd doar la modificarea aplicaţiei client. În plus. Aceste medii deţin o varietate de structuri de date.01 ME 17 . de exemplu). care suportă toate funcţiile de introducere. accesul la resursele informaţionale se face cu ajutorul operatorilor unui limbaj specific (SQL. datorită faptului că selectarea informaţiilor necesare din fişiere nu are loc pe staţiile de lucru şi pe server. trasnsmitearea unei cereri presupune ca aplicaţia client să cunoască sintaxa serverului sau aceasta sa fie tradusă printr-o aplicaţie (API). În cele din urma. de exemplu. iar acesta execută interogările şi returnează datele rezultate către client. procesarea este împărţită între client şi server şi datele sunt stocate şi accesate de pe server. O aplicaţie client dezvoltă un limbaj şi un mecanism de interschimb pentru a transmite cererea serverului. De regulă. Coala Mod Coala Nr. Într-o astfel de topologie motorul datelor este cel ce procesează cererile clientului. printr-o interfaţă standard şi operând cu SGBD-uri care suportă SQL. Interogările realizate către resursele informationale sunt transmise către gestionarul de resurse (baza de date din reţea. datele de pe server fiind centralizate. în care componentele de prezentare şi aplicaţie sunt combinate şi executate pe calculatorul client. afişare şi funcţiile de aplicaţie. timp în care motorul bazei de date verifică integritatea. Această arhitectură este utilizată în mod frecvent în sistemele de prelucrare a informaţiilor în care gestiunea şi operaţiile sistemului nu sunt complexe.788. Acesta este modelul unui server cu control al datelor. la momentul actual. Data UTM 2151. procesare şi date) sunt divizate în două entitaţi (tiers): codul aplicaţiei şi baza de date server. în mod normal în interiorul unui mediu eterogen. totodată să se cunoască serverul cum sunt organizate datele şi denumirea lor. pe server exista un gestionar de resurse (SGBD. În această implementare cele trei componente ale unei aplicaţii (prezentare. limbajul utilizat fiind o formă a SQL. PC-ul client îşi asumă întreaga responsabilitate a funcţionării logice a aplicaţiei. Sistemul de securitate într-un astfel de mediu este complicat deoarece un user trebuie să deţină parole pentru fiecare server SQL iar creşterea utilizatorilor poate duce la compromiterea securităţii bazelor de date aflate pe server. în cazul bazelor de date) sau cu ajutorul funcţiilor existente în biblioteci de programe specializate.- flexibilitatea care permite partajarea datelor. de exemplu). În arhitectura two-tier. este faptul că prin reţea se transferă mai puţine date.

01 ME 18 . complexitatea componentei de aplicaţie nu ar trebui sa fie mare.acestea conduc către unificare. document Semnăt . care nu va creşte semnificativ în timp. Ţinând cont de avantajele si dezavantajele de mai sus. Marele dezavantaj al acestui model este acela că nu există o linie strictă de demarcare între componenta de prezentare şi componenta de aplicaţie. Coala Mod Coala Nr. putem concluziona ca acest model este cel mai bine utilizat pentru construirea de sisteme de calcul orientate către procesarea unui volum de informaţii moderat. acest lucru obstrucţionând dezvoltarea în continuare a sistemelor de calcul care au arhitecturi bazate pe acest model. De aceea. interoperabilitate şi posibilitatea de a alege dintr-o gamă largă de instrumente de dezvoltare.788. Data UTM 2151.

în limbajele de marcare . ">" permit deosebirea acestora de textul propriu-zis. obiecte multimedia etc. formule. toate Coala Mod Coala Nr.inclusiv HTML marcajele sunt introduse în text. HTML a apărut ca o aplicaţie ISO standard (apartine standardului SGML . caracterele de control introduse sunt ascunse iar rezultatul editării este direct vizibil ("What You See Is What You Get"). tabele.de exemplu. formatul paginilor Web. în mod text.Standard Generalized Markup Language. unde vor fi interpretate cu ajutorul unor programe specifice. Data UTM 2151.(uzual) de forma <marcaj> … </marcaj>.fişiere de tip text. limbajele de marcare sunt foarte convenabile fiindcă comenzile lor pot fi interpretate simplu. În schimb.1 Limbajul HTML HTML (Hypertext Markup Language) este un limbaj creat în scopul de a descrie. hiperlegături. De fapt.01 ME 19 . caractere speciale) .</B>. liste. astfel încît acestea sunt exclusiv succesiuni de caractere (litere. pentru textele aldine (îngroşate).). începînd cu versiunea Microsoft Office '97.2. Word. mai trebuie menţionat faptul că ultimele versiuni ale editoarelor de documente oferă facilităţi de salvare în format HTML . HTML descrie caracteristicile de format ale elementelor incluse prin procedee de marcare. imagini. în limba engleză) . Descrierea mijloacelor instrumentale 2. cifre. document Semnăt . În informatică. procesoarele de texte uzuale folosesc adesea procedee de marcare pentru formatări.de început şi sfîrşit . care vor afişa paginile în forma dorită (cu texte formatate. Referitor la legătura dintre procesoarele de documente uzuale şi limbajul HTML.788. Avantajele aplicării limbajelor de marcare constau în portabilitate şi flexibilitate: fişierele create cu ajutorul lor pot fi transferate pe orice tip de sistem. fişierele create în acest limbaj vor fi interpretate de navigatoare. Fiecare element va fi introdus între două marcaje ("tags". în acest caz însă. Mai mult. Caracterele speciale de delimitare a marcajelor "<". De exemplu. marcajul de început este <B> iar de sfîrşit . Aşa cum se poate deduce din numele limbajului. Acestea pot fi asemănate intuitiv cu marcajele folosite în tipografie pentru a indica scrierea unui text cu un anumit tip de caractere. specializat pentru hipertext si adaptat la Web).

imagini. odată cu evoluţia protocolului HTTP şi a programelor de navigare. modificãm simultan toate paginile web în care acesta e inclus. primul program de navigare. a fost necesară introducerea unui standard oficial Internet pentru construirea paginilor (HTML 2.navigatoarele. atunci când codul CSS e continut într-un fisier extern. hiperlegături. moduri avansate de descriere a organizării paginilor (începînd cu HTML 3. Astfel. codul-sursă. marcajele HTML asigură controlul asupra modului de afişare a obiectelor corespunzătoare în cadrul programelor de vizualizare a documentelor HTML .0). dar după aparitia unor navigatoare noi. scăderea dimensiunii în octeti a paginii web. se ajunge la: 1. Folosind CSS. Proiectanţii CSS-ului au urmărit îndeosebi separarea între: • • conţinutul paginii ( textul destinat vizitatorului şi imaginile din paginã).788. 2. Limbajul HTML a evoluat în versiuni succesive. tabele.0 era compatibil cu Mosaic. Coala Mod Coala Nr.01 ME 20 . Data UTM 2151. HTML 1. o mai mare comoditate: modificând fisierul CSS extern. diverse obiecte. ci şi culori. Formatarea documentului HTML este posibilă datorită unui mecanism numit CSS (Cascading Style Sheets).0) şi extinderea sa cu noi facilităţi: formule matematice. lucru foarte important în condiţiile în care ele contin nu numai texte alb-negru. Practic. Procesele de standardizare şi de includere a comenzilor de marcare în fisierele HTML permit navigatoarelor să citească şi să formateze paginile Web. document Semnăt . un control mai fin asupra paginii web. Standardizarea oficială a limbajului HTML a fost realizată de consorţiul WWW şi dezvoltată de diverşi producători de soft (unii dintre aceştia urmăresc chiar promovarea navigatoarelor proprii prin introducerea unor particularităţi în formatele oficiale). 3.produsele incluse în această gamă dedicată biroticii (MS Office) oferă compatibilitate cu formatul HTML.

afişarea unor fonturi mai mari decât H1 etc. Pentru a determina în cazul unei aplicaţii modul de Coala Mod Coala Nr. O percepţie a lumii reale poate fi privită ca o serie de obiecte sau fenomene distincte sau interdependente. Datele se referă la numere. efectul hover. efecte mai sofisticate decât cele produse de codul HTML: suprapunerea unei imagini peste altă imagine. se pot utiliza editoare speciale. Datele sunt fapte culese din lumea reală. Dezavantaj: Pagina conţinând cod CSS poate arăta diferit în navigatoare diferite. greşite. a unui text peste alt text. cele mai multe dintre ele fiind. a introduce datele disponibile într-un anumit context conferindu-le în acest fel o anume semnificaţie. document Semnăt . Internet Explorer citeşte corect şi complet codul CSS. Un model de date corect alcătuit oferă posibilitatea transformării informaţiilor în date şi a acestora înapoi în informaţii fără a denatura sensul lor iniţial. Pentru ca datele să poată fi transformate în informaţie ele trebuie organizate astfel încât să poată fi prelucrate efectiv. de fapt. caracterizată prin afluxul fără precedent de informaţie de diferite tipuri şi pe diverse canale. diferite documente etc. fapte. nefiind altceva decât o înşiruire de litere şi cifre. mai ales. date care au fost filtrate şi ordonate după anumite criterii. ele pot primi diverse interpretări. Dorinţa oricărui utilizator este obţinerea de informaţie şi nu manipularea unor date seci. Mai mult decât atât. în care obiectele se introduc interactiv iar codul HTML se generează automat.4. se pune problema transformării informaţiei în date şi organizarea acestora într-o asemenea manieră încât în orice moment să poată fi extrase. Data UTM 2151. spre deosebire de Netscape Navigator. Datele în sine nu au nici un fel de semnificaţie. Ceea ce se înmagazinează într-o bază de date sunt datele care au o natură statică în sensul că ele rămân în aceeaşi stare până în momentul modificării lor de către administratorul bazei de date prin intermediul unui proces manual sau automat. Ele sunt preluate din măsurători şi observaţii şi constituie orice mesaj primit de un receptor sub o anumită formă.788. A obţine informaţie înseamnă. Paginile HTML se pot crea cu orice editor de texte de către utilizatorii care cunosc limbajul HTML sau. mai simplu. procesare şi. interpretare.2 Baze de date Societatea contemporană. necesită strategii şi instrumente din ce in ce mai complexe pentru stocare. de obicei. In acest context. impresia de relief. Informaţiile se referă la date organizate. datele favorabile realizării unui scop specific. cu promptitudine şi exactitate. deoarece nu toate browserele interpretează codul CSS.01 ME 21 . 2.

Informaţiile. Procesul de definire şi structurare a datelor în colecţii. crearea şi întreţinerea bazei de date precum şi accesul controlat la acesta.organizare a datelor. Coala Mod Coala Nr. document Semnăt . Coerenţa datelor. 2.2. În sistemele de baze de date definirea datelor se separă de programele aplicaţie. numele obiectelor bazei de date împreună cu proprietăţile lor şi asocierile dintre ele se numeşte schemă.1 Sisteme de gestiune a bazelor de date. gruparea lor precum şi stabilirea elementelor de legătură dintre componentele colecţiei şi între colecţii reprezintă organizarea datelor.01 ME 22 . definiţia internă a obiectului poate fi modificată fără a afecta utilizatorii acestuia dacă nu se modifică definiţia externă. astfel încât utilizatorii văd doar definiţia externă a unui obiect fără a cunoaşte modul în care e definit acesta şi cum funcţionează. MySQL Sistemul de gestiune a bazelor de date (SGBD) este un ansamblu de programe ce permite definirea. spre deosebire de date. Scopul unei baze de date este acela de a înmagazina datele în aşa fel încât să se poată obţine informaţia dorită în orice moment. gestiunea bazelor de date se bazează pe ideea separării structurii bazei de date de conţinutul acesteia. Din punct de vedere conceptual. Controlul redundanţei datelor. au un caracter dinamic în sensul că ele se modifică în funcţie de datele înmagazinate în baza de date. dar şi în sensul că ele pot fi procesate şi prezentate în diverse feluri. Data UTM 2151. Avantajele sistemelor de gestiune a bazelor de date sunt: 1. Un ansamblu de date organizat după anumite criterii reprezintă o colecţie de date. Dacă un articol de date e înmagazinat de mai multe ori trebuie să se garanteze că toate copiile acestuia vor fi actualizate dacă se reactualizează o valoare a sa (valoarea articolului e aceeaşi pentru toate copiile sale).788. Mai multe informaţii de la aceeaşi cantitate de date se pot obţine prin integrarea fişierelor ce conţin informaţii diferite despre aceleaşi date. 2. 3. O bază de date reprezintă o colecţie integrată şi structurată de date operaţionale înmagazinate pe un mediu de stocare. Pentru o aplicaţie particulară a unui model de date. În acest mod. O mulţime formală şi consistentă de reguli defineşte un model de date. O colecţie de obiecte care au identitate proprie şi sunt caracterizate de o condiţie de apartenenţă se numeşte mulţime. trebuie determinate acele caracteristici ale datelor care permit extragerea esenţei înţelesului lor.

Securitatea crescută se realizează prin atribuirea unor nume de utilizatori şi parole ce permit identificarea persoanelor autorizate să folosească baza de date şi impun modalitatea de utilizare a acestor date. Un sistem flexibil de previlegiere a parolelor.01 ME 23 . 10. double. Fiecare cheie poate fi compusă din maximum 15 câmpuri.MySQL a fost elaborat de către Michael Widenius. Data UTM 2151. regulile de acces. El reprezintă un SGBD destul de mic după mărime şi destul de rapid şi relaţional. Integritatea crescută a datelor Se referă la validitatea şi coerenţa datelor înmagazinate şi se exprimă prin constrângeri (reguli de coerenţă). float. 5. Constrângerile se pot aplica articolelor de date din cadrul unei singure înregistrări sau relaţiilor dintre înregistrări. document Semnăt . Administratorul bazei de date poate lua decizii ce duc la utilizarea optimă a resurselor. Optimizarea legăturilor şi cuplarea mai multor date la un singur proces de cerere. 7. Aplicarea standardelor se referă la formatul datelor. procedurile de reactualizare. Rezolvarea conflictelor Fiecare utilizator va avea propriile cerinţe ce pot intra în conflict cu ale altora. Susţinerea numerelor cu o lungime de la 1 pâna la 4 biţi (ints. fixed). convenţiile privind denumirile. Partajarea datelor Datele pot fi utilizate de către mai mulţi utilizatori în acelaşi timp.788. • • • • • stringuri cu o marime variabilă etc. Toate câmpurile au valoare predefinită. Creşterea accesibilităţii datelor şi a capacităţii de răspuns Sistemul de gestiune a bazelor de date . 9. De asemenea se pot face modificări sau adăugiri la baza de date existentă fără a fi necesară definirea repetată a tuturor cerinţelor referitoare la acestea. 6. Coala Mod Coala Nr. 8. Cele mai îmbucurătore facilităţi implementate în pachetul MySQL sunt : • Multithread – Posibilitatea de a efectua simultan mai multe comenzi SQL. Până la 16 chei în tabelă. Uşurinţa de lucru şi manevrare a tabelelor – este uşor de adăuga sau a elimina orice cheie şi câmp. Reducerea costurilor Prin realizarea integrării se alocă fonduri centralizate şi nu separat fiecărui departament.4. documentarea.

2. SQL le-a unificat pe toate acestea într-un singur limbaj. document Semnăt .2. Data UTM 2151.Toate cererile SQL folosesc optimizarea cererilor pentru a determina rapid remedierea datelor specificate.01 ME 24 . personal de management şi multe alte tipuri de utilizatori. Aceste trăsături uşurează obţinerea rezultatelor dorite. FROM şi WHERE. La început sistemele de management a bazei de date a utilizat un limbaj separat pentru fiecare categorie în parte. SQL este prezentat în limba engleză.2 Limbajul SQL Limbajul SQL a fost dezvoltat într-un prototip de sistem de management a bazelor de date relaţionale . SQL a devenit un limbaj standard industrial pentru bazele de date relaţionale. În 1979. delete ca părţi ale setului de comenzi. Foloseşte cuvintele select.3 Interogări şi comenzi asupra bazelor de date În SQL o interogare se formulează printr-o frază SELECT.788.Cea mai comună formă a unui set de înregistrări este un tabel. Cu alte cuvinte SQL nu îţi cere să specifici metoda de acces la date.Acest SGBD are ca baza limbajul SQL – Structured Querz Languages (limbaj de interogare). modificarea şi ştergerea obiectelor de tip bază de date.System R -de IBM la mijlocul anilor 1970. extragerea şi ştergerea rândurilor într-un tabel. dar nu cum să le obţii. Corporaţia Oracle introduce prima implementare a SQL în varianta comercială. controlul accesului la baza de date şi la obiectele de tip bază de date. Coala Mod Coala Nr. înserarea. Procesarea SQL asupra înregistrărilor nu se poate face decât asupra unei singure înregistrări la un moment dat . SQL poate fi folosit de un şir de utilizatori încluzând DBA. insert. crearea. programatori de aplicaţii. SQL pune la dispoziţie comenzi pentru o varietate de tascuri încluzând: date interogate. 2. garantarea consistenţei bazei de date.2. SQL este un limbaj neprocedural: specifică ce informaţii doreşti. Aceasta prezintă trei clauze principale: SELECT.

1 Tabelul 2. CREATE TABLE tabel_unu (camp_a TEXT. • FROM este cea care permite enumerarea relaţiilor din care vor fi extrase informaţiile aferente consultării. SELECT campul1 FROM tabel.• SELECT corespunde operatorului proiecţie din algebra relaţională. SELECT campul1. DROP DATABASE numele_bazei. în 'campul2' 'valoarea2' şi în 'campul3' 'valoarea3'. camp_b INT. Data DROP TABLE tabel_unu. camp_c TINYINT). SHOW COLUMNS. # o variantă simplificată care se poate aplica doar când introducem valori în toate câmpurile tabelului (nu se poate omite) # identică ca cea dinainte. valoarea3). USE numele_bazei_de_date SHOW TABLES. camp2. campul2 FROM tabel WHERE campul2 LIKE 'valoare2%'. INSERT INTO tabel (camp1. camp3) VALUES (valoarea1. valoarea3). valoarea2. valoarea2. Cele mai frecvent utilizate comenzi MySQL sunt prezentate tabelul 2. doar că în lipsa unei valori se pun ghilimele.1 Comenzile de bază MySQL SHOW DATABASES. campul2 FROM tabel WHERE campul2 LIKE '%valoare2'. SELECT * FROM tabel. relativ la atribute ale relaţiilor care apar în clauza FROM. valoarea2. în 'campul1' 'valoarea1'. SELECT * FROM tabel WHERE campul1 = 'valoare1'. un câmp numit 'camp_b' în care datele de pe coloana respectivă vor fi numere întregi şi în câmpul 'camp_c' vor fi introduse doar numere între -128 şi 127 # şterge tabelul numit 'tabel_unu' # şterge baza de date cu numele 'numele_bazei' # introduce în tabelul cu numele 'tabel'. document Semnăt . CREATE DATABASE numele_bazei. SELECT campul1. fiind utilizată pentru desemnarea listei de atribute (coloanele) din tabela-rezultat. ''). campul2 FROM tabel WHERE campul2 LIKE 'valoare2'.01 ME 25 . # Afişează tot (*) ce există în tabelul cu numele 'tabel' # afişează conţinutul câmpului 'campul1' din tabelul 'tabel' # afişează câmpurile a căror conţinut este la fel cu 'valoare1' # caută şi afişează toate înregistrările în care 'campul2' este asemănător cu 'valoare2' # caută şi afişează toate înregistrările în care 'campul2' începe cu 'valoare2' # caută şi afişează toate înregistrările în care 'campul2' se termină cu 'valoare2' Coala Mod Coala Nr. CREATE TABLE tabel_unu (camp_a TEXT). SELECT campul1. • prin WHERE se desemnează predicatul selectiv al algebrei relaţionale. INSERT INTO tabel VALUES (valoarea1. UTM 2151. INSERT INTO tabel VALUES (valoarea1. # afişează o listă cu numele bazelor de date existente # alegerea bazei de date cu care lucrăm în continuare # afişează tabelele existente în baza curentă # afişează informaţii despre coloanele unui tabel # crează o bază de date cu numele respectiv # crează tabelul 'tabel_unu' cu un câmp numit 'camp_a' al cărui tip este TEXT # crează tabelul 'tabel_unu' cu un câmp numit 'camp_a' al cărui tip este TEXT.788.

SELECT campul1. tabelul 'tabel' 2. SELECT count(*) FROM tabel.788. UPDATE tabel SET coloana1='noua valoare a # pentru actualizarea conţinutului unei înregistrări coloanei 1'. # şterge înregistrarea din tabel. SELECT * FROM tabel LIMIT 10. cu 'valoare3' SELECT campul1 FROM tabel ORDER BY # afişează conţinutul câmpului 'campul1' în campul1 ASC. document Semnăt . # afişează începând de la înregistrarea 10 încă 5 înregistrări din tabel DELETE FROM tabel WHERE conditii. SELECT * FROM tabel WHERE campul1=valoare1 AND campul2 LIKE '%valoare2%'. # afişează din tabel începând de la prima înregistrare încă 3. este 'variabila1' SELECT camp1 FROM tabel GROUP BY camp1 # afişează conţinutul câmpului 1 grupat după ORDER BY camp1 ASC. ordine crescătoare SELECT campul1. ALTER TABLE tabel CHANGE dat data TEXT. # adăugare la tabelul existent a unei coloane numită 'dat' de tip text. Deoarece utilizează uşurinţa de gestionare cu performanţele sofisticate. Data UTM 2151.3. campul2 FROM tabel # afişează conţinutul câmpului 1 în ordine ORDER BY campul1 ASC. 'valoarea3' SELECT campul1. aşa cum este Coala Mod Coala Nr. 'camp1' ascendent SELECT * FROM tabel LIMIT 0. Sintaxa este la fel ca la comanda SELECT. SELECT.3 Limbajul PHP 2. PHP a devenit rapid o unealtă principală pentru dezvoltatorii web. coloana2='noua valoare a coloanei 2' din tabel. campul2 FROM tabel WHERE campul2 LIKE '%valoare2%'. crescătoare şi câmpul 2 în ordine descrescătoare. # afişează toate câmpurile care conţin 'valoarea1' şi se aseamănă cu 'valoare2' SELECT campul1.3. # redenumeşte coloana numită 'dat' cu numele 'data' ALTER TABLE tabel CHANGE data data # modifică tipul coloanei 'data' din 'TEXT' în DATE. Spre deosebire de alte unelte populare pentru dezvoltatorii web. coloana de tip 'DATE' ALTER TABLE tabel ADD nr MEDIUMINT # adaugă o coloană numita 'nr' dupa 'coloana1' în UNSIGNED AFTER coloana1. # afişează câte înregistrări sunt în total în tabel SELECT count (*) FROM tabel WHERE # câte înregistrări sunt în tabel al căror 'camp1' campul1=variabila1. Continuarea tabelului 2.1Noţiuni generale despre limbajul PHP PHP este una din cele mai atractive tehnologii disponibile în prezent.5.01 ME 26 .1 # caută şi afişează toate înregistrările în care 'campul2' se aseamănă cu 'valoare2' oriunde în cadrul textului. Sintaxa este la fel ca la comanda WHERE conditii. (se şterge valoarea veche şi se scrie cea nouă) ALTER TABLE tabel ADD dat TEXT. campul2 FROM tabel # caută şi afişează toate câmpurile care nu încep WHERE campul2 NOT LIKE 'valoarea3%'. campul2 DESC. campul2 FROM tabel # caută şi afişează toate câmpurile care diferă de WHERE campul1 != valoarea3.

PHP este un limbaj de programare convenabil pentru programatorii începătorii chiar dacă aceştia nu au cunoştinţe necesare în domeniu.HTM web-serverul le va transmite browser-ului fără nici o prelucrare.1). break. Coala Mod Coala Nr. conţinut care poate fii modificat de la zi la zi sau chiar de la minut la minut.php3. Astfel lucrul limbajului este construit pe baza schemei de mai jos (fig 2. Astfel PHP-codul se rulează la server şi browser-ului se transmite rezultatul în formă de HTML-pagină. Limbajul PHP se introduce în cadrul documentului HTML printr-un tag special <? statement> unde statement este o instrucţiune a limbajului cum ar fi echo.788. if. Un lucru ce nu trebuie uitat a fi menţionat. Conţinutul dinamic este un element important în susţinerea traficului unui site web. Toate aceste atu-uri au făcut din PHP cel mai popular limbaj utilizat în crearea de pagini web dinamice. tipul lor putând fi integer. Site-urile web care sunt în permanenţă modificate pot atrage un volum imens de trafic.Pearl (considerat părintele PHP-ului). Variabilele se declară 'din zbor'.exe Browser Fig.1 Principiul de funcţionare al limbajului PHP Pâna a se transmite fişierul browser-ului. acestea sunt . PHP este un limbaj de scenarii de server îmbinat în HTML. care se interpretează şi se execută pe server.2. El poate fi instalat şi utilizat fără nici un cost adiţional şi orice dezvoltator îi poate modifica structura in funcţie de dorinţele personale. este ca PHP-ul este un „scripting language” opensource. Acesta la rîndul său prelucrează doar acele fişiere care au o extensie anumită (de obicei. Data UTM 2151. el este analizat de un preprocesor-interpretator.phtml sau . . iar numele de variabile trebuie precedat de $. care se poate deosebi radical de pagina care se păstrează pe server. Ca alte limbaje pentru web structurate pe scripturi.HTML/. double sau string.01 ME 27 . dar ele pot fi modificate) şi conţin (deşi nu este o cerinţă obligatorie) un cod pentru preprocesor. PHP oferă posibilitatea de a crea un conţinut web. PHP este un preprocesor HTML.phtml . while etc. document Semnăt .php Php. Vizitatorii nu se reîntorc la o pagina web dacă aceasta oferă aceeaşi informaţie ca şi ultima dată când pagina a fost accesată. Paginile obişnuite cu extensiile .

În PHP există de asemeni o multitudine de funcţii predefinite: • matematice • de conversie • de manipulare a şirurilor de caractere • de acces la resursele sistemului de operare şi de lucru cu fişiere • de manipulare a bazelor de date • privitoare la conexiunile Internet • generale După cum se observă. PHP are deasemeanea suport pentru a conversa cu alte servicii folosind protocoale cum ar fi LDAP. vînzare de produse. document Semnăt . cunoscuţi cu programarea. accesul la câmpurile formularului realizându-se prin intermediul unor variabile create automat. Aceasta însemnă că scenariul PHP se execută la server şi clientului se transmite rezultatul execuţiei. dar codurile JavaScript se transmit complet la maşina client executarea avînd loc numai la browser. PHP oferă un limbaj script puternic şi simplu. În afară de aceasta PHP are suport de lucru cu multe Sisteme de Gestiune de Bazde de Date (SGBD). HTTP. În acest limbaj nu există o tipizare strictă de date şi nu sunt necesare operaţii de alocare/eliberare a memoriei. Cu ajutorul limbajului PHP se poate de prelucrat datele din forme. 2.788. Un site ce merită atenţie este acel care susţine un nivel oarecare de interactivitate cu utilizatorii: căutare de informaţii. Programatorii. NNTP.2 Avantajele si neajunsurile limbajului PHP a) avantaje: Proiectanţii de web-aplicaţii cunosc că o web-pagină nu este o simplă îmbinare de text şi imagini. rapid vor deprinde scrierea programelor în PHP.3. de primit şi de transmis valorile cookies. conferinţe. ş.a. care se numesc limbaje de scenarii client. astfel asemănîndu-se cu ASP de la Microsoft şi Cold Fusion de la Allaire. PHP funcţionează ca o parte a web-serverului. IMAP. Sintaxa PHP se aseamănă cu sintaxa C şi Perl. etc.01 ME 28 . ceea ce face elaborarea web-aplicaţiilor cu utilizarea BD foarte simplă.PHP se numeşte limbajul scenariilor de server spre deosebire de JavaScript/JScript/VBScript. POP3. SNMP. Data UTM 2151. Coala Mod Coala Nr. de generat pagini dinamice. COM (pe Windows) şi multe altele.

Data UTM 2151. fie ca un interpretator simplu de scripturi sau ca un modul al web-serverului Apache sau IIS. Aceasta însemnă că se poate elabora aplicaţii lucrînd în mediul Windows. 3. Aşa numitele “aplicaţii multimedia” şi-au găsit rolul şi în aplicaţii web şi au fost găsite metode pentru prezentarea lor în cadrul browserului (standardul HTML nefiind gîndit pentru facilitarea prezentării de documente multimedia). destinate pentru funcţionarea lor sub Unix. document Semnăt . 2. Neajunsul de bază al PHP 3 este aceea că după ideologie PHP iniţial a fost orientat pentru scrierea unor scripturi mici. Şi în sfîrşit.4 Flash. b) neajunsuri 1. au fost create aplicaţii web care să prezinte informaţii şi în alte formate decît cel text. PHP poate funcţiona fie ca un CGI-proces extern. Deşi motorul a fost de cîteva ori rescris. de aceea există multă documentaţie şi liste întregi de adrese la care se poate adresa în caz de necesitate. scrise în C. ca de exemplu la ASP. Deşi în cazul scrierii unor programe mici. Nu există o bază de module gata. apar cheltuieli de ocupare a memoriei la încărcare şi la apelul CGI-programei. acest produs se elaborează cu eforturi comune. aplicaţiile multimedia au evoluat la ceea ce se numeşte azi „RIA” (rich internet aplication) sau aplicaţii multimedia interactive (permit controlul utilizatorului). În afară de aceasta.788. ca de exemplu CPAN la Perl. Coala Mod Coala Nr. PHP 3 nu este util pentru utilizarea unor proiecte complexe. Adăugător la faptul că PHP se răspîndeşte fără plată (deşi MySQL cere cumpărarea licenţei în cazul utilizării ei în scopuri comerciale) tandemul PHP-MySQL are caracteristica crossplatformei. Nu există susţinerea sesiunilor (session). 2. ce defapt este caracteristic proiectelor PHP.01 ME 29 . Odată cu dezvoltarea puterii de procesare a calculatoarelor personale şi cu pătrunderea mai pronunţată a Internetului rapid către tot mai mulţi utilizatori.Spre deosebire de Perl-programe PHP-codul vizual se citeşte şi se înţelege uşor. PHP este un limbaj interpretativ. rezultînd de aici şi fatul că nu poate concura la viteză cu C-ul compilativ. Aplicaţii multimedia interactive Din anii ’90 cînd Web-ul a început să fie utilizat în scopuri comerciale. cînd tot proiectul este conţinut doar din cîteva pagini cu cod.

astfel performanţa aplcaţiei Web va creşte (în locul procesării datelor mai multor utilizatori. care însă azi nu mai este populară (deşi se mai foloseşte pe scară redusă).Din punctul de vedere al dezvoltatorului de aplicaţii web. care dezvoltă platforma Flash. -îmbunătăţirea aplicaţiilor Web prin adăugarea de opţiuni noi care nu existau înainte . Caracteristice aplicaţiilor RIA: -pemit comunicarea cu unu sau mai multe servere în scopul imbunătăţirii interacţiunii cu utilizatorul. fiind orientat către designeri mai mult decât către dezvoltatori.788. -sunt securizate în sensul de interzicere a acţiunilor neplăcute cu sistemul de operare. pentru web şi nu numai. acesta este segmentul interesant din cadrul mai generalei direcţii a aplicaţiilor multimedia. în limbaje şi medii de dezvoltare specializate pentru media. document Semnăt . întrucât acestea implică prezentarea unor date dinamice. alt jucător în această piaţă fiind Microsoft. o tehnologie Sun.4. 2. în funcţie de nevoile utilizatorului. cu Silverlight. pe acelaşi calculator. liderul în dezvoltarea platformelor pentru rich-media este Adobe.de exemplu comunicarea în timp real. Adobe susţinînd că majoritatea staţiilor conectate la internet au instalat un client Flash. -pentru a evita procesarea datelor pe server. Flash a început ca o serie de unelte pentru dezvoltarea animaţiilor. Aplicţiile care intră în această categorie se dezvoltă. O platformă utilizată pentru aplicaţii web interactive au fost şi applet-urile Java. fiecare calculator va procesa datele local şi va trimite serverului doar rezultatele). Flash este acum cea mai populară platformă pentru aplicaţii web rich media. -poate fi utilizat offline numai dacă resursele adiţionale au fost descărcate. atunci cînd este posibil acest lucru va fi realizat de către client şi. De ce este necesară o altă modalitate de creare a aplicaţiilor Flash? Coala Mod Coala Nr. -pot fi indexate în motoarele de căutare. Data UTM 2151. dar care rulează separat (ca şi proces) faţă de acesta. Menţionarea acestor proprietăţi ale RIA este importantă tocmai pentru a înţelege lucrurile pozitive aduse de această tehnologie în spaţiul Web. Momentan.01 ME 30 . şi apoi se execută de către un interpretor (sau client) care se intalează ca plug-in în browser-ul client-ului.O aplicaţie Flex este compilată într-un format de fişier SWF care este redat în browser-ul web prin intermediul Flash Player-ului. în general.1 Tehnologia FLEX Flex reprezintă o altă modalitate de creare a aplicaţiilor Flash.

Dacă sunt necesare date (dintr-o bază de date de exemplu) aplicaţia Flex realizează o cerere pentru datele respective. . După cum se menţionează mai sus. Astfel. În momentul în care dezvoltăm aplicaţii şi nu animaţii şi suntem interesaţi de productivitate iar unicitatea designului este pe planul doi. limbajul MXML se utilizează pentru a stoca şi specifica rapid Coala Mod Coala Nr. atunci vom apela la tehnologia FLEX. Avantajul tehnologiei Flex constă şi în posibilitatea de a rula apliacţiile atât într-un navigator Web cât şi ca aplicaţii desktop 2. instalarea acestuia este sugerată de către navigator. această unealtă este destinată în primul rând designerilor şi în al doilea rând programatorilor.În mod tradiţional aplicaţiile Flash erau create prin utilizarea programului Flash Professional. Existenţa player-ului Flash pentru diverse arhitecturi computaţionale. document Semnăt . precum şi pentru diverse sisteme de operare constituie un avantaj. widget-uri care sunt integrate în cadrul aplicaţiilor web „clasice” şi altele. Tehnologiile RIA permit crearea de aplicaţii Web complexe. Scopul este acela de a estompa diferenţele referitoare la interfeţe şi timp de răspuns faţă de aplicaţiile desktop clasice. Aplicaţia este un client care realizează mai mult decât „doar” să afişeze datele venite de la server.2 Limbajele MXML şi Action Script MXML este un limbaj declarativ bazat pe XML (Extensible Markup Language). De obicei. Data UTM 2151. În cazul în care aplicaţia Flash este accesată de un calculator ce nu are player-ul Flash.01 ME 31 . utilizând Flex şi Flash Player este posibil să creăm aproape orice aplicaţie care are sens pe web de la jocuri la aplicaţii. sau un format propriu) şi clientul ştie cum să reprezinte aceste date în mod vizual. acest format de fişier SWF reţine doar partea de business logic al aplicaţiei pe partea clientului. paşii ce trebuie urmaţi fiind foarte simpli.4. Server-ul transmite doar datele (acestea pot fi în format XML. Aplicaţia poate modifica starea fără să reincarce pagina sau fără să reîncarce SWF-ul în browser. Este vorba aici despre o arhitectură de aplicaţii orientată către servicii (SOA): aplicaţia Flex reprezintă clientul – un client care poate consuma servicii de la server.788. deoarece o aplicaţie Flash poată fi rulată pe aproape orice dispozitiv. În cadrul unei aplicaţii Flex. Cum acţionează aplicaţiile FLEX? Server-ul transmite aplicaţia Flex în versiunea compilată (formatul de fişier SWF) care rulează în interiorul browser-ului utilizând Flash Player. FLEX este un framework open source care ajută dezvoltatorii să creeze rapid RIA (Rich Internet Applications) care rulează în Flash Player. JSON. AMF3.

este mult mai facil să construim unelte grafice pentru limbajele declarative decât pentru limbajele imperative. De exemplu.swf ce rulează în platforma Adobe Flash Player. de ce mai există atunci MXML? De obicei este mult mai uşor să urmărim sau să înţelegem o interfaţă cu utilizatorul descrisă prin utilizarea unui limbaj XML decât una imperativă. În Flex.01 ME 32 . Pentru aceasta avem nevoie de ActionScript. De asemenea. Data UTM 2151. Totuşi. Şi acest lucru se traduce prin mai puţine linii de cod care trebuie scrise pentru a defini o interfaţă. Aplicaţiile Flex rulează în Flash Player iar Flash Player înţelege doar ActionScript. în spatele fiecărei componente MXML există o clasă implementată ActionScript (de fapt există o excepţie la această regulă pentru ca sunt câteva tag-uri MXML care nu au o clasă ActionScript corespondentă.788. ca de exemplu Script şi Model). să se Coala Mod Coala Nr. raţionamentul invers nu este adevărat. se pot adăuga instrucţiuni la butoane prin care să fie pornită şi oprită o animaţie. Astfel. Este posibil să se adauge noi metode la clasa în sine. Deşi putem utiliza MXML pentru a descrie aplicaţia nu putem utiliza MXML pentru a pune în aplicare logica aplicaţiei. O aplicaţie Flex este destul de asemănătoare cu o aplicaţie pentru desktop. În orice aplicaţie Flex se conţine cel puţin un fişier MXML care reprezintă aplicaţia principală. Aceasta înseamnă că putem utiliza un singur fişier MXML şi putem afişa în cadrul acestei pagini diferitele stări ale aplicaţiei. Limbajul ActionScript este un limbaj folosit în principal pentru dezvoltarea de funcţionalităţi în cadrul animaţiilor Adobe Flash prin generarea fişierelor cu extensia . Codul este transformat de compilatorul ActionScript într-un limbaj intermediar portabil bytecode (un fişier SWF) ale cărui instrucţiuni pot fi înţelese de Flash Player. Dinamic se referă la faptul că un obiect poate fi modificat în timpul rulării prin adăugarea sau eliminarea metodelor sau membrilor. Cu ActionScript se scriu instructiuni prin care pot fi controlate elementele din prezentarea Flash. Acest lucru înseamnă că orice cod MXML pe care îl scriem în aplicaţie trebuie transformat de compilatorul MXML într-un cod ActionScript. Apare următoarea întrebare: Dacă putem folosi ActionScript 3 pentru a realiza aceleaşi construcţii şi gestionări de interfeţe pe care le putem realiza cu MXML.structura/înfăţişarea aplicaţiei. Limbajul MXML conţine componente care manipulează cu date (componente care pot aduce/transmite date de la/către un server). document Semnăt . AS3 este un limbaj dinamic de scripting. orice aplicaţie construită utilizînd limbajul MXML poate fi realizată de asemenea şi cu ActionScript 3.

pentru a satisface necesităţile diverşilor utilizatori. În AS3. sunt posibile şi câteva modalităţi diferite de studiu al limbajului.indiferent dacă este vorba despre o variabilă de tip întreg sau de un MovieClip. cunoaşterea acestui limbaj constituind un avantaj.788. Dacă scopul e clar. Compilarea aplicaţiilor Flash poate fi făcută cel puţin in trei moduri. document Semnăt . Nu e neapărat nevoie să se înţeleagă fiecare element ActionScript pentru a programa/scrie în limbaj.schimbe culoarea şi dimensiunile unui obiect. folosind cod ActionScript. ActionScript include o bibliotecă mare de clase integrate care permit să se creeze obiecte pentru a realiza diverse acţiuni utile.01 ME 33 . printre care şi cu ajutorul Flex-Builderului. ActionScript are propriile reguli de sintaxă şi cuvinte cheie rezervate şi permite să se utilizeze variabile pentru a stoca şi prelua informaţii. sau se pot crea obiecte. Odată ce sunt mai multe versiuni ale limbajului şi modalităţi de a include codul în fişierul FLA. programarea este complet orientată-obiect: orice entitate din acest limbaj este un obiect . Data UTM 2151. Coala Mod Coala Nr. Modul de programare este foarte asemănător cu cel în care se realizează aplicaţiile Java. codul ActionScript poate fi scris folosind acţiuni simple. Flash include mai multe versiuni ale limbajului ActionScript. text şi animaţii în prezentarea Flash.

Planul de acţiune se numeşte metodologie de dezvoltare.planificarea tuturor activităţilor necesare în realizare din punct de vedere al timpului . revizuirea planurilor dacă anumite limite de toleranţă au fost depăşite.monitorizarea continuă. Proiectarea sistemului 3.788. un set de metode şi instrumente de lucru. Principiile generale sunt : . Acesta este motivul pentru care planul de actiune este numit model: el poate fi privit ca un şablon al dezvoltarii de programe. precum şi în costurile implicate.01 ME 34 . Referitor la principiile calităţii se poate spune că noţiunea de calitate nu înseamnă numai testarea acesteia pentru un produs software. un plan de actiune.stabilirea şi eliminarea cauzelor care produc anumite simptome. Data UTM 2151. ce poate fi aplicat uneii serii mai largi de proiectare.prevenirea defectelor. fie el cît de simplu avem nevoie de:    înţelegerea clară a ceea ce se cere. document Semnăt . ci şi construirea şi asigurarea calităţii în procesele software. În ceea ce priveşte principiile de management putem aminti: . . resurselor şi restricţiilor de calitate. de management şi de inginerie.3. rod al unor eforturi conjugate de analiza. Principiile dezvoltării software sunt legate de calitate.1 Metodologii de dezvoltare Atunci cînd ne decidem să realizăm un program. în termenele de realizare. Dezvoltarea produselor software este un proces complex. dezvoltare si testare. . . Coala Mod Coala Nr. Aceste principii se reflectă în calitatea produsului software. bugetului.asigurarea faptului că defectele au fost detectate şi corectate cât mai mult posibil. Luînd în considerare tipul paşilor ce se efectuează se crează un model de lucru. îmbunătăţirea progresivă a planurilor.audit şi conformitate cu standarde şi proceduri. Dezvoltarea unui anumit program constă într-un set de paşi ce se fac pentru a-l realiza. .

Pe parcursul dezvoltării modulelor acestea sunt testate separat. sistemele informaţionale ce au la baza sa programe mari nu pot fi concepute şi implementate ca o singură bucată. Ca principii de inginerie se pot preciza: . pot aparea erori.1 Etapele de dezvoltare a produsului soft În timpul dezvoltării programelor sa constatat că există anumite tipuri de activităţi care trebuie făcute la un moment dat:  Analiza cerinţelor: Se stabileşte se cere că să efectueze sistemul. persoane implicate în realizare. Astfel.01 ME 35 . Scrierea codului: Proiectul detaliat este transpus într-un limbaj de programare. acesta se realizează modular. De obicei. trebuie parcurse toate etapele necesare dintr-un proiect de dezvoltare software. Rezultatul este sistemul complet. Din acest punct de vedere programul sistemului va fi construit din module sau componente. în cele mai mici detalii. 3. .definirea şi selectarea soluţiei printr-o clară definire a componentelor. Proiectarea arhitecturală împarte sistemul într-un numar de module mai mici şi mai simple. la nivel inalt.definirea clară a structurii. Integrarea componentelor: Modulele programului sunt combinate în produsul final.descrierea clară a problemei .utilizatorul nu poate preciza complet cerinţele sale sau nu poate să găsească legătura dintre ele.788.1.controlul riguros al relaţiilor dintre componente. document Semnăt . .. Data UTM 2151. Scopul este înregistrarea cerinţelor într-o manieră cît mai clară şi mai fidelă. De aceia este recomandat ca Coala Mod Coala Nr.  Proiectarea arhitecturală: Din motive de comlexitate. pe structura rezultată la proiectarea arhitecturală.care întâmpină două tipuri de dificultăţi majore: . atunci cînd trebuie încapsulate într-un întreg. rolurilor. responsabilităţilor şi liniilor de comunicaţie între grupuri sau indivizi. Claritatea se referă la lipsa ambiguităţii iar fidelitatea la înregistrarea cît mai exactă. intelegerea problemei si analiza aducand beneficii majore in timp.cerinţele sunt exprimate de obicei în termenii problemei reale (cerinţe reale) şi trebuie translatate în termenii uzuali contextului software.    Proiectarea detaliată: Se realizează proiectarea fiecărui modul al aplicaţiei. . ce pot fi abordate individual.

788. o metodologie reprezintă modul de desfăşurare al unui proces. Se construieşte.modulele să fie adăugate la un moment dat de timp. testată şi integrată în sistemul existent. Alegerea unei metodologii de dezvoltare trebuie să ţină seama de natura fiecărui proiect:   Bugetul Mărimea echipei Tehnologia utilizată Instrumentele şi metodele Termenele limită    În cazul sistemului nostru se va folosi metodologia de dezvoltare incrementală. Această abordare evită efectul “big-bang” în care nimic nu se întâmplă mult timp şi când brusc. document Semnăt . implementarea şi testarea.   Validarea: În procesul validarii se asigură că sistemul îndepleneşte cerinţele utilizatorului. însă în ambele cazuri fără o metodologie adecvată. într-o zi. el propune crearea unui nucleu al aplicaţiei şi integrarea a cîte o componentă la un moment dat. în care produsul este proiectat. Procesul continuă astfel până când întregul sistem este complet şi testat. se poate determina mai uşor unde anume apare o problemă în sistem. 3. altă componentă este proiectată. Acesta metodă poartă denumirea de model incremental.01 ME 36 . După un studiu amănunţit a metodologiilor de dezvoltare a sitemelor informaţionale existente. sistemul este complet. urmată imediat de testarea sistemului obţinut. un subsistem care manifestă funcţionalităţile de mai târziu. Dacă ea lucrează corect. Coala Mod Coala Nr. Data UTM 2151. dezvoltarea produsului este haotică. s-a ajuns la concluzia că. altele folosesc metodologii comerciale. Astfel. La început este construită şi implementată numai o parte (un subsistem). Verificare: Aici ne asigurăm că programul este stabil şi că funcţionează corect din punct de vedere a dezvoltatorilor. proiectare. Se poate constata uşor că aceste activităţii sunt în strînsă legătură cu cele patru faze ale ingineriei programării: analiză. unele companii folosesc propriile metodologii. 2 Selectarea metodologiei convenabile După cum sa menţionat mai sus. iniţial parţial. dezvoltat şi testat în timp ce este construit. Acest mod de abordare se numeşte dezvoltare incrementală şi se foloseşte în prototipizare.

Fiecare increment creşte funcţionalitatea şi măreşte numărul de caracteristici ale softului.Priorităţile cele mai ridicate sunt livrate primele. pentru un scop bine precizat. 3.O mare parte a codului poate fi inlăturată.Avantaje ale modelului incremental: .Se efectuează o livrare o dată la câteva săptămâni. cercetarea posibilităţilor şi alternativelor. numită increment.-Incrementele cu prioritate mai mare tind să aibă parte de cea mai multă testare. . Data UTM 2151. document Semnăt . .Riscul scazut de eşec total al proiectului.3 Modelul conceptual Un model este o abstractizare a unui sistem. .Se poate să fie necesară crearea de soluţii temporare pentru a putea livra la timp un increment.01 ME 37 .a. Dezavantaje ale modelului incremental: .Planificarea devine dificilă. . La etapa de planificare trebuie să prevedem cerinţele de bază. astfel încît incrementul 1 (produsul de bază) înglobează funcţionalităţile esenţiale şi pe baza acestuia se dezvoltă planul pentru incrementul 2 ş.Modelul incremental aplică repetat modelul cascadă. . Pentru a alege şi a aplica soluţia cea mai bună în procesul de lucru trebuie să impunem careva cerinţe sistemului: 1) eficienţa 2) generalitatea 3) flexibilitatea 4) extensibilitatea 5) fiabilitatea 6) disponibilitatea 7) transparenţa 8) vizibilitatea Coala Mod Coala Nr. Acest model este recomandat pentru proiectele care evoluează în timp. Fiecare repetiţie produce o versiune livrabilă a softului.788. într-un anumit context.

diagrame de stări şi diagrame de activităţi. etc. Fiabilitatea şi disponibilitatea exprimă proprietatea unui sistem de a evita goluri în funcţionare. manageri. diagrame de stare şi diagrame de activitate. b) Vederea design-ului: cuprinde clasele. flexibilitatea.) şi la ce moment. depinde de cine vede sistemul (utilizatori. analişti şi testori. dezvoltatori. Analizare şi modelarea unui sistem de gestiune a cheltuielilor personale se poate descrie prin: a) Vederea modurilor de folosire: cuprinde modurile de folosire ce descriu comportarea sistemului văzut de utilizator. colaborarile ce formează vocabularul problemei şi a soluţiei. integratori. document Semnăt . informaţii de care în mod teoretic avem nevoie . Coala Mod Coala Nr. aspectele dinamice sunt reprezentate în diagramele de interacţiune. c) Vederea proceselor: reflectă procesele şi firele de execuţie ce formează mecanismul de concurenţă şi sincronizare a sistemului. Data UTM 2151. 3. prin aceasta se controleaza dezvoltarea sistemului de-a lungul ciclului lui de viaţă.01 ME 38 . extensibilitatea măsoară gradul în care un sistem poate fi folositor şi adaptabil unui context specific (impus programelor utilizatorului). Generalitatea. Această se orientează pentru cerinţele funcţionale ale sistemului. capacitatea de a permite utilizatorilor săi să obţină anumite informaţii despre modul cum el lucrează. precum şi gradul în care se pot include în sistem noi componente fără eforturi de proiectare şi programare suplimentare. Transparenţa şi vizibilitatea exprimă pe de o parte proprietatea unui sistem de a face invizibil utilizatorului ceea ce se află sub interfaţa de utilizare care i se oferă şi. cu accent pe clasele active. Aspectele statice ale acestei vederi sunt cuprinse în diagramele modurilor de folosire. Aspectul static fiind reprezentat de diagame de clase aspectele dinamice în diagrame de interacţiune.Eficienţa măsoară proprietatea unui sistem de a folosi în mod optim resursele de care dispune. pe de altă parte. testeri. Arhitectura este cel mai important produs folosit pentru gestionarea aceste vederi multiple.788. Se folosesc aceleaşi diagrame ca cele folosite pentru vederea design-ului.4 Arhitectura sistemului Un sistem poate fi văzut dintr-o multitudine de perspective.

UML este un limbaj de vizualizare. de stare şi de activitate. Coala Mod Coala Nr. Se ocupă cu distribuţia. specificare. Ca limbaj de specificare ne permite specificarea tuturor soluţiilor importante care se referă la analiza. construire şi documentare a componentelor sistemelor.d) Vederea implementării: include componentele şi fişierele ce sunt folosite pentru asamblarea sistemului fizic. diagrame de stare şi diagrame de activitate.5 Crearea diagramelor UML UML (Unified Modeling Language) furnizează imagini standardizate ale aplicaţiilor soft. modificat şi utilizat de un proces. adică rezultatul obţinut în cadrul unei etape să fie folosit ca informaţie pentru următoarea etapă.01 ME 39 . b) relaţii – legaturi între entităţi.diagrama de interacţiune. Data produselor soft adică UTM 2151. Dicţionarul limbajului include trei tipuri de construcţii de bază: a) entităţi – abstracţii ce sunt elemente de bază a modelului. Artefactul este un element de informaţie care este produs. aspectul dinamic: diagrame de interacţiune. Procesele în analizarea şi modelarea unui sistem de gestiune a cheltuielilor personale vor fi etapele de elaborare a proiectului. şi apoi se folosesc instrumente pentru a converti aceste diagrame în cod. Aspectul static: diagrama de instalare. livrarea şi instalarea părţilor ce alcatuiesc sistemul fizic. Astfel. el este un limbaj şi un proces cu notaţia neutră. proiectarea şi realizarea în procesul elaborării şi dezvoltării construirea modelelor precise şi complete. document Semnăt . între fiecare din aceste etape vom stabili legături prin intermediul artefactelor. e) Vederea instalarii (deployment): include nodurile ce formează topologia hardware a sistemului. ceia ce înseamnă că se poate utiliza la design-ul întregului sistem orientat pe obiecte în orice limbaj de programare şi orice proces de dezvoltare. Ca limbaj de vizualizare înseamnă că mai întâi se face design-ul sistemului desenînd diagrame. adica asigură reprezentarea grafică a modelului prin una sau mai multe scheme. cel dinamic .788. Aspectul static: diagrama de componente. Ca limbaj de construire: cu toate ca UML nu este limbaj de programare vizuală (UML in primul rând este un mijloc de descriere) dar ne permite ca toate modelele elaborate în baza lui să fie traduse automat în diverse limbaje de programare. pe care se execută sistemul. 3.

relaţiile dintre acestea cât şi relaţiile cu actorii. Diagrama USE-CASE (fig. document Semnăt . Aşadar. funcţii. Ea conţine “Actori” care execută anumite roluri. pentru crearea modelului cazurilor de utilizare vor trebui identificaţi actorii. Modelarea cazurilor de utilizare a fost folosită pentru prima dată de Ivar Jacobson în metodele de modelare OOSE şi Objectory.1 Diagrama USE-CASE a sistemului La această etapă are loc cercetarea unui întreg examinînd fiecare element în parte. şi relaţii dintre acestea. Data UTM 2151.3. 3. Scopul urmărit în acest tip de modelare este descrierea funcţionalităţii sistemului aşa cum aceasta este văzută din exterior de un număr de actori şi a conexiunilor acestora la cazurile de utilizare furnizate de sistem. Toate aceste faze presupun discuţii cu clienţii şi eventual cu persoanele care reprezintă actorii. Fig.5. Scopul este de a arăta cum va fi realizat sistemul în faza proiectării.788.c) diagrame – grupează interesele entităţilor şi relaţiilor.1 Diagrama cazurilor de utilizare Un caz de utilizare este o tehnica de modelare folosită pentru a descrie ce va face un sistem nou sau ce face deja un sistem existent.01 ME 40 .1) descrie sistemul ca un întreg. şi precedente. cazurile de utilizare.3. funcţiile propriu-zise ce pot fi obţinute . Coala Mod Coala Nr.

design arhitectural. Scopul principal al construirii acestui tip de diagramă este: -Să decidă şi să descrie cerinţele funcţionale ale sistemului. Acest tip de diagrame scot în evidenţă controlul execuţiei de la o activitate la alta şi sunt destinate reprezentării comportamentului intern al metodelor sau a cazurilor de utilizare. În această fază de modelare sistemul este văzut ca o “cutie neagră”. cum vor fi implementate. -Să constituie o bază pentru realizarea testelor de verificare dacă funcţionalitatea finală a sistemului concordă cu cerinţele iniţiale ale acestuia. Ea e folosită pentru a modela dinamica proceselor sau a operaţiilor. cerinţe care au fost deduse după o discuţie între client şi/sau utilizatorii sistemului şi viitorii dezvoltatori ai acestuia. Aceasta asigură faptul că sistemul va produce ceea ce s-a dorit. prin urmare modelul este folosit pentru comunicarea cerinţelor tuturor persoanelor implicate în construirea sistemului şi să constituie un punct de plecare în realizarea muncii viitoare (alte modele. -Să ofere o descriere clară şi consistentă a ce va trebui să facă sistemul. document Semnăt .b) arată fluxul activităţilor prin sistem.2 a.01 ME 41 . sau cum lucrează intern.788.5. Coala Mod Coala Nr.2 Diagrama de Activităţi Diagrama de Activităţi (fig 3. care trebuie să poată realiza anumite sarcini. implementarea propriu-zisă). Data UTM 2151. Cazurile de utilizare sunt construite pe baza nevoilor pe care le au actorii (utilizatorii). -Să permită o transformare uşoară a cerinţelor funcţionale în viitoare clase şi operaţii. ei ajută la delimitarea sistemului şi oferă o imagine clară a ceea ce se asteaptă a se întîmpla în sistem.Atât timp ce actorii reprezintă utilizatorii. 3. fără a ne interesa cum le face.

01 ME 42 .3.788.2 (b) Diagrama de activitati penru logare Coala Mod Coala Nr.Fig.2 (a) Diagrama de activitati penru inregistrare Fig. Data UTM 2151. document Semnăt .3.

obţinut la etapa proiectării. un artefact ce va fi utilizat pentru etapa următoare.3 Diagrama de componente Diagrama componentelor arată componentele sistemului şi dependenţele dintre ele. El va fi utilizat ulterior în procesul realizării sistemului. Sistemul este dezvoltat mai intâi în mici programe.3). Instanţa unei componente este o unitatea de implementare în execuţie şi poate fi utilizată pentru reprezentarea unităţilor de implementare care au o identitate în momentul execuţiei. clase şi legăturile dintre ele.3. 3. O componenta este un modul soft (cod sursa. vom elabora la această etapă modelul static al proiectului. Obţinînd la etapa precedentă artefactele cu privire la obiectele sistemului şi funcţionalităţile lor cît şi interacţiunea dintre ele. Diagrama componentelor prezintă etapa cea mai înaltă a structurii înpachetată a codului. adică transformarea lui în cod sursă la etapa realizării. Rezultatul acestei etape se concretizează în redactarea unui document ce cuprinde specificaţiile de proiectare.Etapa de proiectare constă în crearea unei arhitecturi pentru modelarea unui sistem de gestiune a cheltuielilor personale. realocabilă. precum şi în definirea arhitecturii de ansamblu. adică prin intermediul componentelor (fig. Aceasta fază ajută în specificarea cerintelor de sistem şi hardware. care vor fi apoi integrate în faza urmatoare. pentru a ne asigura că respectă specificaţiile. Etapa de realizare se orientează spre realizarea codului-sursă al programului pe baza modelului static al sistemului. numite “unităţi”. Un tip de componentă reprezintă o parte distinctă. Tot aici sunt studiate cerinţele de la prima etapă şi este elaborat design-ul proiectului. a implementării unui sistem. Data UTM 2151. document Semnăt . Coala Mod Coala Nr.01 ME 43 .788. cod binar etc) cu o interfaţă bine definită.5. Modelul static va conţine informaţia despre pachetele de clasă. În continuare vom analiza sistemul sub aspect fizic. Fiecare unitate este dezvoltată şi testată.

Coala Mod Coala Nr.4 ). 3.Fig.5. document Semnăt .788.01 ME 44 .3.3 Diagrama de desfăşurare De la etapa de realizare obţinem artefactele privind componentele soft ale aplicaţiei. Această etapă a modelării prevede elaborarea Diagramei de Desfăşurare (fig. Data UTM 2151.3 Diagrama de componente a sistemului Diagrama componentelor arată structura sistemului din punct de vedere software. adică pe nişte dispozitive fizice respective.3. Se observă că pentru a funcţiona acest sistem are nevoie de anumite componente care la rîndul lor fac parte din acesta. le vom implementa pe acestea în structurile fizice reale.

Legatura dintre utilizator şi BD se face prin intermediul echipamentelor periferice ale PC-ului.1 Descrierea funcţionării sistemului Principiul de lucru al Modulului Client-Server este de a colecta informaţii despre utilizatorii Sistemului Multimedia şi a le transmite în baza de date de unde ulterior vor fi extrase şi afişate în Coala Mod Coala Nr.01 ME 45 . sunt prezentate principalele dispozitive necesare pentru funcţionarea sistemului. 4. Descrierea sistemului realizat 4. document Semnăt .Fig. Data UTM 2151.4 Diagrama de desfăşurare a sistemului Diagrama de desfasurare ne arată amplasarea fizică a diferitor componente.3.788.

Utilizarea tehnologiilor WWW pentru asigurarea accesului la careva resurse informaţionale subînţelege existenţa următoarelor componente: Mod Coala Nr. controlează accesibilitatea spre date. transmite interpelările către server şi primeşte răspunsurile de la el. Acest model este o combinaţie a trei tehnologii: sistemul relaţional de management al bazelor de date (DBMS). reţeaua şi interfaţa utilizatorului (fig. Data MySQL Coala BD UTM 2151.SWF SERVER Fig. protecţia şi copierea rezervei. dar independent în execuţia funcţiilor sale.788.1). • Reţeaua şi pachetul de programe de comunicare ce menţin iteracţiunea între client şi server prin protocoalele de reţea. 1 Principiul de lucru al Modulului Client-Server Fiecare element contribuie la funcţionarea platformei avînd rolul său. • Clientul. administrează accesul. 4.01 ME 46 . UTILIZATO R INTERFAŢĂ (browser) XML files CLIENT PH P files . document Semnăt . care asigură integritatea datelor în corespundere bussines-regulilor şi îndeplineşte interpelările clientului.browserele utilizatorilor. • Serverul bazelor de date. şi îndeplineşte logica aplicaţiei. se prezintă ca interfaţă cu utilizatorul.4.

2. Data UTM 2151. 3. În caz general ea se prezintă astfel: 1. • primirea documentului cerut. Adresa unui document se indică printr-un şir special. de care trebuie să se utilizeze un user al reţelei pentru asigurarea interacţiunii cu un WWW-server. • reacţionarea la acţiunile utilizatorului . la comanda utilizatorului sau automat se conectează cu serverul reclamat şi transmite lui interpelarea pentru a primi documentul cerut.accesul la un nou document.788. denumirea protocolului conform căruia funcţionează serverul (http). Pentru protocolul HTTP. ca răspuns la interpelările WWWclientului.01 ME 47 . Browser – programă specială de vizionare. 3. care se utilizează pentru intercţiunea www-clientului cu www-serverul. Să analizăm puţin mai detaliat schema din figura 3. Utilizatorul reţelei lansează programul de vizionare. Celelalte procese ale sistemului de operare gestionează funcţii neobligător legate de susţinerea web-tehnologiei. 2. URL se conţine din următoarele: 1. calea documentului pe server. • afişarea documentului primit. ce sunt plasate pe el. 4. primind documentul. numit URL. document Semnăt . 2. WWW-server – o parte a reţelei globale şi corporative care asigură prezentarea documentelor hypertext. Procesele unui astfel de sistem sunt responsabile de menţinerea funcţiilor specifice pentru Web-server. portul TCP. îl afişează utilizatorului şi aşteaptă reacţia lui. 3. Browser-ul.1. Astfel după lansare browser-ul. numit browser.1. 4. funcţiile căruia sunt: • conectarea cu serverul. Web-serverul caută documentul necesar şi întoarce rezultatul browser-ului. Web-serverul prezintă prin sine un computer cu un sistem de operare multitascking. IP-reţea cu susţinerea setului de servicii de bază de transmitere a datelor. cu o politică unică de numerotare şi rutare şi serviciu DNS. numele maşinii – serverului pe Internet sau IP-numărul.2 Conexiunea FLASH-PHP-MySQL Coala Mod Coala Nr.

. În această secţiune. Recurgerea la aceste initializări încă din stadiile incipiente ale rulării aplicaţiei poate fi realizată cu succes în momentul în care din PHP se doreşte transmiterea unei valori către player-ul Flash. document Semnăt . în locul punctelor fiind furnizaţi diverşi parametri. Prima secţiune.2 Comunicarea cu serverul Pentru a deservi clientul în mod dinamic. este instalat playr-ul Flash şi. În lista parametrilor trebuie să fie înserat un nou argument conţinînd variabila ce va fi transmisă către player: FlashVars. Datorită popularităţii şi uşurinţei de programare a limbajului PHP.cea scrisă în JavaScript. Prima este formată dintr-un program JavaScript-care are rolul de a determina dacă pe calculatorul în care va fi rulată aplicaţia. A doua secţiune este încadrată de marcatorii <noscript> şi </noscript>. Data UTM 2151. Această legatură se realizează în felul următor: -Aplicaţia Flash trimite datele către scripturile PHP printr-un obiect de tip URLRequest.4. Acest lucru se realizează prin adaugarea lor direct in codul HTML responsabil cu inserarea obiectului SWF.2. în funcţie de context. Codul prin intermediul caruia obiectul SWF este introdus în pagina HTML este compus din două secţiuni. această secţiune apare de două ori (deoarece acest cod JS verifică şi versiunea player-ului Flash). În cadrul paginii generate de Flex Builder. este situată între <script language=”javascript” şi </script>.788.1 Preluarea datelor din documentul HTML Atunci cind aplicatia Flash este inclusa intr-o pagina HTML i se pot furniza o serie de parametri. fie porneşte aplicaţia... fie va afişa o pagină ce nu conţine Flash (prin intermediul careia de obicei i se comunică utilizatorului necesitatea instalarii player-ului).. Cea de a doua porţiune este responsabilă cu înserarea efectivă a resursei SWF în pagină. 4. a doua este responsabilă pentru înserarea obiectului în pagina atunci când este utilizat alt navigator Web prin marcatorul <embed>.). Astfel.01 ME 48 .. -În obiectul URLRequest este scrisă adresa către aplicaţia PHP şi tipul cererii (GET sau POST). proiectul dat este realizat în baza la acest limbaj. legatura dintre aplicatia Flash si server este asigurata de scripturile PHP (anexa 2). Coala Mod Coala Nr. în codul generat de Flash CS se va găsi o porţiune AC_FL_RunContent (. serverul utilizează un limbaj de programare.2. Această zonă este la rîndul ei divizată în două părţi: prima este responsabilă pentru înserarea obiectelor în interiorul paginilor ce vor fi vizualizate prin intermediul navigatorului Internet Explorer . Metoda în sine nu poate fi denumită comunicare deoarece aplicatia Flash pur si simplu „se trezeşte” cu o serie de variabile care au valori stabilite inainte de a se porni rularea efectivă.

-Scriptul PHP prelucrează datele primite de la Flash şi le trimite către server. şi apoi se înscrie în baza de date. Data UTM 2151. oricine care ar sparge baza de date MySQL.a se conţin în acest tabel.01 ME 49 . Acest lucru se face pentru asigurarea securităţii datelor. Astfel.788. utilizatorul trebuie mai intîi să se logheze/înregistreze (fig. Schema de structura acesteia este prezentată în anexa 4 . Parola criptată reprezintă un şir de 32 simboluri în hexazecimal. genul acestuia ş.b) Coala Mod Coala Nr.2 a.a. parola. În tabelul avatar sunt înscrise date despre personajul ales de către utilizatorul sistemului multimedia. În tabelul chat se păstrează mesajele pe care utilizatorii le trimit reciproc. parola se criptatează prin algoritmul MD5. 4. baza de date a proiectului se compune din 4 tabele după cum urmează : Tabelul users – conţine informaţii despre utilizatori. în server se conţine baza de date. Pentru a acesa sistemul multimedia. Algoritmul are ca parametru de intrare un mesaj de lungime arbitrară şi are ca rezultat de ieşire mesajul criptat pe 128 biţi. În momentul înregistrării înainte de a transmite datele la server. nu ar afla textul simplu al parolei. În tabelul harta se pastreză calea catre hărţile disponibile de joc.1 . Comunicarea dintre cele două entităţi (Flash şi PHP) se face prin utilizarea datelor de contact XML. Informaţii precum tipul personajului.4 Interfaţa cu utilizatorul Unul dintre cele mai importante lucruri care trebuie luate în considerare cînd proiectăm orice sistem multimedia interactiv îl reprezintă modul în care utilizatorii lucrează cu el. şi nu este decriptabilă. Elementele formatului de fişier XML sunt de fapt conţinuturi de informaţie structurată. La fel se conţine numele destinatarului şi ora la care a fost trimis. XML-urile sunt utilizate în general pentru schimbul de informaţii cu aplicaţii sau tehnologii incompatibile cu Flash. precum numele. document Semnăt .3 Structura bazei de date După cum se observă în figura 3. Astfel. -Serverul trimite răspuns aplicaţiei Flash tot prin intermediul PHP. 4. adresa de email ş. 4.

2 (b). Data UTM 2151.3. Erorile care apar dacă formularul nu este completat corect.788.3). Dacă datele coincid. informaţia introdusă de către utilizator în formular se compară cu cea din baza de date cu ajutorul unui script PHP . Fig 4. informaţia din formular se trimite în baza de date dar nu înainte de a fi prelucrată de un script PHP care urmareşte ca formularul sa fie completat corect. document Semnăt .01 ME 50 . în caz contrar să indice utilizatorului erorile (fig 4. Logarea utilizatorilor Fig 4. acesta este redirecţionat inapoi la pagina de logare/înregistrare. Formularul este completat corect dacă: -toate cîmpurile sunt completate. Coala Mod Coala Nr. Înregistrarea utilizatorilor În cazul logării. în caz contrar. În cazul înregistrării. atunci utilizatorul are acces la sistemul multimedia.Fig.2 (a).4.

document Semnăt .4.swf şi se introduce în pagina web cu ajutorul următorului cod sursă: <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.4 Alegerea personajului Această aplicaţie este creată prin tehnologia FLEX.macromedia. -parola 1 coincide cu parola 2.com/pub/shockwave/cabs/flash/swflash. -parola conţine între 6 şi 25 caractere (simboluri). 0.01 ME 51 . Fig.swf" /> <param name="quality" value="high" /> <param name="bgcolor" value="#000000" /> Coala Mod Coala Nr. utilizatorul are la dispoziţie o aplicaţie FLASH cu ajutorul căreia acesta îşi alege personajul şi îl numeşte (fig. Data UTM 2151.4. adică folosind limbajele MXML şi ActionScript.-adresa de e-mail este validă. -utilizatorul acceptă regulile jocului.0" width="400" height="300"> <param name="allowScriptAccess" value="sameDomain" /> <param name="allowFullScreen" value="false" /> <param name="movie" value="alege.cab#version=9. După înregistrare.0. Aplicaţia are formatul .788. Dacă formularul este completat corect se trece la următorul pas.4).

<embed src="alege.adobe. Coala Mod Coala Nr. Următorul pas pe care trebuie să-l facă utilizatorul este să-şi aleagă harta de joc (fig. Fig 4.com/go/getflashplayer" /> </object> Tipul personajului ales şi numele acestuia se trimit în baza de date odată cu apăsare butonului “Inainte”. Codul sursă al aplicaţiilor Flash este prezentat în anexa 2. 4.swf" quality="high" bgcolor="#000000" width="400" height="400" allowscriptaccess="sameDomain" allowfullscreen="false" type="application/x-shockwave-flash" pluginspage="http://www. prin legătura FLASH-PHP-MySQL.5 ) sau să o creeze personal.Alegerea hărţii de joc Alegerea hărţii de joc se face similar alegerii personajului.01 ME 52 . În ambele cazuri utilizatorul interacţionează cu o aplicaţie FLASH prin intermediul browser-ului. Data UTM 2151.788. În acest moment avem prima interacţiune a serverului cu sistemul multimedia.5 . document Semnăt .

document Semnăt .6) care se compune din 3 butoane: -deseneaza harta: accesând acestă opţiune. se distruge sesiunea de joc.788. -menu. este de fapt numele personajului. Data UTM 2151. Acesta din urma. Coala Mod Coala Nr.01 ME 53 . -Alege alta harta : utilizatorul poate să schimbe harta de joc fară a fi nevoit să parasească jocul şi să intre din nou. -chat. Afară de mesajul propriu-zis se afişează ora trimiterii şi numele expeditorului. pe care utilizatorul îl scrie în a doua etapă a înregistrarii. Fig 4. Iesire: logout.Dupa aceasta etapa.7).7 Chat-ul sistemului multimedia Astfel. utilizatorul are acces la fereastra de joc. utilizatorul are posibilitatea de a crea propria hartă de joc.Meniul sistemului multimedia Chat-ul este o alta aplicatie Flash şi are scopul de a asigura comunicarea între utilizatori (fig 4. Menu-ul repezinta de fapt o aplicatie Flash (fig 4. Aceasta se compune din 3 elemente principale: -fereastra de joc propriu-zisă. Fig 4. toate mesajele scrise în chat se trimit în baza de date de unde apoi se extrag ţi se afişează tuturor utilizatorilor.6 .

economia maximală a resurselor. Aşa indicatori. ştiinţifice. costul minim al elaborării proiectului. analiza şi reconstruirea dinamică a planului de executare a proiectelor complexe. care sunt complicat de prezentat în diagrame. în procesul dirijării se culege informaţia despre lucrările efectuate şi aproape nu se culege şi nu se prezintă informaţia referitor la prognoza finisării lucrărilor viitoare. De obicei. adică prezentarea legăturilor şi caracteristicilor lucrărilor în procesul elaborării proiectului. Argumentarea economică a proiectului de licenţă Proiectele tehnologice contemporane sunt caracterizate de următoarele particularităţi: • • • • tehnica nouă utilizată este foarte complexă şi este construită utilizând ultimele elaborări accelerării vitezei de elaborare a proiectelor. ce apar pe porţiuni de interconectare a lucrărilor. Metodele tradiţionale de planificare presupun utilizarea celor mai simple modele de tipul construirea diagramelor de tip consecutive şi ciclice. care asigură modelarea. metode de control şi de organizare.4. de a corecta toată diagrama în legătură cu schimbarea termenilor de efectuare a unei lucrări. Toate acestea au dus la necesitatea de creare a noi metode de planificare.01 ME 54 . Una din aceste metode prezintă modelarea procesului de elaborare. Pot apărea diferite întârzieri în timp. în dependenţă de condiţiile concrete. ce este necesar de a efectua ca să nu schimbăm termenul de efectuare a întregului complex de lucrări. de unde rezultă imposibilitatea de a afla cât de importantă este lucrarea dată pentru executarea scopului final. Data UTM 2151. proiectele referitoare la complexele tehnicii de calcul şi softului sunt supuse uzurii necesitatea proiectării de sistemă la elaborarea softului şi sistemelor tehnice. Dar în asemenea diagrame nu este posibil de a prezenta legăturile dintre nişte lucrări. morale foarte rapide.788. document Semnăt . de aceia este imposibil de a prognoza rezultatele diferitor variante de soluţionare la modificările planului iniţial de lucru. Este de asemenea complicat de a reflectaşi dinamica lucrărilor. Sistemele de planificare şi gestiune în reţea este o metodă cibernetică creată pentru gestiunea cu sisteme dinamice complexe cu scopul asigurării condiţiei de optim pentru careva indicatori. Sistemele de planificare şi gestiune în reţea prezintă un complex de metode grafice şi de calcul. pot fi: • • • timpul minim pentru elaborarea întregului complex de lucrări. Particularităţile sistemului de planificare şi gestiune în reţea în general sunt următoarele: Coala Mod Coala Nr.

01 ME 55 . necesare pentru atingerea scopului final.1 Tabelul lucrarilor si evenimentelor realizate pe parcursul efectuarii proiectului Codul Lucrarii 0-1 1-2 1-4 2-3 2-5 3-5 4-5 5-6 5-7 6-8 7-9 7-10 8-11 9-12 10-13 8-14 12-15 13-15 Denumirea lucrarii Acceptarea sarcinilor Analiza sarcinilor. Pregatirea documentaţiei tehnice a proiectului Studierea sistemului multimedia Determinarea softului necesar pentru Sistemul Multimedia Determinarea softului necesar pentru crearea bazelor de date şi a paginilor web Procurarea softului necesar pentru Sistemul Multimedia Procurarea softului necesar pentru crearea bazelor de date.1 Durata efectuarii lucrarii. Documentul de bază în sistemul de planificare şi gestiune în reţea este graful-reţea.) • se utilizează sisteme de calcul pentru prelucrarea datelor operative pentru calcului indicatorilor şi primirea rapoartelor analitice şi statistice necesare.788. în care sunt prezentate legăturile şi rezultatele tuturor lucrărilor.Culegerea şi studierea literaturii tehnice la temă Determinarea tehnicii de calcul care va explora softul dat Elaborarea schemelor de lucru a proiectului Introducerea schimbărilor în algoritmul softului la diferite etape de elaborare a proiectului. Tabelul 5. costul. document Semnăt . care prezintă modelul informaţional-dinamic. zile 10 2 5 0 0 3 4 3 2 2 10 5 1 1 5 4 0 Coala Mod Coala Nr. Procurarea softului necesar pentru crearea paginilor web Studierea documentaţiei pentru instalarea softului procurat necesar pentru Sistemului Multimedia Studierea documentaţiei pentru instalarea softului procurat necesar pentru crearea serverului Studierea documentatiei pentru instalarea softului procurat necesar pentru crearea paginilor web Instalarea softului Sistemului Multimedia Instalarea softului Serverului Instalarea softului pentru crearea paginilor web Continuarea tabelului 5. forţele de muncă. matematico-logică a procesului şi calculul automat a parametrilor acestui proces (durata.• • se realizează metoda proiectării de sistem la rezolvarea problemelor de organizare a se utilizează modelul informaţional-dinamic special (graful-reţea) pentru descrierea gestiunii proceselor. Data UTM 2151. etc.

2 Durata efectuarii lucrarilor în regim real Codul Lucrarii 0-1 1-2 1-4 2-3 2-5 3-5 4-5 5-6 5-7 6-8 7-9 7-10 8-11 9-12 Denumirea lucrarii Acceptarea sarcinilor Analiza sarcinilor.788. document Semnăt . Verificarea sistemului informaţional integru Redactare finala Plasarea pe internet a sistemului informational 1 1 12 30 30 0 2 1 1 1 2 1 1 1 Tabelul 5.15-16 16-17 16-18 17-19 18-19 19-20 11-21 14-21 20-21 21-22 22-23 23-24 24-25 25-26 Crearea tabelelor bazei de date Întocmirea programului pentru introducerea şi memorizarea datelor Întocmirea programului pentru prelucrarea si analiză a datelor Testarea şi verificarea programului de introducere şi memorizare a datelor Testarea şi verificarea programului de prelucrare şi analiză a datelor Încadrarea obiectului FLASH În sistem Studierea informaţiei referitor la crearea legăturii FLASH-PHP Redactarea programului Sistemului Multimedia în ActionScript Întocmirea programului în PHP care prelucreaza datele primite de la Sistemul Multimedia.2 Durata efectuarii lucrarii. Testarea si verificarea corectitudinii programulelor in situatii exceptionale Îmbinarea programelor de trimitere şi prelucrare a datelor cu restul sistemului.Culegerea şi studierea literaturii tehnice la temă Determinarea tehnicii de calcul care va explora softul dat Elaborarea schemelor de lucru a proiectului Introducerea schimbărilor în algoritmul softului la diferite etape de elaborare a proiectului. Data UTM 2151. zile 10 2 5 0 0 3 4 3 2 2 10 5 1 Coala Mod Coala Nr.01 ME 56 . Pregatirea documentaţiei tehnice a proiectului Studierea sistemului multimedia Determinarea softului necesar pentru Sistemul Multimedia Determinarea softului necesar pentru crearea bazelor de date şi a paginilor web Procurarea softului necesar pentru Sistemul Multimedia Procurarea softului necesar pentru crearea bazelor de date. Procurarea softului necesar pentru crearea paginilor web Studierea documentaţiei pentru instalarea softului procurat necesar pentru Sistemului Multimedia Studierea documentaţiei pentru instalarea softului procurat necesar pentru crearea serverului Continuarea tabelului 5.

Verificarea sistemului informaţional integru Redactare finala Plasarea pe internet a sistemului informational 1 5 4 0 1 1 12 30 30 0 2 1 1 1 2 1 1 1 Coala Mod Coala Nr. Data UTM 2151.788. Testarea şi verificarea corectitudinii programelor în situaţii excepţionale Îmbinarea programelor de trimitere şi prelucrare a datelor cu restul sistemului. document Semnăt .10-13 8-14 12-15 13-15 15-16 16-17 16-18 17-19 18-19 19-20 11-21 14-21 20-21 21-22 22-23 23-24 24-25 25-26 Studierea documentaţiei pentru instalarea softului procurat necesar pentru crearea paginilor web Instalarea softului Sistemului Multimedia Instalarea softului Serverului Instalarea softului pentru crearea paginilor web Crearea tabelelor bazei de date Întocmirea programului pentru introducerea şi memorizarea datelor Întocmirea programului pentru prelucrarea si analiza datelor Testarea şi verificarea programului de introducere şi memorizare a datelor Testarea şi verificarea programului de prelucrare şi analiză a datelor Încadrarea obiectului FLASH în sistem Studierea informatiei referitor la crearea legăturii FLASH-PHP Redactarea programului Sistemului Multimedia în ActionScript Întocmirea programului în PHP care prelucrează datele primite de la Sistemul Multimedia.01 ME 57 .

Fig. 5. document Semnăt . Data UTM 2151.788.1 Graful reţea al proiectului Coala Mod Coala Nr.01 ME 58 .

5.Fig. document Semnăt . Data UTM 2151.01 ME 59 .1 Continuare Tabelul 5.3 Coala Mod Coala Nr.788.

document Semnăt .788.01 ME 60 .CSS. 1 2 3 Functia exercitată Şeful proiectului (Programator PHP+MySQL) Programator Action Script. Data UTM 2151. MXML Programator HTML. designer Cod A B C Salariu lunar (lei) 0 0 0 Pe zi (lei) 80 70 70 Coala Mod Coala Nr.Parametrii grafului reţea I 0 1 1 2 3 4 5 5 6 7 7 8 8 9 10 11 12 13 14 15 16 16 17 18 19 20 21 22 23 24 25 g 1 2 4 3 5 5 6 7 8 9 10 11 14 12 13 21 15 15 21 16 17 18 19 19 20 21 22 23 24 25 26 tig 5 10 2 5 0 7 1 1 1 1 1 0 1 1 1 0 1 1 20 3 5 5 1 1 1 7 1 1 1 1 1 Td_ig 5 15 7 20 20 20 21 21 22 22 22 23 23 23 23 47 24 24 47 27 35 35 39 39 40 47 51 52 53 54 55 Tt_ig 5 15 13 20 20 20 21 21 22 22 22 23 23 23 23 50 24 24 50 30 38 38 39 39 40 50 51 52 53 54 55 Rg_ig 0 0 6 0 0 1 0 0 0 0 0 0 0 0 0 7 0 0 7 3 3 3 3 3 0 3 3 0 0 0 0 Rl_ig 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 4 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 Tabelul 5.4 Componenţa grupului de lucru Nr.

5 Repartizarea lucrarilor către executori: Codul lucrarilor Durata efectuarii lucrarilor 0-1 5 1-2 10 1-4 2 2-3 5 3-5 0 4-5 7 5-6 1 5-7 1 6-8 1 7-9 1 7-10 1 8-11 1 9-12 1 10-13 1 8-14 1 12-15 1 13-15 1 15-16 3 16-17 5 16-18 5 17-19 1 18-19 1 19-20 1 11-21 0 14-21 20 20-21 7 21-22 1 22-23 1 23-24 1 24-25 1 25-26 1 26-27 0 Total zile Salariul calculat A 5 10 1 5 0 1 0 1 0 0 1 1 0 1 0 0 1 3 0 5 0 1 1 0 0 7 1 1 1 1 1 0 49 3920 Codul executorilor B 5 1 2 0 0 7 1 0 1 0 0 1 0 0 1 0 0 0 0 0 0 0 1 0 20 3 1 1 1 1 0 0 47 3290 C 5 1 0 0 0 1 0 1 0 1 0 0 1 0 0 1 0 1 5 0 1 0 1 0 0 0 0 1 0 1 0 0 21 1470 Pentru remunerarea de baza s-au cheltuit: Sb=3920+3290+1470=8680.01 ME 61 . document Semnăt . Coala Mod Coala Nr.Tabelul 5.3=2604.00 lei. Data UTM 2151.788. Salariu auxiliar (30%): Sa=8680*0.00 lei.

1=14387.788. iar conducerea cheltuielile de proiectare.L.1 Cheltuieli totale pentru achitarea salariului: Ctot=8680+2604+3103.01 ME 62 . “PRO MEDIA” se obliga sa creeze un sistem multimedia online pentru copiii de la Gimnaziul-Internat din or.5 =27. CONTRACT DE COLABORARE Incheiat intre: 1. acestei instituţii işi asumă toate Coala Mod Coala Nr. conducerea acestei instituţii îşi asumă toate cheltuielile de proiectare. S. Obiectul contractului: S. Durata contractului de colaborare Prezentul contract de colaborare se incheie pe o durata de 60 de zile şi intră în vigoare de la data semnării prezentului contract. Astfel apare necesitatea de a încheia un contract de colaborare cu instituţia respectivă. reprezentată de Rodion Vîrlan având functia de inginer.Ciadir-Lunga reprezentat de Andrei Bargan cu funcţia de director şi 2.R.1 lei. document Semnăt . Obligatiunile partilor: Gimnaziul-Internat se obligă: 1) Să acopere cheltuielile pentru procurarea softului necesar proiectarii sistemului multimedia.Ciadîr Lunga. Produsul final este destinat Gimnaziului Internat pentru copii orfani. Astfel. Gimnaziul-Internat cu sediul social în or.R.L “PRO MEDIA”.275=3103. Data UTM 2151. societate în curs de constituire.5%) Cfs=(8680+2604)*0. inclusiv oferă spaţiu de lucru cu toate comodităţile.Defalcari in fondul social + prima de asigurare medicala (26+1.

document Semnăt . “PRO MEDIA” se obliga: 1) Să folosească softul procurat şi spaţiul de lucru conform destinaţiei sale. “PRO MEDIA” _____________________ Coala Mod Coala Nr. Litigii Colaborarea inceteaza prin ajungerea la termen.L. electricitate.2011 în 2 exemplare.L.788. 2) Să evite distrugerea. Prezentul contract de colaborare a fost incheiat astăzi 25.2) Să acopere cheltuielile pentru achitarea salariilor grupului de lucru. 3) Să ofere gratuit produsul final Gimnaziului-Internat Incetarea colaborarii. Gimnaziul-Internat Ciadir-Lunga _____________________ S.01 ME 63 . Litigiile contractului de colaborare vor fi soluţionate pe cale amiabila.R. în cazul în care acest lucru nu este posibil vor fi soluţionate de instanţele de judecată competente. 4) Să suporte cheltuielile pentru uzură. internet. S.02.R. degradarea sau deteriorarea bunurilor ce aparţin Gimnaziului-Internat. literatură şi alte cheltuieli necesare proiectarii sistemului multimedia online. 3) Să ofere spaţiu de lucru cu comodităţile necesare. Data UTM 2151. Modificările aduse prezentului contract vor fi consemnate în scris şi vor fi semnate de către ambele părţi.

A.788.7 Calculele costului şi preţului de livrare a SOFT-ului proiectat Articolele de cheltuieli Cheluieli pentru procurarea softului Procurarea literaturii Salariul total remunerat Rechizite de birou Costul total al softului Beneficiul planificat (40%) Pretul en-gros al SI T. Tabelul 5. Data UTM 2151.01 ME 64 . (20%) Pretul de livrare Suma (lei) 2480 500 14387.V.6 Cheltuieli pentru procurarea softului necesar Denumirea articolului Vertigo server Macromedia Dreamweaver 8 Adobe Flash Profesional CS 4 Host Total costul softului (lei) Costul $ 0.Tabelul 5.00 Cantitatea / termen 1 1 1 1 an Total (lei) 0 330 1695 455 2480.86 9952.00 $ 29.00 $ 149.00 $ 40. conform cursului oficial al MDL.00 La data procurarii softului.3819 LEI De asemenea s-a procurat literatură tehnică în valoare de 500 lei şi rechizite de birou în valoare de 30 lei.17 Costul şi preţul de livrare a produsului SOFT proiectat s-a calculat pentru a estima cheltuielile de proiectare şi valoarea financiară a produsului final Coala Mod Coala Nr.57 41453.74 34834.1 30 24881. document Semnăt .6 6618. 1$ = 11.

} ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1. charset=windows-1251" /> <link rel="stylesheet" href="style.1 SCRIPTURI PHP index. unset($_SESSION['name']). if (isset($_SESSION['user']) || isset ($_SESSION['ip']) || isset($_SESSION['name'])){ unset($_SESSION['user']).788.location=&quot. unset($_SESSION['ip']).01 ME 65 .php" method="post"> <table width="240" height="110" border="0" align="center"> <tr> <th height="24" scope="col"><input class= "inup" type="text" onblur="if (value == '') {value='E-mail'}" onfocus="if (value == 'E-mail') {value =''}" value="E-mail" name="email2" /></th> </tr> <tr> <td height="24" align="center"><input class="inup" type="password" onblur="if (value == '') {value='Parola'}" onfocus="if (value == 'Parola') {value =''}" value="Parola" name="pass2" /></td> </tr><tr> <td height="26" align="center"><input name="submit" type="submit" class='btn' value="Intra" /></td> </tr><tr> <td align="center"><input name="button" type="button" class='btn' onclick='window.css" type="text/css"/> <title>Joc in retea</title> </head> <body > <div id='entry' > <br /> <font class="text" >pentru a juca trebuie mai intai sa va logati</font> <form action="login. Coala Mod Coala Nr.' value=' Inregistreaza-te ' /></td> </tr> </table> </form> </div> <p align="center">&nbsp.reg. $base_pass="vertrigo".</p> </body> </html> conf. Data UTM 2151.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html.dtd"> <html xmlns="http://www.php // pagina de logare <?php session_start().php <?php $base_name="localhost". $db_name="game". document Semnăt . $base_user="root".w3.php&quot.ANEXE ANEXA NR.org/TR/xhtml1/DTD/xhtml1-transitional.0 Transitional//EN" "http://www.

include "conf. error_reporting(0).0.$data)){ print "<BR>". $base_user.css" type="text/css" /> <title>Joc in retea</title> </head> <body> <div id="goreg" align="center" > <br /><br /><br /><br /> <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.org/TR/xhtml1/DTD/xhtml1-strict.swf" quality="high" bgcolor="#000000" width="400" height="400" allowscriptaccess="sameDomain" allowfullscreen="false" type="application/x-shockwave-flash" pluginspage="http://www.href='index. $passHash = md5($_POST['pass2']).0 Strict//EN" "http://www. $email = $_POST['email2'].com/go/getflashplayer" /> </object></div> </body> </html> <?php }else{ echo "<script>location.php'. include "conf.php". charset=utf-8" /> <link rel="stylesheet" href="style. if ($ip==$_SESSION['ip']) { ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.dtd"> <html xmlns="http://www. Data UTM 2151. if(!mysql_select_db($db_name.com/pub/shockwave/cabs/flash/swflash. $data = mysql_connect($base_name. echo mysql_error(). $base_user. document Semnăt .php <?php session_start(). echo mysql_error(). if(!$data){ echo "<BR>". die().php <?php session_start().macromedia.adobe.w3.788. Coala Mod Coala Nr.0" width="400" height="300"> <param name="allowScriptAccess" value="sameDomain" /> <param name="allowFullScreen" value="false" /> <param name="movie" value="alege. } $ip = $_SERVER['REMOTE_ADDR']. } ?> login.cab#version=9.01 ME 66 .w3.org/1999/xhtml" lang="ru" xml:lang="ru" > <head> <meta http-equiv="content-type" content="text/html. $base_pass).</script>". $data = mysql_connect($base_name.?> goreg. 0.swf" /> <param name="quality" value="high" /> <param name="bgcolor" value="#000000" /> <embed src="alege.php". $base_pass).

0.$data)){ print "<BR>". echo "<script>location.dtd"> <html xmlns="http://www.swf" quality="high" bgcolor="#000000" width="560" height="560" allowscriptaccess="sameDomain" allowfullscreen="false" type="application/x-shockwave-flash" pluginspage="http://www. charset=utf-8" /> <link rel="stylesheet" href="style.org/TR/xhtml1/DTD/xhtml1-strict. if ($num > 0){ $_SESSION['user'] = $email. Data UTM 2151. if ($ip==$_SESSION['ip']) { ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.php".0.$email.$email. $row = mysql_fetch_array($query). } else { echo "<script>location. $data = mysql_connect($base_name."'").css" type="text/css" /> <title>Joc in retea</title> </head> <body> <div id="goreg" align="center" > <br /><br /><br /><br /> <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download. $_SESSION['ip'] = $row['ip'].788. echo mysql_error(). $num = mysql_num_rows($query).cab#version=9.die().php'. include "conf. mysql_query("UPDATE users SET online='1' WHERE email='". $query = mysql_query("SELECT * FROM users WHERE email='".adobe.org/1999/xhtml" lang="ru" xml:lang="ru" > <head> <meta http-equiv="content-type" content="text/html."' AND pass='".com/pub/shockwave/cabs/flash/swflash.w3.href='index.php <?php session_start().0" width="560" height="560"> <param name="allowScriptAccess" value="sameDomain" /> <param name="allowFullScreen" value="false" /> <param name="movie" value="harta. if(!mysql_select_db($db_name."'").0 Strict//EN" "http://www.w3. } mysql_select_db($db_name). } $ip = $_SERVER['REMOTE_ADDR']. document Semnăt . $_SESSION['name'] = $row['name']. $base_pass).com/go/getflashplayer" /> </object> </div> Coala Mod Coala Nr.</script>".</script>".swf" /> <param name="quality" value="high" /> <param name="bgcolor" value="#000000" /> <embed src="harta. die().php'. } ?> harta.01 ME 67 . $passHash. $base_user.macromedia.href='game.

0-9a-z-]{1.w3. ip.</script>". $ip. email) values('". ".[_\.0 Strict//EN" "http://www.0-9a-z-]{2.$_POST ["email"].addslashes($_POST ["email"]).= "e-mailul scris nu este valid<br>". } ?> reg.}} if(!$_POST ["pass"]) {$errp = "scrieti parola.php".}@[_\.</body> </html> <?php }else{ echo "<script>location. {if ($c_e>0) {$errm . $error =1.'". mysql_error()). session_register("email"). $_SESSION['user'] = $_POST['email']. } if ($_POST["next"]){ $error=0."'.php".href='index.</script> <?php } } function err($text){ return "<tr valign='middle' align='left'><td colspan='2'><span class='error'>$text</td></tr>".}\. $_POST ["email"])) {$errm . if(!mysql_select_db($db_name. $data = mysql_connect($base_name.0-9a-z-]{1.} if (!$_POST['rules']) {$errr = "nu sunteti de acord cu regulamentul?<br>". echo mysql_error(). include "conf. include "eror. $_SESSION['ip'] = $_POST['ip'].org/TR/xhtml1/DTD/xhtml1-strict.}$/". $error =1. document Semnăt . Data UTM 2151.md5($_POST ["pass"]). $base_user. ?> <script>location.="parolele nu coincid<br>". $error =1.} $c_e = mysql_num_rows(mysql_query("SELECT id_user FROM users where email='".} if(!preg_match("/^[_\.=" Lungimea parolei trebuie sa aiba intre 6 si 25 de caractere<br>".} if (strlen ($_POST ["pass"])<6 || strlen ($_POST ["pass"])>25){ $errp . die().} if(!$error) { $ip = $_SERVER['REMOTE_ADDR'].php'. session_register("ip"). $error=1.01 ME 68 .php". } ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1."')") or die("Invalid query: " .'". charset=utf-8" /> <link rel="stylesheet" href="style. error_reporting(0). $base_pass)."'")). $error=1. mysql_query ("INSERT INTO users (pass. $error =1.css" type="text/css" /> <title>joc in retea</title> Coala Mod Coala Nr.} if ($_POST ["pass"]!= $_POST ["pass2"]){ $errp ."'.= "exista deja utilizator cu acest e-mail".dtd"> <html xmlns="http://www.788. if (!$_POST['email']){ $errm = "campul email nu este completat <br>". $error=1.href="goreg.w3.php <?php session_start().org/1999/xhtml" lang="eng" xml:lang="eng"> <head> <meta http-equiv="content-type" content="text/html.$data)){ echo "<BR>".

$nameChar = trim($_POST['nameChar']). Coala Mod Coala Nr. $base_user. $vid = $_POST['avaIm']."'".php" target=_blank><B>regulile jocului </B></A> </p> <?php echo err($errr).php". } mysql_select_db($db_name). if ($nameChar == '') { echo "-3". ?> <tr><td align="left" width="200">Repeta parola:</td><td><input type="password" value="" name="pass2" class="inup"></td></tr> </table> <p><span> <input type="checkbox" class="inup" name="rules"> </span> Ma oblig sa respect <A href="lib/law. $result = mysql_query($query). ?> <tr><td align="left" width="200">Parola:</td><td><input type="password" value="" name="pass" class="inup"></td></tr> <?php echo err($errp).$nameChar. exit. include "conf. $gander = $_POST['gr']. document Semnăt .php <?php session_start(). if(!$data){ echo "-1". exit. Data UTM 2151.</head> <body> <div id="reg"> <form action="" method="post"><br /><br /> <table align="center" > <tr><td align="left" width="200">E-mail:</td><td><input type="text" value="" name="email" class="inup"></td></tr> <?php echo err($errm). ?></p> <p> <input type="submit" name="next" value="Inainte" class="btn"> </p></form> </div> </body> </html> reg_comp. } $data = mysql_connect($base_name.01 ME 69 .788. exit. $patch = $_POST['patch']. if ($num_results > 0) { echo "-2". $num_results = mysql_num_rows($result). exit. $query = "SELECT * FROM users WHERE name='". } if (!preg_match("/^[a-zA-Z]+$/". $base_pass).$nameChar)) { echo "-4".

$result = mysql_query("UPDATE users SET name='". ?> send_mess. mysql_query("UPDATE users SET online='0' WHERE email='"."'"). '". who) VALUES ('".$_SESSION['user']. $base_pass). } mysql_select_db($db_name). include "conf. $time = $aHours."')"). '". include "conf. $mess_send = $_POST['mess_send'].$patch. $_SESSION['user'].$nameChar. '". if(!$data){ echo "-1".$time. $aMinutes = date("i"). $aHours = date("H"). if (isset($_SESSION['user']) || isset ($_SESSION['ip']) || isset($_SESSION['name'])){ unset($_SESSION['user']). if ($mess_send == "") { echo "-2".788. tip. session_register("nameChar").php"."')"). exit. $mess_send. $query = mysql_query("INSERT INTO chat (msg."'. Data UTM 2151."'. echo "1".$aMinutes."'"). echo "1"."'. $data = mysql_connect($base_name. wrt_user. if(!$data){ echo "<BR>".01 ME 70 .php <?php session_start(). $who = $_POST['who']. time_msg. document Semnăt . $ava = mysql_query("INSERT INTO avatar (gander.} echo "1". Coala Mod Coala Nr. $base_user. echo mysql_error().php <?php session_start(). die(). path) VALUES ('"."'. exit."' WHERE email='".$who.$write."'. $write = $_SESSION['name']. ?> logout."'").":". $base_pass). } mysql_select_db($db_name). '". '". $_SESSION["name"] = $_POST["nameChar"]. } $data = mysql_connect($base_name. $_SESSION['user']. $base_user. unset($_SESSION['ip']). $who_online = mysql_query("UPDATE users SET online='1' WHERE email='".$gander.php".$vid.

charset=utf-8" /> <link rel="stylesheet" href="style.org/TR/xhtml1/DTD/xhtml1-strict. ?> online.w3.0 Strict//EN" "http://www. $base_pass). $online = mysql_num_rows($query). echo $online. mysql_select_db($db_name).css" type="text/css" /> <title>Joc in retea</title> </head> <body> <div id="goreg" align="center" > <br /><br /><br /> <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download. $query = mysql_query("SELECT * FROM users WHERE online='1'"). ?> alege_pers.php".01 ME 71 .macromedia.0" width="950" height="800" align="middle"> <param name="allowScriptAccess" value="sameDomain" /> <param name="allowFullScreen" value="false" /> <param name="movie" value="alege_pers.php'.</script>".</script>". if (isset($_SESSION['user'])) { ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.788.href='index. Data UTM 2151.cab#version=9.adobe. } echo "<script>location.php <?php session_start().org/1999/xhtml" lang="ru" xml:lang="ru"> <head> <meta http-equiv="content-type" content="text/html.swf" /> <param name="quality" value="high" /> <param name="bgcolor" value="#000000" /> <embed src="alege_pers.0.php Coala Mod Coala Nr.com/go/getflashplayer" /> </object> </div> </body> </html> <?php }else{ echo "<script>location. } ?> chat. $base_user. $data = mysql_connect($base_name. 0.w3.href='index.dtd"> <html xmlns="http://www.php'.com/pub/shockwave/cabs/flash/swflash. document Semnăt .php <?php include "conf.unset($_SESSION['name']).swf" quality="high" bgcolor="#000000" align="middle" width="900" height="700" allowScriptAccess="sameDomain" allowFullScreen="false" type="application/x-shockwave-flash" pluginspage="http://www.

navigateToURL. $query = mysql_query("Select * from chat"). private var pic_arr_m:Array = ["img/men1-1.png". Data UTM 2151.png". "img/women2-3.events. "img/men1-2. } private function iMen():void { avatar. $base_user.com/2006/mxml"> <mx:Script><![CDATA[ import mx.2 SCRIPTURI MXML alege_pers.mxml <?xml version="1. "img/women2-2.load(pic_arr_m[0]). $query2 = mysql_query("SELECT * FROM users").$line['time_msg'].png"]. document Semnăt . [Bindable] private var gr:String = "1". import flash.png"]. "img/women2-4.events.$line['msg']. $base_pass).png". import mx. navigateToURL(alegeLink.788.php".0" encoding="utf-8"?> <mx:Application layout="absolute" width="400" height="400" backgroundAttachment="img/01. simpleLabel.jpg" backgroundColor="#569f65" xmlns:mx="http://www.png".rpc.adobe. mysql_select_db($db_name).net.01 ME 72 . $data = mysql_connect($base_name. "] ". gr = "1".php?$row[id_user]' target='_blank'>(i)</a>: ". $row = mysql_fetch_array($query2)."<br>". Coala Mod Coala Nr.png". private var i:int = 0.Alert. [Bindable] private var patch:String = "img/man1-1. [Bindable] private var per:int.MouseEvent.png". "img/men1-4. } ?> ANEXA NR. "img/men13. private function onCreateChar():void { createRequest.<?php include "conf.controls.$line['wrt_user'].php").png".text = "1-1". "_self"). /* afisam mesajul */ while($line = mysql_fetch_array($query)){ echo "[".ResultEvent. import flash. var alegeLink:URLRequest = new URLRequest ("game."<a href='info.send(). private var pic_arr_w:Array = ["img/women2-1.

selected == true){ avatar. avatar. } if (i == 1) { simpleLabel.788. } if (i == 0) { simpleLabel. if (i == -1) { i = 3.load(pic_arr_m[0]). simpleLabel.text = "1-2".load(pic_arr_w[0]).png".text = "2-2".01 ME 73 .load(pic_arr_w[1]).text = "2-1". document Semnăt . patch = "img/woman2-2.load(pic_arr_m[i]). avatar.png". i--. avatar. avatar. } Coala Mod Coala Nr.load(pic_arr_w[i]).load(pic_arr_m[2]). patch = "img/man1-4.png". if (i == -1) { i = 3. } if (i == 2) { simpleLabel.load(pic_arr_m[1]).text = "1-1". } } if (women. avatar.png".text = "1-3". patch = "img/woman2-1.text = "1-4".load(pic_arr_m[3]). } private function onLeft():void { if (men. } if (i == 1) { simpleLabel. gr = "2". Data UTM 2151. } if (i == 3) { simpleLabel. patch = "img/man1-2. i--. patch = "img/man1-1. } if (i == 0) { simpleLabel.text = "2-1".png".png". avatar.load(pic_arr_w[0]).selected == true) { avatar.} private function iWomen():void { avatar. patch = "img/man1-3.

avatar. } } if (women.text = "2-4". avatar.text = "1-2". patch = "img/man1-4. avatar.png".text = "2-1".if (i == 2) { simpleLabel. if (i == 4) { i = 0.selected == true){ avatar.load(pic_arr_m[0]).png". } if (i == 2) { simpleLabel. i++.01 ME 74 . patch = "img/woman2-3. if (i == 4) { i = 0. } if (i == 0) { simpleLabel. avatar.png".png". patch = "img/man1-3. } if (i == 0) { simpleLabel.load(pic_arr_m[2]). } if (i == 3) { simpleLabel.png". }}} private function onRight():void { if (men. Coala Mod Coala Nr. document Semnăt . avatar. patch = "img/man1-1.selected == true) { avatar.text = "1-1". } if (i == 1) { simpleLabel. Data UTM 2151.text = "1-3".load(pic_arr_m[i]).load(pic_arr_w[3]).load(pic_arr_w[0]).png".load(pic_arr_w[2]). avatar. patch = "img/man1-2.text = "1-4".png".text = "2-2".load(pic_arr_m[1]).788. patch = "img/woman2-1.load(pic_arr_m[3]).text = "2-3". avatar. i++. } if (i == 1) { simpleLabel. patch = "img/woman2-4. } if (i == 3) { simpleLabel.load(pic_arr_w[i]).

show("Eroare la conectarea la baza de date. document Semnăt . break. Data UTM 2151. avatar.".788. }}} ]]></mx:Script> <mx:HTTPService id="createRequest" useProxy="false" method="POST" result="onResult(event)" url="reg_comp.01 ME 75 .show("Numele contine caractere interzise".text}</mx:nameChar> <mx:avaIm>{simpleLabel. "Atentie!").show("Scrie numele eroului".result). patch = "img/woman2-2.png".php"> <mx:request> <mx:nameChar>{nameChar. }}} private function onResult(e:ResultEvent):void { if (int(e. } if (i == 3) { simpleLabel.load(pic_arr_w[3]).result))) { case -1 : Alert. case -2 : Alert. break.toString()}</mx:gr> <mx:patch>{patch.png".load(pic_arr_w[1]). navigateToURL(url.text}</mx:avaIm> <mx:gr>{gr. patch = "img/woman2-3. break. "Atentie!").png". "Atentie!"). if (per > 0){ var url:URLRequest = new URLRequest("game. case -4: Alert. } if (i == 2) { simpleLabel.show("Acest nume este utilizat deja".text = "2-4".php"). "Atentie!").avatar. break. avatar.text = "2-3"."_blank"). }} else { switch (int(String(e. case -3 : Alert.result) > 0) { per = int(e. patch = "img/woman2-4.load(pic_arr_w[2]).toString()}</mx:patch> </mx:request> </mx:HTTPService> <mx:Label id="simpleLabel" text="1-1" x="183" y="66" width="36" height="18"/> <mx:Button label="Inainte" click="onCreateChar()" x="156" y="361" width="100" height="22"/> <mx:TextInput id="nameChar" textAlign="center" x="130" y="304" width="160" height="22"/> Coala Mod Coala Nr.

<mx:Image id="avatar" source="img/men1-1.png" x="148" y="91" width="100" height="100"/> <mx:RadioButton id="men" label="Barbat" groupName="gander" selected="true" click="iMen()" x="21" y="68" width="74" height="22"/> <mx:RadioButton id="women" label="Femeie" groupName="gander" click="iWomen()" x="290" y="68" width="74" height="22"/> <mx:Label text="Numele eroului" x="30" y="304" width="89" height="18"/> <mx:Button label="Imaginea anterioara" click="onLeft()" x="24" y="221" width="144" height="22"/> <mx:Button label="Imaginea urmatoare" click="onRight()" x="232" y="223" width="145" height="22"/> <mx:Text text="Alege personajul" x="157" y="28" width="100" height="22"/> <mx:Button label="OK" x="295" y="304" width="100" height="22"/> </mx:Application> chat.mxml <?xml version="1.0" encoding="utf-8"?> <mx:Application creationComplete="time()" layout="absolute" width="420" height="150" backgroundColor="#FFA07A" xmlns:mx="http://www.adobe.com/2006/mxml"> <mx:Script><![CDATA[ import flash.events.TimerEvent; import flash.net.URLRequest; import mx.rpc.events.ResultEvent; import mx.controls.Alert; import mx.events.ScrollEvent; import flash.utils.Timer; private var id_script:uint; private var i:int; private var mesg:String; private var on:String; private function time():void { onLine(); msg(); var timers:Timer = new Timer(10000); timers.addEventListener(TimerEvent.TIMER, onTimer); timers.start(); } private function onTimer(e:TimerEvent):void { onLine(); } private function update():void { msg(); } public function createMess():void { id_script = 1; createMessage.send();
Coala Mod Coala Nr. document Semnăt . Data

UTM 2151.788.01 ME

76

mess_send.text = ""; } public function msg():void { id_script = 2; up.send(); } public function onLine():void { id_script = 3; online.send(); } private function scrollBody():void { vuvod.verticalScrollPosition = vuvod.maxVerticalScrollPosition + 2; } public function onResult(e:ResultEvent):void { switch (id_script) { case 1: if (int(e.result) > 0) { } else { switch (int(e.result)) { case -1: Alert.show("Eroare la conectare. Incercati mai tirziu", "Eroare"); break; case -2: Alert.show("Nu ati introdus mesajul dvs", "Eroare"); break; } } break; case 2: mesg = String(e.result); vuvod.htmlText = mesg; break; case 3: on = String(e.result); onlineUsers.text = on; break; } } ]]></mx:Script> <mx:HTTPService id="createMessage" useProxy="false" method="POST" resultFormat="text" url="send_mess.php" result="onResult(event)"> <mx:request> <mx:mess_send>{mess_send.text}</mx:mess_send> </mx:request> </mx:HTTPService>
Coala Mod Coala Nr. document Semnăt . Data

UTM 2151.788.01 ME

77

<mx:HTTPService id="up" useProxy="false" method="POST" resultFormat="text" url="chat.php" result="onResult(event)"/> <mx:HTTPService id="online" useProxy="false" method="POST" resultFormat="text" url="online.php" result="onResult(event)"/> <mx:TextInput id="mess_send" x="28" y="116" width="230" height="22" enter="createMess()"/> <mx:TextArea id="vuvod" editable="false" x="27" y="29" width="280" height="80" valueCommit="scrollBody()"/> <mx:Label text="utilizatori online:" x="28" y="8" width="120" height="18"/> <mx:Label id="onlineUsers" text="-" x="127" y="8" width="36" height="18"/> <mx:Button label="OK" click="createMess()" x="262" y="116" width="43" height="22"/> <mx:Button label="Refresh" click="update()" x="311" y="26" width="100" height="22"/> </mx:Application> harta.mxml <?xml version="1.0" encoding="utf-8"?> <mx:Application layout="absolute" width="540" height="550" backgroundAttachment="harti/harta1-3.jpg" backgroundColor="#569f65" xmlns:mx="http://www.adobe.com/2006/mxml"> <mx:Script><![CDATA[ import mx.rpc.events.ResultEvent; import mx.controls.Alert; import flash.net.navigateToURL; import flash.events.MouseEvent; private var pic_arr_m:Array = ["harti/harta1-1.jpg", "harti/harta1-2.jpg", "harti/harta1-3.jpg", "harti/harta1-4.jpg"]; private var i:int = 0; [Bindable] private var gr:String = "1"; [Bindable] private var patch:String = "img/harta1-1.jpg"; [Bindable] private var per:int; private function alegeharta():void { createRequest.send(); var hartaLink:URLRequest = new URLRequest ("game.php"); navigateToURL(hartaLink, "_self"); } private function onLeft():void { avatar.load(pic_arr_m[i]); i--; if (i == -1) { i = 3; } if (i == 0) { simpleLabel.text = "1-1"; avatar.load(pic_arr_m[0]); patch = "harti/harta1-1.jpg"; }
Coala Mod Coala Nr. document Semnăt . Data

UTM 2151.788.01 ME

78

if (i == 1) { simpleLabel.text = "1-2"; avatar.load(pic_arr_m[1]); patch = "harti/harta1-2.jpg"; } if (i == 2) { simpleLabel.text = "1-3"; avatar.load(pic_arr_m[2]); patch = "harti/harta1-3.jpg"; } if (i == 3) { simpleLabel.text = "1-4"; avatar.load(pic_arr_m[3]); patch = "harti/harta1-4.jpg"; } } private function onRight():void { avatar.load(pic_arr_m[i]); i++; if (i == 4) { i = 0; } if (i == 0) { simpleLabel.text = "1-1"; avatar.load(pic_arr_m[0]); patch = "harti/harta1-1.jpg"; } if (i == 1) { simpleLabel.text = "1-2"; avatar.load(pic_arr_m[1]); patch = "harti/harta1-2.jpg"; } if (i == 2) { simpleLabel.text = "1-3"; avatar.load(pic_arr_m[2]); patch = "harti/harta1-3.jpg"; } if (i == 3) { simpleLabel.text = "1-4"; avatar.load(pic_arr_m[3]); patch = "harti/harta1-4.jpg"; } } private function onResult(e:ResultEvent):void { if (int(e.result) > 0) { per = int(e.result); if (per > 0){ var url:URLRequest = new URLRequest("game.php"); navigateToURL(url,"_blank");

Coala Mod Coala Nr. document Semnăt . Data

UTM 2151.788.01 ME

79

result))) { case -1 : Alert.".0" encoding="utf-8"?> <mx:Application layout="absolute" width="860" height="40" xmlns:mx="http://www.php").jpg" x="69" y="69" width="400" height="400"/> <mx:Button label="I" click="onLeft()" x="7" y="79" width="40" height="140"/> <mx:Button label="I" click="onRight()" x="491" y="80" width="40" height="140"/> <mx:Text text="Alege harta de joc" x="215" y="27" width="130" height="22"/> </mx:Application> menu.php"> <mx:request> <mx:gr>{gr. "_self"). }}} ]]></mx:Script> <mx:HTTPService id="createRequest" useProxy="false" method="POST" result="onResult(event)" url="reg_comp1.URLRequest.php"). "_self"). } private function harta (): void { var hartaLink:URLRequest = new URLRequest ("harta. "_self").788. Data UTM 2151. break. "Atentie!").toString()}</mx:gr> <mx:patch>{patch.} } else { switch (int(String(e. navigateToURL(hartaLink.show("Eroare la conectarea la baza de date. document Semnăt .com/2006/mxml"> <mx:Script><![CDATA[ import flash. navigateToURL(desenLink.mxml <?xml version="1.managers.net. navigateToURL(logoutLink. import mx.01 ME 80 . private function logout():void { var logoutLink:URLRequest = new URLRequest("logout.php").toString()}</mx:patch> </mx:request> </mx:HTTPService> <mx:Label id="simpleLabel" text="1-1" x="249" y="52" width="36" height="18"/> <mx:Button label="Inainte" click="alegeharta()" x="205" y="485" width="100" height="22"/> <mx:Image id="avatar" source="harti/harta1-1. } private function desen (): void { var desenLink:URLRequest = new URLRequest ("game1. } ]]></mx:Script> <mx:Button label="Iesire" click="logout()" x="756" y="6" width="100" height="30"/> <mx:Button label="Alege alta harta" click="harta()" x="635" y="6" width="118" height="30"/> Coala Mod Coala Nr.adobe.PopUpManager.

Data UTM 2151.01 ME 81 . document Semnăt .788.<mx:Button label="Deseneaza harta" click="desen()" x="510" y="6" width="123" height="30"/> </mx:Application> Coala Mod Coala Nr.

Data UTM 2151.COLOR:red.TEXT-DECORATION:underline.border:1px double #817A63.} A:visited {COLOR: #FFFF00.ANEXA NR.margin-left:0px.margin-right:0px.css .btn {font-size:7.FONT-FAMILY:verdana.} A:active {COLOR: #FFFF00.} #reg {color:#ffffff.TEXT-DECORATION:none. serif.788.Arial.color:#dfddd3.text-align:center.} Coala Mod Coala Nr.Helvetica.font-size:8pt.background-color:#151616.Arial.font-family:Verdana.font-weight:normal.margin-top:0px.font-weight:normal.error {FONT-SIZE:8pt. size:auto.color:#dfddd3.} A:hover {COLOR: #7E7765.text {color:#FFFF00. document Semnăt . font-family:"Times New Roman". } body {background-color:#000000.font-weight:normal.} .01 ME 82 .font-family:Verdana.TEXT-DECORATION:none.} #entry {color:#ffffff.sans-serif.} .backgroundcolor:#2b2b18. Times.Helvetica.} A:link {COLOR:#F9F7EA.border: 1px double #817a63.sansserif.TEXT-DECORATION:none.5pt.marginbottom:0px.inup {text-align:center.} .text-align:center.3 SCRIPT CSS Style. font-size:14px.

4 STRUCTURA BAZEI DE DATE id_ava user_id Tabelul avatar tip path gander id_msg Tabelul chat msg time_msg Tabelul harta user_id Tabelul users Pass email wrt_user id path Id_user name ip online Coala Mod Coala Nr.788. document Semnăt .01 ME 83 . Data UTM 2151.ANEXA NR.

01 ME 84 . Data UTM 2151. document Semnăt .Coala Mod Coala Nr.788.

788. document Semnăt .01 ME 22 .Coala Mod Coala Nr. Data UTM 2151.

Sign up to vote on this title
UsefulNot useful