Tehnologii de Elaborare a Paginilor Web In Html Php Si Xml

Introducere

       Cu toate ca este cel mai popular mijloc de comunicare, în realitate Internetul este confuz si încurcat. Internetul este o rețea de rețele, prin intermediul căreia calculatoarele, și mai nou telefonia mobilă interacționeaza, folosindu-se de o serie de instrucțiuni cunoscute și ca protocoale. Aproape fiecare se poate conecta folosindu-și propriul computer, la Internet, comunicînd imediat cu alte computere sau utilizatori.

        De ce este confuz ? Deoarece Internetul nu are o organizare sau vreun ghid, utilizatorul fiind pus nu de puține ori în situația neplacută de a pierde timpul și de a se pierde printre pagini.

La începuturi …

        Internetul a apărut ca un experiment de proiectare a unei rețele robuste de calculatoare, asta cam pe la sfîrșitul anilor ”60. Scopul era de a se realiza o rețea de calculatoare ce ar rezista pierderii a cîtorva dintre ele fără a compromite posibilitatea de a rămîne unul pentru comunicare. Astfel Ministerul Apărării ale Statelor Unite (U.S. Department of Defence) a fost deosebit de interesat în construirea unei rețele informaționale ce ar putea rezista unui atac nuclear.

        Ca urmare acea rețea a avut un uimitor succes tehnologic, dar a fost limitată în mărime și întelegere. În mare parte, doar anumit personal din cadrul apărării și din instituțiile academice puteau avea acces la rețea, cunoscută și ca ARPANet (Advanced Research Projects Agency Network of the Department of Defence).

        Cu ajutorul unor modemuri pentru comunicația digitalizată prin intermediul liniei telefonice, cîteva persoane și organizatii indirect s-au interconectat, realizînd avantajul unei rețele de comunicații globale.

        Pe la începutul anilor ”90, cîțiva oameni de afaceri și persoane nerăbdătoare de a profita de avantajul unei ușoare și puternice comunicări globale, în final au influențat ca marea rețea de calculatoare, ce în majoritate era deținută de Guvernul Statelor Unite,  să poată fi folosită pentru un trafic de informații deschis și nerestrictiv. (Amintiți-vă că rețeaua nu fusese proiectată pentru traficul de informații comerciale.)

 1. Noțiuni generale depre WEB

1.1. Ce este WWW ?

        WWW mai pe larg World Wide Web, ceea ce în română ar însemna "țesătură răspîndită în lumea întreagă", cunoscută și sub simpla denumire de Web, este un limbaj special și un pachet de protocoale (instrucțiuni) ce ajută la trimiterea, primirea și afișarea informațiilor provenite de pe Internet. Protocoalele astfel folosite sunt cunoscute și sub denumirea de HTTP (Hyper Text Transfer Protocol). Contrar a ceea ce mulți își imaginează, Web-ul nu este o entitate fizică, o mai bună analogie ar fi să te gîndești că Internetul nu este altceva decît o rețea telefonică, iar WWW este modul în care telefonul tău reușește să contacteze un altul. Internetul este o rețea fizică, iar WWW este modul de folosire a rețelei.

Unul din primele elemente fundamentale ale WWW (World Wide Web) este HTML (Hypertext Markup Language), care descrie formatul primar în care documentele sunt distribuite și văzute pe Web. Multe din trăsăturile lui, cum ar fi independentă față de platforma, structurarea formatării și legăturile hipertext, fac din el un foarte bun format pentru documentele Internet și Web.

WWW este un sistem distribuit de hipermedia funcționând în mod client-server prin Internet. Sistemul pune la dispoziție informațiile sub forma de hipertext (mixtura între text, grafică, elemente multi-media, plus referințe încrucișate). Hipertext înseamnă că orice cuvânt, frază, imagine sau alt element al documentului văzut de un utilizator (client) poate face referință la un alt document, ceea ce ușurează mult navigarea între multiple documente sau chiar în interiorul unui aceluiași document. Structurarea riguroasă a documentelor permite convertirea acestora dintr-un format în altul precum și interogarea unor baze de date formate din aceste documente.

1.2. </DIV>Elemente de arhitectura si terminologie WEB

Vom defini în continuare cîteva concepte cheie:

Rețea : în forma de bază reprezintă două sau mai multe calculatoare ce comunică între ele;

Sînt împarțite în 2 grupuri :

Retele locale LAN (local area network) – conectează calculatoare apropiate din punct de vedere al distanței;

Retele pe arii extinse WAN (wide area network) – conectează calculatoare aflate în diferite orașe, regiuni sau țări.

Internet – rețeaua publică ce a ajuns la scara planetară fiind alcătuită dintr-un conglomerat de rețele de diverse complexități și configurații ; reprezintă suportul de comunicație pentru web și include diverse servicii.

Intranet – rețea privată aparținînd unei companii ce permite acesteia să folosească instrumente Internet gen poșta , navigație sau transfer de fișiere, dar numai in cadrul aceleiași rețele.

Host – o stație de lucru , o gazdă vizibilă în Internet; fiecare host are asociată o adresă IP (unică) și un nume.

Web (www) – o colecție de miloane de documente legate între ele , aflate pe calculatoare din întreaga lume.

În cazul în care dispuneți de un calculator și doriți să navigați în Web, accesul dumneavoastră este posibil la acest serviciu prin mai multe mijloace :

prin intermediul unui modem (telefonic sau radio), caz în care este nevoie de un cont de la un furnizor de servicii Internet (ISP – Internet Service Provider);

sau

prin intemediul unei rețele ce are acces la Internet prin intermediul unui Server.

Și desigur, ceea ce este mai important, pentru navigare se folosește un browser (Netscape, IExplorer, HotJava, Mosaic, Opera).

Browser – program interactiv ce permite vizualizarea unor documente, urmărind legaturile dintre acestea.

Hipertext – o colecție de documente, considerate noduri, legate între ele, constituind o rețea, în care legăturile sunt similare referințelor bibliografice; dar pot apare totul de bucle și structura devine astfel neliniară.

Protocol – combinație de reguli de comunicație ce trebuie respectate de calculatoarele din rețea pentru a comunica. Regulile de comunicație fac parte din definiția protocolului.

HTTP – HyperText Transfer Protocol, este un protocol proiectat special pentru Web.

        Cum spuneam protocolul este un set de reguli știute de protagoniștii celui ce îl întrebuințează. Protagoniștii tipici sunt 2 programe ce dialoghează, clientul pe de o parte și serverul WEB pe de altă parte.

Viața unei tranzacții sub protocol HTTP trece prin 4 faze :

conectare;

cerere;

răspuns;

închidere.

        Să presupunem că la stația, unde vă aflați, folosiți browserl Internet Explorer. În cursul primei faze, clientul caută să contacteze serverul web și apare în bara de stare un mesaj de genul "Opening page http://www.ournet.md/".

        Dacă tentativa eșuează, după un interval de timp numit timeout, va apare o casetă în care veți fi informați că nu a fost stabilită conexiunea dintr-o anumită cauză.

        Dacă reușește conectarea, clientul emite o cerere către serverul Web (alias server http) care conține obiectul cerut și protocolul pe baza căruia trebuie să răspundă serverul cu pricina. Dacă serverul e în stare să prelucreze cererea, el va pregăti răspunsul, altfel înștiințează prin mesaj de eroare. Pe masura sosirii obiectului acesta începe să fie afișat, se observă ca pozele prin contur din ce în ce mai clar, iar textele paginilor HTML încep să fie treptat redate pe ecran. Odată terminat transferul de obiecte pe linia de stare se observă un mesaj de genul "Document Done".

Pagina Web este un fișier care conține etichete HTML (taguri) și text ASCII. Pe masură ce browserul citește etichetele HTML, acestea sunt utilizate pentru formatarea textului. Cînd browserul întîlnește o eticheta ce corespunde unui element grafic, solicită serverului o copie a fișierului grafic corespunzător. De fiecare dată cînd browserul întalnește o referință grafică, trimite o cerere către server pentru fișierul grafic respectiv.

HTML – HyperText Markup Language – limbaj de marcare a hipertextului folosit pentru crearea de documente cu hiperlegături (hyperlinks):

este derivat din SGML (limbaj de marcare standard generalizat);

independent de hardware-ul și de sistemul de operare folosit;

este un limbaj descriptiv și utilizează etichete (tag-uri).

Tag-uri (etichete)- identificatori formați din cuvinte lizibile (text ASCII), așezate în puncte strategice în interiorul documentului Web.

Zona fierbinte (hot zone) – poate fi o porțiune de text, o imagine sau o porțiune dintr-o imagine, care fiind selectată conduce la alt document.

URL(Uniform Resource Locator ) – localizator uniform de resursă – identifică o resursă, ce este în final, un fișier.

        Scopul este de încapsulare a informației pe care o poate folosi un program Web pentru localizarea unui obiect. După ce acesta a fost localizat, URL-ul nu mai are nici un rol.

        Sintaxa: protocol://<gazda>:<port>/<cale> ? <parte de cautare>

        Exemplu : http://www.ciubex.go.ro/index.htm.

 Dacă se omite portul se consideră implicit valoarea 80. Partea de căutare lipsește în cele mai multe cazuri. Ea este apelată adesea prin intermediul link-urilor, fiind vizibile în cazul unor căutari pe Internet cu ajutorul "motoarelor de căutare", cînd va apărea scris în cîmpul de adresă.

Cele mai folosite protocoale sînt :

http – protocol de transfer hipertext;

ftp – protocol de transfer fișiere;

mailto – adresă de poșta electronică;

file – nume fișier local.

Sunt doua tipuri de URL :

Absolute – adresa completă și protocolul (ex : http://www.mail.md/).

Relative – reprezintă o cale de directoare și un nume de fișier ; un URL relativ utilizează URL asociat cu documentul curent deschis în browser.

 2. Tehnologii de elaborare a paginilor WEB

În acest compartiment se descriu tehnologiile utilizate în elaborarea proiectului dat. HTML, Java Script și PHP sunt standardele folosite în acest proiect. Indispensabil în crearea paginilor Web, HTML este un descendent al limbajului SGML, folosit pentru dezvoltarea de documente hiper-text accesibile prin Internet. Acest punct trece în proiect o serie din caracteristicile, implementările și tendințele acestui limbaj.

2.1. HTML – limbajul Word Wide Web

Cam în același timp cu deschiderea Internetului pentru uzul public,cîțiva fizicieni de la CERN, (the European Particle Physics Laboratory) au realizat un limbaj cu ajutorul căruia se puteau distribui și vizualiza aplicații multimedia, documente, … pe Internet. Așa au luat naștere Hyper Text Markup Language (pe scurt HTML), browser-ele și World Wide Web-ul. Nu mult timp le-a luat autorilor să distribuie realizarea lor sub forma unor colecții de fotografii, sunete și text. HTML-ul unifică această formă de prezentare a informației, făcînd posibilă o prezentare cît mai atractivă. Mai mult chiar, în sistemul World Wide Web prin simple legături (link-uri) se pot accesa informații de oriunde din această lume.

2.2. Prezentare generală a limbajului HTML

Documentele HTML :

se găsesc în general pe servere Web;

sînt independente de platformă și de aplicație;

conțin identificatori de marcare descriptivi (tag-uri).

<Tag>urile în HTML au două scopuri:

definesc structura documentului și aspectul lui, în momentul interpretării acestuia de către Browser;

furnizeaza identificatori care direcționează programele de căutare din Web, către zone cheie din document;

Tagurile nu sînt altceva decît niște texte simple ASCII delimitate de simbolurile "<" și ">".

Forma generală este <tag> [atribute] [text obișnuit] </tag>, dar există și etichete pentru care tagul de sfîrșit se omite.

        În afară de etichete, HTML conține și referințe de entitate caracter ce ajută la reprezentarea caracterelor speciale. Acestea încep totdeauna cu "&", sînt sensibile la tipul de literă (majuscule sau minuscule) și se termină cu ";".

Reguli pentru taguri :

numele tagului este de maxim 72 de caractere;

nu se face distincție între litere mari și litere mici;

pot conține atribupt și PHP sunt standardele folosite în acest proiect. Indispensabil în crearea paginilor Web, HTML este un descendent al limbajului SGML, folosit pentru dezvoltarea de documente hiper-text accesibile prin Internet. Acest punct trece în proiect o serie din caracteristicile, implementările și tendințele acestui limbaj.

2.1. HTML – limbajul Word Wide Web

Cam în același timp cu deschiderea Internetului pentru uzul public,cîțiva fizicieni de la CERN, (the European Particle Physics Laboratory) au realizat un limbaj cu ajutorul căruia se puteau distribui și vizualiza aplicații multimedia, documente, … pe Internet. Așa au luat naștere Hyper Text Markup Language (pe scurt HTML), browser-ele și World Wide Web-ul. Nu mult timp le-a luat autorilor să distribuie realizarea lor sub forma unor colecții de fotografii, sunete și text. HTML-ul unifică această formă de prezentare a informației, făcînd posibilă o prezentare cît mai atractivă. Mai mult chiar, în sistemul World Wide Web prin simple legături (link-uri) se pot accesa informații de oriunde din această lume.

2.2. Prezentare generală a limbajului HTML

Documentele HTML :

se găsesc în general pe servere Web;

sînt independente de platformă și de aplicație;

conțin identificatori de marcare descriptivi (tag-uri).

<Tag>urile în HTML au două scopuri:

definesc structura documentului și aspectul lui, în momentul interpretării acestuia de către Browser;

furnizeaza identificatori care direcționează programele de căutare din Web, către zone cheie din document;

Tagurile nu sînt altceva decît niște texte simple ASCII delimitate de simbolurile "<" și ">".

Forma generală este <tag> [atribute] [text obișnuit] </tag>, dar există și etichete pentru care tagul de sfîrșit se omite.

        În afară de etichete, HTML conține și referințe de entitate caracter ce ajută la reprezentarea caracterelor speciale. Acestea încep totdeauna cu "&", sînt sensibile la tipul de literă (majuscule sau minuscule) și se termină cu ";".

Reguli pentru taguri :

numele tagului este de maxim 72 de caractere;

nu se face distincție între litere mari și litere mici;

pot conține atribute ce furnizează informații suplimentare; acestea se separă prin spațiu de numele etichetei.

Structura unui document HTML :

declarația de tip < !DOCTYPE HTML xxxxxx> furnizează elementele specifice documentului (nivel HTML, limba);

antetul HEAD;

corpul BODY.

2.2.1. Tag-uri de bază

        Fiecare document este încadrat de tagul de început <HTML> și corespunzător cel de sfîrșit </HTML>. Acestea sînt opționale dar este bine ca folosirea lor să devina un obicei, deoarece informeaza programele client că documentul foloseste HTML.

Elementul HEAD :

sintaxa : <HEAD> </HEAD>;

conține informații de titlu și informații legate de subiectul general al documentului;

poate conține la rîndul lui urmatoarele elemente:

TITLE

META

BASE

Elementul TITLE :

sintaxa <TITLE> nume fereastră </TITLE>;

fixeaza titlul documentului (64 caractere max.);

poate apare numai în secțiunea HEAD;

va fi afișat în bara de titlu a browser-ului.

Elementul META :

<META name="nume" CONTENT="conținut" > – conține descrierea și cuvintele cheie asociate documentului ce vor fi interpretate de programele de căutare.

 Elementul BASE :

permite specificarea adresei de bază folosită de browser pentru interpretarea URL-urilor relative.

Elementul BODY :

este de fapt portiunea cea mai consistenta a oricarui document HTML.

Poate conține următoarele elemente:

Headings : H1, H2, H3, H4, H5, H6;

Liste: UL, OL, DIR, MENU, LI, DL ce include DT si DD;

Elemente de formatare text : I, B, U, BIG, SMALL, SUB, SUP, FONT, BASEFONT, BR, HR;

Containere de text : P, PRE, ADDRESS, BLOCKQUOTE, CENTER;

Comentarii: <!– text obișnuit –>; 

Text obișnuit;

Tabele: TABLE, CAPTION, TR, TH, TD;

Formulare: FORM, INPUT, TEXTAREA, SELECT;

Alte elemente : A, IMG, CODE, CODEBASE, APPLET, MAP.

Atributele specificate în cadrul tagului de început :

BACKGROUND = url – locația pentru imaginea de fundal (poate fi numai un fișier .gif sau .jpg);

BGCOLOR = #RRGGBB – culoarea de fundal în cazul în care nu se specifică atributul BACKGROUND sau fișierul asociat nu e găsit;

TEXT = #RRGGBB – culoarea pentru textul obișnuit;

LINK = #RRGGBB – culoarea textului sau chenarului pentru legături ce nu au fost vizitate;

VLINK = #RRGGBB – culoarea textului sau chenarului pentru legături ce au fost vizitate;

ALINK = #RRGGBB – culoarea textului sau chenarului pentru legături ce tocmai au fost activate (pîna se realizeaza noua legătura);

Culoarea este specificata prin nume (black, white) sau prin codul RGB caz în care se foloșeste notația hexazecimală precedată de simbolul #.

         Cu toată standardizarea în domeniu, modul în care apar efectiv culorile pe monitor depinde de cartela grafică și software-ul adiacent. Unele browsere pot interpreta anumite culori în moduri neașteptate.

 <IMG> – legarea unei imagini la document :

sintaxa <IMG atribute >;

atribute :

ALIGN – aliniere a imaginii in raport cu textul;

TOP – aliniaza partea suparioara a imaginii cu elementul cel mai inalt din randul ce contine imaginea;

MIDDLE

BOTTOM – aliniaza imaginea cu randul de la baza textului ce contine imaginea;

ALT – text afisat cand localizarea imaginii nu e posibila, sau textul aparut in aprope de cursorul mouse-ului, cand acesta trece peste o imagine;

SRC – URL-ul pentru resursa imagine respectiva.

Elementul ANCHOR <A>

– pentru plasare de legaturi catre alte documente sau in cadrul aceluiasi document.

Textul cuprins intre <A> si </A> va fi afisat de browser evidentiat.

Tagul <A> trebuie neaparat sa includa cel putin una dintre urmatoarele atribute NAME si HREF.

Atribute :

HREF – specifica un URL destinatie;

NAME – numele anchorei.

2.2.2. Formatarea textului

<BLOCKQUOTE>

  se foloseste pentru a cita un text; acesta apare indentat si cursiv.

<B> </B>

scriere cu BOLD.

<I> </I>

scriere cu ITALIC.

<CODE> </CODE>

 pentru a include fragmente de cod , folosind un font monospatiat.

Elemente HEADING :

<H1> – bold cu font foarte mare, centrat, cu unul sau mai multe randuri albe dedesubt;

<H2> – bold cu font foarte mare, aliniat la stanga;

<H3> – italic cu font foarte mare, usor indentat la stanga, cu cateva randuri albe deasupra si dedesubt;

<H4> – bold cu font normal, indentarea este mai mare ca la H3;

<H5> – italic normal, indentarea ca la H4, titlul are un rand alb deasupra;

<H6> – bold normal, indentarea mai mare ca la H5, titlul are un rand alb deasupra.

<P> </P>

definirea unui paragraf in cadrul unui document; primul rand din paragraf este indentat.

<PRE> </PRE>

 se foloseste pt text preformatat.

<HR>

linie orizontala pe toata latimea ferestrei.

<STRONG> </STRONG>

accentuare de font (bold).

Identificatori de fragment

toate caracterele ce urmeaza dupa simbolul #, din componenta unui URL. Acestea sunt folosite pentru a deschide documentul intr-o anumita zona, cum ar fi la inceputul paginii.

La click pe zona respectiva ar trebui sa ne pozitionam cu bowserul exact in interiorul documentului, la fragmentul de introducere. Dar pentru asta mai avem nevoie de declaratia unei locatii ancora NAME care sa aiba acelasi nume cu cel ce urmeaza dupa caracterul # din exemplul de mai sus.

<BIG> </BIG>

font de dimensiuni mari.

<BR>

scrierea textului ce urmeaza la capat de linie, fara a lasa vreun rand liber.

<CENTER> </CENTER>

centrare a unui text.

<DIV> </DIV>

impartire a unui text in unitati carora li se pot aplica anumite atribute.

<EM> </EM>

evidentiere tipografica (Italic) ; nu are atribute.

<FONT> </FONT>

selectare dimensiune de font ; intre 1 si 7; implicit este 3. La utilizarea elementului FONT, valoarea atributului SIZE trebuie precedata de "+" sau "-" pentru a specifica un font, in functie de fontul de baza al documentului.

<SMALL> </SMALL>

fonturi de dimensiuni reduse in comparatie cu fontul curent.

<STRIKE> </STRIKE>

delimiteaza o zona in care textul apare taiat cu o linie orizontala.

<STRONG> </STRONG>

evidentiere puternica.

<SUB> </SUB>

textul este scris cu caractere mai mici si este pozitionat in la nivelul unui indice.

<SUP> </SUP>

superscript, exponent.

<U> </U>

text subliniat.

2.2.3. Tabele

Elementul <TABLE>

Se foloseste pentru a crea un tabel.

Orice tabel incepe cu un titlu ptional,urmat de unul sau mai multe randuri.

Fiecare rand are una sau mai multe celule.

Celulele pot fi de 2 tipuri : celule cap de tabel si celule de date.

Tabelul poate contine : paragrafe, liste , antete, formulare, imagini si text si se foloseste de multe ori pentru o aranjare mai buna in pagina.

In celulele cap de tabel textul e centrat, iar in celulele de date textul e aliniat la stanga.

Sintaxa: <TABLE> </TABLE>

Atribute : 

ALIGN=left|center|right, WIDTH=n sau p%, BORDER=n, CELLSPACING=n, CELLPADDING=n

ALIGN – controleaza alinierea tabelului insusi dar nu a celulelor individuale poate fi : left, center , sau right;

WIDTH – latimea poate fi exprimata in pixeli (n) sau in procente (p%); o valoare de 100% inseamna ca tabelul va ocupa toata latimea ferestrei browserului; evitati sa specificati latimea tabelului in pixeli;

BORDER – specifica latimea chenarului (in pixeli) ; daca se omite , nu va fi desenat nici un chenar;

CELLPADDING – controleaza (in pixeli) spatiul dintre chenar si continutul celulelor;

CELLSPACING – controleaza (in pixeli) spatiul dintre celulele individuale.

Elemente : 

CAPTION – se foloseste pt etichetarea tabelelor, permite atributul VALIGN (top, bottom).

<TR> </TR> – Table Row indica unde incepe si se termina valoarea unui rand.

Permite atributele ALIGN SI VALIGN :

ALIGN – aliniere pe orizontala; poate avea valorile : LEFT, RIGHT, CENTER;

VALIGN – aliniere pe verticala; poate avea valorile : TOP, MIDDLE, BOTTOM.

        Prin utilizarea lui TR cu atributele de mai sus se stabilesc alinierile pe orizontala sau verticala pentru un intreg rand.
        Poate include elementele TH si TD.

<TD> </TD> – defineste o celula individuala in cadrul unei linii ; desi nu e obligatoriu este bine sa fie inchisa orice celula de date (folosind tagul </TD>); astfel se poate face citirea mai usoara a tabelelor.

Atribute : 

ALIGN=left|right|center : aliniere orizontala a continutului celulei;

VALIGN=top|middle|bottom : aliniere verticala a continutului celulei;

WIDTH=n : latimea specificata in pixeli;

HEIGHT=n : inaltimea unei celule (pixeli);

ROWSPAN=n : nr de randuri in care se poate divide o celula (implicit 1);

COLSPAN=n : nr de coloane in care se poate divide o celula;

NOWRAP : continutul celulei nu va fi rearanjat cand nu incape pe latimea celulei.

<TH> </TH> defineste o celula cap de tabel (fontul este evidentiat fata de celule de date); are aceleasi atribute ca si TD.

2.2.4. Formulare

Formular este un document creat utilizand elemente HTML. Scopul folosirii lui este culegerea de informatii de la utilizator in vederea trimiterii lor catre un program server pentru a fi procesate. Aceste informatii sunt prelucrate de un program de pe server numit script CGI. In acest fel se poate comunica interactiv cu serverul Web, acesta putand genera pagini si de a le trimite inapoi la client, pe baza informatiilor culese de la acesta. 

Pentru inceput ne vom ocupa doar de designul formularelor (partea de client), fara a ne interesa cum sunt procesate la server datele culese.

Atribute: 

ACTION=URL, METHOD=get | post, ENCTYPE=string :

ACTION : specifica URL -ul scriptului CGI responsabil de procesarea datelor culese din formular;

METHOD : modul (GET-implicit sau POST) in care sunt trimise datele catre server;

ENCTYPE : specifica tipul de continut MIME ,pentru codificarea continutului formularului (ex.uuencode)

Poate include : INPUT , TEXTAREA, SELECT.

Elementul INPUT – pt. a defini zonele dintr-un formular destinate culegerii datelor.

Atribute:

TYPE=text|password|checkbox|radio|submit|reset|file|hidden|image,

NAME=string, VALUE=string,

CHECKED, SIZE=n, MAXLENGTH=n, SRC=URL,

LIGN=top|middle|bottom|left|right

TYPE = TEXT (implicit, deci poate lipsi ) creeaza o caseta de text( pe un singur rand).

Se pot folosi cu TEXT urmatoarele atribute :

MAXLENGTH – limiteaza nr de caractere introduse de utilizator;

SIZE – defineste dimensiunea spatiului de afisare;

VALUE – fixeaza valoarea initiala a campului de intrare;

NAME – stabileste un nume pentru acest camp.

TYPE = PASSWORD pentru introducerea parolelor (caracterele nu sunt afisate); functioneaza la fel ca TEXT.

TYPE = CHECKBOX construieste casute de validare, trebuie neaparat sa includa atributele NAME si VALUE (memoreaza valoarea campului); daca sa vrea ca o caseta sa fie initial validata se foloseste atributul CHECKED.

TYPE = RADIO se foloseste pentru selectarea unei optiuni din mai multe (una si numai una) .Se poate preselecta un anumit camp folosind atributul CHECKED.

TYPE = SUBMIT -creeaza un buton, care cind este actionat trimite continutul formularului catre server; pot exista mai multe butoane SUBMIT pe acelasi formular dar fiecare trebuie sa aiba un nume diferit. Numele si valoarea butonului apasat vor fi transmise de asemenea catre server.

TYPE = RESET – creeaza un buton RESET care atunci cand este actionat reface valorile intiale ale campurilor din formular.

Elementul TEXTAREA – se foloseste pt introducerea unui text de dimensiuni mai mari.

Atribute:

NAME = string – specifica numele campului;

ROWS = r – specifica nr de randuri vizibile;

COLS = c – specifica nr de coloane vizibile.

Elementul SELECT – se foloseste pentru a crea liste derulante.

Atribute: 

NAME=string – specifica numele;

SIZE=n – nr de articole din lista ce pot fi vizibile simultan;

MULTIPLE – daca se foloseste, permite mai multe selectii simultan.

Elementul OPTION :

Atribute: 

VALUE=string (valoarea returnata de formular la alegerea optiunii respective

SELECTED (pentru selectarea initiala a unei optiuni);

Contine: text obisnuit.

2.3. EXtensible Markup Language – XML

XML – eXtensible Markup Language este un limbaj foarte flexibil bazat pe SGML. XML combină dificilul SGML (Standard Generalized Markup Language) că uneori limitatul HTML (Hypertext Markup Language). HTML este un limbaj de marcare, și înțelegerea conceptului de limbaj de marcare (markup language) este cheia înțelegerii XML.

Pe scurt XML este un limbaj de marcare care poate rula pe orice platformă, orice sistem de operare și este realizat pentru a oferi dezvoltatorilor un mecanism mai bun de a descrie conținutul paginilor pe care le realizează. XML a fost realizat inițial pentru a publica proiecte și a fost dezvoltat pentru a face schimbul de informație pe Web mai ușor și mai eficient. XML permite dezvoltatorilor să scrie definirea structurii unui document (DTD – document type definition).

XML este suficient de robust pentru a putea fi folosit la descrierea nu doar a conținutului ci și a informațiilor care descriu alte informații (metadata). Membrii W3C au realizat că HTML nu putea fi extins pentru a îngloba toate tipurile de date pentru că, dacă s-a fi procedat astfel, HTML-ul ar fi devenit prea incomod. Reîntoarcerea la SGML nu era o opțiune.

În momentul de față s-ar putea spune că XML și HTML sunt veri, dar în viitor XML s-ar putea sa devină părinte pentru HTML. Atât HTML cât și XML au plecat de la SGML, dar XML este un meta-markup language în timp ce HTML este doar un limbaj de marcare specializat. Cine știe ceva despre HTML, știe ceva despre XML. Web-ul încă are la bază HTML, așa că vor trebui cunoștințe de HTML persoanelor care doresc să apeleze la XML.

Multe din noile unelte care sunt create pentru a analiza sintaxa XML sunt realizate în Java. Pentru a include un applet Java într-o pagină Web, trebuie să fie utilizat HTML-ul. Acest lucru nu se va schimba cu siguranță în viitorul apropiat. Cel puțin în anii ce vin HTML și XML vor exista împreună pe Web, iar HTML va fi o parte necesară pentru implementarea soluțiilor XML. Probabil că una din întrebările cel mai des puse este dacă se poate folosi XML pentru a realiza pagini web. Din păcate răspunsul la această întrebare nu poate fi un simplu da sau nu. Atât în Internet Explorer 4.0 și 5.0 cât și Netscape Navigator 5.0 au integrat suport XML. Nu trebuie să se aștepte nimeni să realizeze un document XML să îl pună pe un site și să creadă că un browser obișnuit știe ce să facă cu sintaxa respectivă.

În prezent nu se poate include pe o cale simplă XML într-o pagină web. Dezvoltatorii determinați să facă acest lucru trebuie să apeleze la scripturi, realizate în JavaScript, ca să convertească un document XML într-unul HTML, ceea ce nu reprezintă o soluție prea bună. Cu ajutorul XML orice persoană poate realiza tag-uri. Numai că cei ce doresc să creeze propriile tag-uri nu o vor face foarte ușor. Pentru a realiza propriile tag-uri o persoană trebuie să realizeze propriile DTD (document type definition).

Mecanismul de realizare a unui DTD nu este foarte complicat dar realizarea unui DTD eficient și extensibil nu este nici “floare la ureche”. Nu încerc să sperii pe nimeni dar XML nu este chiar o plimbare în parc așa cum este HTML-ul.

2.3.1. XML – eXtensible Markup Language scurt istoric

Descendent al SGML, XML (eXtensible Markup Language) este un meta-limbaj utilizat în activitatea de marcare structurală a documentelor, a cărui specificație a fost dezvoltată începând cu 1996 în cadrul Consorțiului Web, la care au aderat ulterior o serie de grupuri de experți din comunitățile academice (Text Encoding Initiative, NCSA, James Clark) și industriale (SUN, IBM, Netscape, Oracle, Adobe etc.). Mai simplu decât SGML, XML este și el independent de platformă și de sistemul de operare, fiind astfel potrivit pentru utilizare în cadrul rețelelor de calculatoare neomogene.

De fapt, XML este compus dintr-o familie de limbaje menite a adapta curentele concepte de publicare a documentelor la Internet. XML este compus din:

XML (eXtensible Markup Language) – subset al specificației SGML, conceput pentru o implementare mai ușoară;

XLL (eXtensible Linking Language) – set al mecanismelor hipertext bazate pe HyTime și Text Encoding Initiative, concretizat în două componente majore:

XLink – conceput pentru descrierea legăturilor dintre obiectele Internet

XPointer – compus dintr-o serie de termeni de localizare relativi la alte locații

XSL (eXtensible Stylesheet Language) – limbaj standard al foilor de stil, ca subset al DSSSL;

XUA (XML User Agent) – direcție de standardizare a navigatoarelor XML.

Scopurile declarate ale XML-ului sunt următoarele:

ușor de utilizat pe Internet

compatibil cu SGML

documentele XML sa fie ușor de citit, clare și concise

ușurința în creare și proiectare

numărul tag-urilor sa fie minim

Elaborarea specificațiilor a fost divizata în trei faze: sintaxa, legături hiper-text și specificația de stiluri, bazată pe DSSSL (Document Style Semantics and Specification Languages); la aceasta din urmă încă se mai lucrează.

2.3.2. Format

Formatul unui document XML este similar celui SGML. Iată un exemplu:

<?XML version = “1.0” standalone = “yes” ?>

<conversation>

<greetings>Hello, world!</greetings>

<response>Stop the planet, I want to get off…</response>

</conversation>

Diferența față de SGML și HTML este că în cazul XML contează modul de scriere a tag-urilor cu caractere mici sau mari (exact ca la limbajul C): <tag> va fi diferit de <Tag> sau <TAG>.

Mai mult, în cazul legăturilor hiper-text, în XML există mai multe mecanisme de conexiuni:

independente de locație

legături specificate și organizate în afara documentului

legături n-are

legături agregate, provenite din surse multiple

legături interne, localizate în cadrul documentului.

2.3.3. Trăsături principale ale XML

Subset simplificat al SGML

foarte puternic, dar ușor de implementat

fără limite în ceea ce privește complexitatea structurilor ce pot fi definite

îndeajuns de compact pentru a fi suportat de navigatoarele Web

Oferă suport pentru uzul internațional

marcajele și conținutul pot fi reprezentate în UniCode

uneltele de dezvoltare XML pot suporta orice codificări

Metalimbaj

conceput pentru a suporta definirea unui număr nelimitat de limbaje specializate, oferind suport de extinderi

portabilitate.

2.3.4. Deosebiri esențiale față de SGML

Orice document XML trebuie să înceapă cu meta-elementul <?xml…>.

În XML nu trebuiesc realizate definiții ale tipului de document (DTD) obligatorii.

Elementele vide nu-s acceptate. Un element vid are o sintaxă modificată: <element />.

Numele de elemente și de atribute sunt case-sensitive (<tag> este diferit de <Tag> sau de <TAG>).

În XML pot fi specificate anumite instrucțiuni de procesare (processing instructions) de forma <?nume informații ?>. nume, denumit ținta, identifică instrucțiunile de procesare pentru o aplicație.

Incluziunile și excluziunile nu sunt permise, la fel parametrii de minimizare în declarațiile de elemente.

Numele începând cu xml ori XML sunt rezervate. XML predefinește semantica atributelor xml:space și xml:lang (vezi mai jos).

Regula spațiilor albe

În editarea documentelor, este uneori necesara apariția “spațiilor albe” (spații, tab-uri, linii vide). Anumite spații albe nu trebuie incluse în versiunea finală a documentului, pe când altele sunt obligatorii (de exemplu, în codul sursa sau în cazul producțiilor lirice).
Un atribut special xml:space poate fi inserat în documente pentru a specifica, în cadrul elementului în care apare acest atribut, ca spațiile albe să fie tratate în mod semnificativ. Valorile acestuia pot fi “default” sau “preserve”.

<!ATTLIST poem xml:space (default|preserve) 'preserve'>

Identificarea limbajului

Atributul special xml:lang poate fi inclus în documente pentru a defini limbajul utilizat în conținutul și valorile atributelor unui element. Un exemplu:

<p xml:lang="en-GB">What colour is it?</p>

<p xml:lang="en-US">What color is it?</p>

<quote autohr="Sainte-Beuve" xml:lang="fr">

Il n'y a que de vivre; on voit tout et le contraire de tout.

</quote>

2.3.5. Hiper-legături în XML

Specificația legăturilor în XML, denumită XLL, prezintă un model standard pentru realizarea hiper-legăturilor. O legătură exprimă o relație între resurse. O resursă este orice locație (un element identificat de un atribut ID sau conținutul unui element de legătură, de exemplu) care este adresată de o legătură. XLL dă posibilități de a defini semantica unei legături, nu doar sintaxa ei, introducând și noțiunea de legături extinse în care sunt implicate mai mult de două resurse (nu doar o sursă și o destinație) – direcția XLink. XLL introduce și pointeri extinși (prin XPointer), oferind o metodă sofisticată de a localiza resursele.

Două atribute speciale, show și actuate, permit controlul asupra comportamentului legăturii. Atributul show specifică dacă documentul pointat de o legătură este inclus în documentul curent, înlocuindu-l sau afișându-l într-o altă fereastră atunci când legătura este activată. Atributul actuate determină cum va fi activată o legătura (automat sau când e selectată de utilizator). Un exemplu de legături extinse care ilustrează relațiile dintre mai multe resurse:

<clink xml-link="extended" role="annotation">

<locator xml-link="locator" href="odix.txt">

Textul

</locator>

<locator xml-link="locator" href="adn1.loc">

Adnotari

</locator>

<locator xml-link="locator" href="adn2.loc">

Alte adnotări

</locator>

<locator xml-link="locator" href="obs.loc">

Observații critice

</locator>

</clink>

XML XPointer împrumută concepte din HyTime și TEI, oferind o sintaxă ce permite localizarea unei resurse prin traversarea arborelui de elemente al documentului conținând acea resursă. Pot fi folosite și grupuri de legături extinse (legături recursive).

2.4. JavaScript

Limbajul JavaScript a fost creat de firma Netscape. Spre deosebire de Java, care este un limbaj compilat (programele sunt compilate pe server si executate apoi local pe calculatorul client), JavaScript este un limbaj interpretat ( interpretarea limbajului se face de catre browsere, care au incorporate un interpretator ce analizeaza instructiunile JavaScript si le executa pe calculatorul client). Limbajele interpretate sunt mai simple decat cele compilate si mai usor de invatat. De asemenea, modificarea si depanarea este mult mai usor de realizat pentru ca nu mai este nevoie de compilare de fiecare data. Spre deosebire de scripturile CGI, care se executa pe calculatorul gazda (server), script-urile JavaScript sunt incarcate de pe server pe calculatorul local. Interpretatorul va decodifica instructiunile script-urilor si le va executa la momentul potrivit: la incarcarea paginii pe server, la apasarea unui buton, la miscarea mouse-ului, etc. Script-urile JavaScript fac parte din codul sursa HTML al paginilor Web, dandu-le acestora un aspect dinamic, interactiv si mult mai atractiv. Acest lucru insa are un mare dezavantaj: aceste script-uri pot fi copiate, modificate si reutilizate. In cazul applet-urilor Java nu apare aceasta problema, intrucat codul sursa al acestora nu este transferat de pe server pe calculatorul client. Ambele limbaje creeaza aplicatii independente de platforma pe care se executa. Programele Java sunt executate de masina virtuala Java iar script-urile de catre interpretator, ambele fiind incluse in navigator. In timp ce Java este un limbaj complex, orientat obiect, JavaScript este un limbaj mai putin robust; are foarte multe asemanari cu Java, insa sintaxa este mai simpla, iar regulile mai putin complexe. Chiar daca Java si JavaScript au o sintaxa asemanatoare, aceste limbaje sunt folosite in scopuri diferite. Se poate mai degraba spune ca sunt complementare decat concurente.

Java Script (partea de client)

        Pentru ca site-urile web sa fie cu adevarat interactive, in afara serviciiilor de navigatie in web, trebuie sa permita schimburi de informatii cu utilizatorul. Aceasta se face prin intermediul progamelor CGI (scripturi). Aceste scenarii sunt de doua tipuri :client si server.

Scripturile client sunt folosite in general pentru colectarea de date , pentru unele validari si pentru imbunatatirea aspectului paginii.

Scripturile server sunt programe ce stau pe serverul web, prelucreaza datele primite de la client si pot genera dinamic pagini web trimitandu-le inapoi la client. De asemenea , prin intermediul lor se poate obtine acces la baze de date. Aceste scripturi server se gasesc intr-un director /cgi-bin aflat pe nivelul imediat inferior directorului ce contine programul server.

Java Script (partea de client) 

Caracteristici JavaScript:

este un limbaj pentru crearea de scenarii atat pentru partea de client cat si pentru cea de server;

este proprietate a corporatiilor Netscape Communication si Sun Microsystems;

are o sintaxa asemanatoare limbajului C;

a fost implementat incepand cu versiune 2.0 a programului Netscape Navigator;

avantajul este ca nu necesita compilator;

scenariile Java Script sunt executate de catre browser;

instructiunile Java Script sunt incluse in cadrul unui document HTML;

cu Java Script, paginile devin "inteligente", deoarece raspund la actiuni ale utilizatorului (mouse, tastatura).

2.5. Prezentare generală a limbajului JavaScript

JavaScript oferă posibilitatea de a crea pagini mai interactive, pagini care-și modifică conținutul în funcție de… ce vrea programatorul, pagini mai spectaculoase, pagini care nu au acces la HDD și, nu în ultimul rând, pagini care nu au auzit de baze de date. Vă las pe voi să evaluați care sunt avantajele și care sunt dezavantajele. Dar… ce nu face JavaScript face PHP
Înainte de a vedea cum înserăm liniile de JavaScript în documentul HTML vă prezint câteva reguli de bază:

JavaScript este case sensitive

sintaxa este asemănătoare cu a C++

este orientat pe obiecte

Inserarea liniilor JavaScript în documentele HTML, inserarea se poate face în patru feluri:

prin folosirea tagului <SCRIPT> al HTML;

prin specificarea fișierului cu comenzi JavaScript;

prin includerea de expresii JavaScript în atributele HTML;

prin funcții de gestionare a evenimentelor.

Java este un limbaj orientat pe obiecte. La baza lui stă noțiune de clasă. Clasa apare ca șablon pentru crearea obiectelor; el poate să întrețină datele și metodele. Există diferite regimuri pentru acces la elementele clasei – private, protected, public.

Java este complect un limbaj orientat pe obiecte, fiecărei noțiuni care (clase, obiecte, metode ș.a.) corespunde cu clasa, susțin prelucrarea programelor corespunzător “noțiunilor” obiectelor.

Clasele în limbajul Java se adună în pachete. Fiecare pachet determină spațiu aparte pentru nume. Toate clasele, intrând într-un pachet, sunt unite anume prieten la prieten, se are în vedere că au acces la schimbări și metode, anume private sau protected. Pentru însemnarea moștenirii se întrebuințează cuvântul cheie extends. În limbajul Java lipsește multe, dar există înțelesul de interfață ne dă voie de a ușura această depășire. Interfața prezintă un cuplu de metode descrise. Clasele pot de a reda interfețe. Acest fapt este un cuvânt cheie implements în titlu clasei. Clasa class se întrebuințează pentru primirea în timpul îndeplinirea informației despre proprietățile “claselor” de obiecte. Metode tipice de acest fel de clase – forName (obiectul de primire a clasei class după textul numelui), newInstance (produsul obiectului nou acestei clase), getMethods (primirea obiectului masiv, descriind metoda – public a clasei).

Mecanismul curentului – linia obligatorie a operațiilor avansate a mediului. În limbajul Java curenții sunt prezentați de clase Thread, a interfeței Runnable. Programele – Java se împarte în două tipuri – aplicarea de sinestătător și apleturi. Ultimul se execută în Web-navigator și pot apărea pe rețea. Aplicarea și apleturile esențial se deosebesc după măsurile securității, primite în procesul de lucru.

2.5.1. Folosirea tag-ului <SCRIPT>

Tag-ul <SCRIPT> este un tag al HTML și poate cuprinde un număr nelimitat de linii JavaScript. Se folosește în felul următor:

<SCRIPT language=” JavaScript”>
…linii JavaScript…
</SCRIPT>

Un document HTML poate conține mai multe tag-uri <SCRIPT>. Atributul language poate specifica versiunea de JavaScript:

<SCRIPT language=”JavaScript1.0”>
<SCRIPT language=”JavaScript1.1”>
<SCRIPT language=”JavaScript1.2”>

2.5.2. Ascunderea scriptului în comentariu

Browserele care nu cunosc JavaScript vor ignora tagul <SCRIPT> și vor afișa liniile de comenzi ca text HTML. Pentru a preveni astfel de situații se introduce întregul script în comentariu HTML:

<SCRIPT language=” JavaScript”>

<!–

…linii JavaScript…

// –> </SCRIPT>

2.5.3. Specificarea fișierului cu comenzi JavaScript

Putem specifica fișierul de inclus prin intermediul atributului src al tagului <SCRIPT>. De exemplu:

<HEAD>

<SCRIPT src=”fișier.js”>

</SCRIPT>

</HEAD>

Acest procedeu este util mai ales când folosim aceleași funcții în mai multe pagini.
Liniile de comenzi introduse între <SCRIPT> și </SCRIPT> sunt ignorate dacă nu apare vreo eroare la deschiderea fișierului “fișier.js” specificat. În cazul unei erori se vor executa liniile introduse în cadrul tagului.

Fișierele JavaScript externe nu pot conține decât linii JavaScript și definiții de funcții. Este recomandat ca fișierul JavaScript sa aibă extensia .js.
Folosirea expresiilor JavaScript ca valoare a atributelor HTML. Folosind entitățile JavaScript putem specifica o expresie JavaScript ca valoare a unui atribut HTML. Valoarea entității este evaluata dinamic. În acest fel putem construi pagini HTML flexibile, pentru ca atributul unui element HTML depinde de o informație plasată undeva în pagina.

Ca și entitățile HTML, entitățile JavaScript încep cu caracterul “&” și se termină cu caracterul ”;”. În plus entitatea JavaScript este încadrată între acolade. Ex.:

<HR width=”&{barWidth};%”>

unde, barWidth este o variabilă JavaScript și reprezintă lățimea liniei orizontale în procente.

Tagul <NOSCRIPT>

Acest tag se folosește pentru cazul în care browserul care încarcă pagina nu “înțelege” JavaScript sau avem decuplat JavaScript din browser. Ex.:

<NOSCRIPT>

Această pagină conține linii JavaScript.

</NOSCRIPT>

2.5.4. Definirea funcțiilor

Funcțiile sunt una din cele mai importante părți în JavaScript. Ca în majoritatea limbajelor de programare o funcție are următoarele părți:

• cuvântul cheie function urmat de

• numele funcției, de o

• lista de parametri separați de caracterul “;”, lista încadrată de paranteze rotunde și de

• corpul funcției închis între acolade.

În general definirea funcțiilor se face în partea de antet a paginii, adică în tagul . În felul acesta toate funcțiile sunt definite înainte de apariția paginii. Există posibilitatea de a apela o funcție înainte de a fi încărcată în browser.

Folosirea metodei write()

Metoda write a obiectului document scrie în pagina HTML. Metoda este o funcție asociată cu un obiect. Apelul unei metode se face astfel:

numeObiect.numeMetoda(argumente…)

Ca argument pentru metoda write se acceptă orice număr sau string. Se pot de asemenea concatena mai multe stringuri cu caracterul “+”. Ex.:

document.write(“<HR align=’left’

width=”+barWidth+”%>”)

2.5.5. Funcții de gestiune a evenimentelor

Evenimentele sunt acțiuni ale persoanei care folosește browserul. De exemplu mutarea mouseului pe suprafața unui link, sau executarea unui click pe un buton etc. Folosirea unei astfel de funcții se face în felul următor:

<A href=”pagina.htm” onMouseOver=”document.bgColor=”red”>Text</A>

În momentul în care mouseul este pe “Text” culoarea fundalului se schimbă în roșu (dacă nu era roșu inițial). Vă prezint în continuare câteva din aceste funcții:

onClick() – se activează dacă s-a făcut click pe element

onChange() – se activează dacă s-a modificat valoarea elementului (ex. la <INPUT type=”text”>

onLoad() – se activează la încărcarea paginii (se folosește în <BODY>)

onMouseOut() – se activează dacă mouse-ul părăsește suprafața unui element

onMouseOver() – se activează dacă mouse-ul intră pe suprafața unui element

onReset() – se activează dacă utilizatorul resetează un formular

onSubmit() – se activează dacă s-a utilizatorul trimite un formular

Mai sunt și altele dar cred că acestea sunt cele mai importante acum.

Folosirea ghilimelelor

Trebuie avută în vedere alternarea tipului de ghilimele pentru a nu crea erori la citirea paginii; în interiorul unei expresii închise între ghilimele duble putem folosi doar ghilimele simple & viceversa.

2.5.6. Culoare

Există trei modalități de a schimba culoarea elementelor:

• prin atributele HTML ale tag-ului <BODY>

• prin obiectul document al JavaScript

• prin metoda fontcolor(“culoare”) a obiectului string.

Exemple:

• <BODY text=”blue”>

• document.fgColor=”yellow”

• document.write(“text roșu”.fontcolor(“red”))

Se poate schimba culoarea oricărui atribut din cele enumerate mai jos, prin obiectul document, astfel:

• culoare de fundal: document.bgColor=”culoare”

• culoare pentru text: document.fgColor=”culoare”

• culoare pentru legături: document.linkColor=”culoare”

• culoare pentru legături active: document.alinkColor=”culoare”

• culoare pentru legături vizitate: document.vlinkColor=”culoare”

2.5.7. JavaScript: trusa de instrumente

JavaScript este cel mai cunoscut și, cel mai folosit limbaj pentru crearea de script-uri pe web. Bineînțeles, că e vorba despre un limbaj obiectual și, foarte important, multi-platforma (nu știu cât de necesar era să amintesc această proprietate, poate că nici nu e vorba despre o proprietate efectivă. Idea de bază este că același cod este sau ar trebui să fie interpretat la fel indiferent de platforma pe care rulează browser-ul).

Una dintre cele mai întâlnite întrebări referitoare la Javascript este legată de “gradul de rudenie” cu limbajul Java. Afinitățile dintre cele două limbaje se regăsesc la nivelul sintaxei, al structurilor de control și, într-o anumită măsură, la securitate (nu este permisă, spre exemplu, citirea fișierelor de pe calculatorul-client). În rest, Java este un limbaj mult mai complex (ca urmare și mai greu de deprins, ca majoritatea limbajelor orientate-obiect). Diferențe există inclusiv în legătură cu rularea codului, însă prezentarea lor ar depăși scopul acestui articol. Și, sincer, nu e doar o metodă de eschivare; chiar nu au relevanta. Poate vă voi convinge dacă menționez că Netscape, care a introdus pentru prima dată în versiunea 2 a browser-ului sau – Navigator, acest limbaj de scripting l-a denumit inițial LiveScript. Doar suportul ulterior din partea Sun (știută fiind încăpăținarea – în sensul bun al cuvântului – acestei companii a impune Java) a determinat rebotezarea.

Meritul principal al JavaScript este că pune la dispoziția creatorilor de pagini web o metodă excelentă de “a dinamiza” paginile create. Și aceasta fără a apela la programarea pe partea de server (server-side programming). Fără a înlocui acest gen de programare menționat, script-urile pot rezolva o serie de probleme (e drept, nu foarte complexe; cu toate aceste complexitatea e relativă, depinzând de abilitățile programatorului) cum ar fi validarea unui câmp dintr-o formă sau afișarea unui mesaj după un click pe un buton (în general, programarea evenimentelor). Iar avantajul integrării complete în paginile HTML a căpătat o nouă dimensiune acum cu explozia interfețelor HTML (mai ales în producția CD-ROM-urilor).

Așadar, JavaScript pare să aibă cu adevărat sens, dacă raportăm mini-programale create la paginile web. Ca documentații JavaScript se găsesc peste tot pe web și vă pot ajuta să vă faceți o primă impresie despre acest limbaj. Totuși, pentru prima noastră “întâlnire” (îmi place să o numesc așa) aș prefera să aduc în discuție o serie de aspecte nu prea evidente (fără pretenția de a le epuiza), dar care ajută la înțelegerea script-urilor ce vor fi prezentate în viitor. Aceasta va da o favoare de inițiere acestui articol, dar vă va ajuta cu siguranță în viitor.

Salut nu e SALUT

Într-adevăr, JavaScript este “case sensitive”, adică se face discriminarea între literele mari și cele mici întâlnite în numele identificatorilor (nume de variabile, funcții, obiecte etc.). De aceea, este foarte important să fiți atenți la acest aspect. Depănarea script-urilor poate fi o adevărată corvoada dintr-o simplă înlocuire a literei 'A' cu 'a' în cazul unei funcții cum ar fi 'Adăuga' (care nu e nicidecum 'adăuga').

Un tip slab?!

JavaScript e un limbaj slab-tipizat în comparație cu Pascal, C++ sau Java. Astfel tipul unei variabile (sau, “rețeta de stocare în memorie”) nu este determinat în momentul creării variabilei, iar pe parcursul execuției programului se poate schimba în funcție de context. Acest fapt poate fi un avantaj, în sensul unei libertăți în conceperea programului, dar și un dezavantaj legat de ambiguitatea ce poate să apară, codul fiind mai greu de înțeles. Totuși, dacă la un moment dat, doriți să aflați tipul unei variabile aveți la dispoziție operatorul typeOf. Prin aplicarea lui se obține un string ce conține tipul variabilei (inclusiv undefined sau object, pe lângă tipurile standard).

"Punctul" + 3 = "Punctul 3"

Raportat la variabile, există așa-numita facilitate de "type-casting" (riscând o traducere, echivalentul ar fi “convertire automată a tipului”). În acest caz, în funcție de context, tipul variabilelor se modifică automat. În JavaScrpit câștigul este parțial. Astfel o variabilă numerică se conversează automat la string (cum e cazul în titlul paragrafului), însă reciproc nu este valabilă. De aceea, în multe script-uri veți întâlni funcția parseInt care convertește, în măsura posibilului, unui string în număr. Să mă explic (de ce în măsura posibilului): parseInt(x) va returna NaN (not a number), dacă x='a20'; 20, dacă x='20'; 2, dacă x='2a0';

Chiar nimic?

Există o valoare specială în JavaScipt și anume null. Adică, după cum îi spune și numele, nimic. Există diverse situații când o veți întâlni cum ar fi folosirea de variabile nedefinite dar și unele rezultate de funcții. Atrag atenția că null nu este același lucru cu șirul vid (''), de pildă: De aceea, uneori trebuie să testați cu grijă anumite rezultate etc.

Mai mult decât variabile

Trebuie spus că string-urile sunt în JavaScript obiecte. Aceasta are relevanța, mai ales, în cazul manipulării (cât trebuie folosită notația cu punct pentru aplicarea funcțiilor). Dacă doriți să convertiți un string (strA) în litere mici veți scrie: strA.toLowerCase().

Un altfel de dacă…

JavaScript permite folosirea expresiilor condiționale (existente, de atfel, și în alte limbaje de programare), ce se pot dovedi foarte utile. Exemplu: isNS = (document.layers)? 1 : 0;
Dacă browserul recunoaște această colecție de obiecte (specifica Netscape Navigator) atunci expresia se evaluează true și variabila noastră va lua valoarea 1, altfel 0. Această este o metodă extrem de simplă de a identifica un browser. Pentru Internet Explorer: isIE = (document.all) ? 1 : 0.

This

Cuvântul cheie this se poate dovedi extrem de util, căci întotdeauna se referă la obiectul curent. Dacă sunteți familiarizat cu programarea orientată pe obiecte, știți despre ce este vorba. Important e să puteți folosi o expresie de genul self.proprietate pentru a accesa proprietatea obiectului curent (mă rog, formularea suportă critici), fără a ști care obiect este efectiv.

Salvează-mă

Data fiind caracteristica multi-platoforma a JavaScript este important sa dispunem de funcții care să asigure compatibilitatea în diverse situații. Două asemenea funcții complementare sunt escape și uescape. Șirul de caractere primit ca argumet este convert la codificarea standard ISO Latin-1 și invers. Este necesară mai ales în cazul cookie-urilor (vom vorbi și despre ele) pentru a converti caractere depinzând de setul de caractere (dependent, la rândul său, de platformă).

Macrosubstituție

Macrosubstituția este facilitate puternică a unor limbaje de programare (din fericire, și la JavaScript). Poate ca în acest caz e vorba de o mini-implementare a unei asemenea facilitați (prin funcția eval), însă este foarte utilă. Astfel eval execută string-ul primit ca argument ca și cum ar fi o linie de cod JavaScript: eval('alert(strA)') va genera o fereastră (prompt window) care va afișa valoarea string-ului strA. Utilitatea este dată și de incompatibilitățile dintre browsere la nivelul referirii obiectelor suportate. În acest caz eval() ne ajută la scrierea unui cod elegant.

Imuabila perisabilitate

Toate variabilele și obiectele sunt distruse la reîncărcarea paginii web sau la încărcarea unei pagini noi. Singura soluție în acest caz (pentru crearea unei aplicații mai complexe) rămâne folosirea frame-urilor și, în speța, a unui frame ce nu își reîncarcă conținutul. Fără a avea pretenția unei introduceri în JavaScript, am dorit să atrag atenția asupra câtorva aspecte. Totuși, cred că se vor dovedi utile, mai ales când vom trece la aplicații efective, care va ajuta, poate, mai mult să vă familiarizați cu JavaScript.

Meritul principal al JavaScript este că pune la dispoziția creatorilor de pagini web o metodă excelentă de “a dinamiza” paginile create. Și aceasta fără a apela la programarea pe partea de server (server-side programming). Fără a înlocui acest gen de programare menționat, script-urile pot rezolva o serie de probleme (e drept, nu foarte complexe; cu toate aceste complexitatea e relativă, depinzând de abilitățile programatorului) cum ar fi validarea unui câmp dintr-o formă sau afișarea unui mesaj după un click pe un buton (în general, programarea evenimentelor). Iar avantajul integrării complete în paginile HTML a căpătat o nouă dimensiune acum cu explozia interfețelor HTML (mai ales în producția CD-ROM-urilor).

Așadar, JavaScript pare să aibă cu adevărat sens, dacă raportăm mini-programale create la paginile web. Ca documentații JavaScript se găsesc peste tot pe web și vă pot ajuta să vă faceți o primă impresie despre acest limbaj. Totuși, pentru prima noastră “întâlnire” (îmi place să o numesc așa) aș prefera să aduc în discuție o serie de aspecte nu prea evidente (fără pretenția de a le epuiza), dar care ajută la înțelegerea script-urilor ce vor fi prezentate în viitor. Aceasta va da o favoare de inițiere acestui articol, dar vă va ajuta cu siguranță în viitor.

2.6. PHP/FI – Personal HomePage

Scurtă istorie a PHP

La fel ca multe alte proiecte software importante, PHP s-a născut sub forma unui mic utilitar cu care trebuia să rezolve o problemă simplă și foarte particulară. În 1995, un programator pe nume Rasmus Lerdorf și-a publicat CV-ul în pagina sa Web. Pentru ca să poată să urmărească cine i-a vizitat pagina, Rasmus a introdus în pagină un tag special și a scris în Perl un script CGI care să colecteze informații despre vizitatori, pe care apoi le scria într-un jurnal (log). A botezat acest cod PHP (Personal Home Page) tools. Mai apoi, în cadrul unui proiect "de serviciu", a trebuit să realizeze o interfață între clienții de pe Web și o bază de date. A recurs la aceeași idee: taguri HTML proprii, procesate de un script CGI (de data aceasta scris în C) care le înlocuia cu conținutul care trebuia inserat în pagină. A numit aceste taguri "Form Interpreters" (FI) deoarece rolul lor era de a prelua datele transmise prin formulare HTML și de a le transforma în variabile simbolice pe care le folosea apoi pentru interogarea bazei de date.

Ce a urmat este destul de simplu: a reunit codul PHP cu FI și l-a făcut public sub numele PHP/FI. Comunitatea programatorilor a făcut restul. Programul a fost corectat, dezvoltat și extins în regim open source, depășind cu mult scopul său inițial. Deși numele PHP s-a păstrat, semnificația sa a devenit alta (cea din titlul articolului – observați caracterul recursiv, similar cu GNU). Ajuns între timp la versiunea 4, PHP este un limbaj de scripting server-side foarte solid, dotat cu peste 1000 de funcții, implementat pe numeroase platforme, conlucrând cu toate serverele Web importante și dispunând de interfețe pentru toate majoritatea bazelor de date utilizate. Popularitatea sa a crescut neîncetat, statistici Netcraft (nu foarte recente) estimând că PHP este folosit în circa 1,5 milioane de domenii Web.

Statistic, în 1996 PHP/FI era utilizat în 15.000 site-uri de web, iar în 1997 în 50.000. În 1998 PHP este utilizat în peste 150.000 site-uri.

Ce poate face PHP?

Orice. PHP este în principal axat pe partea de scripting ce rulează pe server, deci poți face orice fac și un program CGI, cum ar fi colectarea de date de la formulare, generarea de conținut dinamic sau trimitere și primire de cookie-uri. Dar PHP poate face mult mai multe.

Există trei domenii principale unde sunt folosite scripturile PHP.

Scripturi ce ruleaza pe server. Acesta este cel mai tradițional și cel mai important pentru PHP. Ai nevoie de trei lucrui pentru a face sa meargă. Interpretorul PHP (CGI sau modul de server), un server de web și un navigator de web. E nevoie ca serverul de web să fie pornit, cu o conexiune PHP instalată. Poți accesa rezultatul programelor PHP cu un navigator print intermediul serverului de web.

Scripting la linia de comandă. Poți face ca PHP să ruleze fără a fi nevoie de server și de browser, ci doar de interpretorul PHP. Această metodă este ideală pentru scripturile ce se vor a fi executate regula folosinf cron (task scheduler în Windows), sau sarcini simple de procesare a textelor.

Scrierea de aplicații ce rulează de partea clientului în mod grafic (GUI). Probabil că PHP nu este limbajul cel mai bun de a scrie aplicații cu ferestre pentru Windows sau alte sisteme de operare, dar dacă cunoști PHP foarte bine și vrei vrei să folosești niște facilități avansate a PHP-ului în aplicațiile tale ce ruleaza de partea clientului poți totuși folosi PHP-GTK pentru a scrie astfel de programe. Deasemenea ai posibilitatea de a scrie aplicații ce ruleaza pe platforme diferite folosind această metoda. PHP-GTK este o extensie a PHP-ului, nedisponibila în distribuția principală de PHP.

PHP poate fi folosit pe aproape toate marile sisteme de operare, incluzând Linux, multe variante de Unix (incluzând HP-UX, Solaris și OpenBSD), Microsoft Windows, Mac OS X, RISC OS, probabil și altele. PHP are deasemenea suport pentru majoritatea serverelor de web din prezent. Acestea includ serverele Apache, Microsoft Internet Information Server, Personal Web Server, Netscape și iPlanet, serverul Oreillz Website Pro, Caudium, Xitami, OmniHTTPd, și multe atele. Pentru majoritatea serverelor PHP are un modul, iar pentru celelalte suportă standardul CGI, PHP putând să lucreze ca un procesor CGI.

Deci, cu PHP, ai libertatea de a alege un sistem de operare și un server de web. Chiar mai mult, ai posibilitatea de a alege programarea procedurală sau programarea orientată obiect, sau chiar sa le amesteci. Cu toate acestea, nu orice facilitate a standardului POO este prezentă în versiunea curent a PHP-ului, multe librării de cod și aplicații mari (incluzând și librăria PEAR) sunt scrise folosind doar cos POO.

Cu PHP nu ești limitat să scoți rezultat HTML. Posibilitățile PHP-ului includ afișarea de imagine, fișiere PDF și chiar filmulețe Flash (folosind librăriile libswf și Ming) toate generate instant. Poți deasemeanea ca rezultatul tău să fie orice fișier text, cum ar fi XHTML sau orice alte fișiere XML. PHP poate genera autmoat aceste fișiere și să le salveze în sistemul de fișiere în loc să le afișeze, formând un cache de partea serverului pentru continutul tău dinamic.

Una dintre cele mai puternice și importante facilități în PHP este suportul său pentru o gamă larga de baze de date. Scrierea une pagini de web ce interacționeaza cu o bază de date este incredibil de simplă. Următoarele baze de date sunt suportate:

Deasemenea avem o extensie abstracta a bazei de date DBX ce îți permite într-un mod transparent dolosirea oricărei bazei de date ce suportă această extensie. Mai mult, PHP suportă ODBC, standardul Open Database Connectio, deci te poți conecta la orice altă bază de date ce suporta acest standard mondial.

PHP are deasemeanea suport pentru a conversa cu alte servicii folosind protocoale cum ar fi LDAP, IMAP, SNMP, NNTP, POP3, HTTP, COM (pe Windows) și multe altele. Poți deasemenea deschide deasemenea socket-uri de rețea și să interacționezi între aproape toate limbajele de programare Web. Apropo de interconectare, PHP are suport pentru instanțierea obiectelor Java și utilizarea lor într-un mod transparent ca obiecte PHP. Poți deasemenea folosi extensii CORBA pentru a accesa obiecte aflate la distanță.

PHP are capabilități extrem de folositoare pentru procesarea textului, de la POSIX Extins sau expresii regulare Perl până la parsarea documentelor XML. Pentru parsarea și accesarea documentelor XML, suportăm standardele SAX și DOM. Poți folosi extensia noastra XSLT pentru a transforma documentele XML.

Principiul

Presupunând că instalarea PHP nu vă va pune probleme și ca toată lumea cunoaște diferența între un script Web server-side (care este executat de serverul Web) și un script client-side (care este executat de browser), îmi rămâne de făcut precizarea că exemplele din acest articol au fost testate cu PHP 4.0.1, instalat pe un server Apache 1.3.2 rulând sub Windows 98. Fișierele cu extensia "php" sunt considerate scripturi PHP și sunt preprocesate (directiva de configurare "AddType application/x-httpd-php .php" pentru Apache), dar serverul Web poate fi configurat și altfel (o alta extensie uzuala este "phtml").

Astfel, PHP este un pachet suficient de puternic care oferă un limbaj de programare accesibil din cadrul fișierelor HTML, limbaj asemănător cu Perl sau C, plus suport pentru manipularea bazelor de date într-un dialect SQL. Acest pachet este disponibil gratuit pe Internet, pentru medii UNIX (inclusiv sursele).

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, if, break, while etc. Variabilele se declară 'din zbor', tipul lor putând fi integer, double sau string, iar numele de variabile trebuie precedat de $. Sunt permiși operatorii obișnuiți și se pot defini și funcții utilizator (prin construcția Function).

Un exemplu

Presupunem ca definim următorul formular:

<form action="/cgi-bin/php.cgi/~user/display.html" method=post>

<input type="text" name="nume">

<input type="text" name="virsta">

<input type="submit">

</form>

Se cere utilizatorului un nume și vârsta sa care vor fi procesate de programul PHP/FI conținut în fișierul display.html.

Acesta ar putea conține:

<?

if ($virsta>50);

echo "<p>Salut $nume, ești vârstic…</p>";

elseif ($virsta>30); echo "<p>Salut $nume, ești matur…</p>";

else; echo "<p>Salut $nume, ești tânăr…</p>";

endif;

>

După cum se observă, PHP oferă un limbaj script puternic și simplu, accesul la câmpurile formularului realizându-se prin intermediul unor variabile create automat.

Alături de suportul pentru încărcarea fișierelor de pe calculatorul client: upload (standard propus de E. Nebel și L. Masinter de la Xerox, descris în RFC 1867) și de suportul pentru cookies (mecanism de stocare a datelor în navigatorul client pentru identificarea utilizatorilor, propus de Netscape), PHP/FI oferă integrarea bazelor de date prin sistemul de gestiune mini-SQL (mSQL) scris de David Hughes, sistemul Postgres95 al Universității Berkeley și sistemul Solid care suportă standarde ca Ansi SQL2, ODBC, SAG CLI si X/Open SQL.

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

PHP3 – limbaj arhitectură

PHP este un limbaj de “scripting” utilizat în fișierele HTML. Scriptul PHP este rulat la nivel de SERVER.

Sintaxa PHP este o combinație intre limbajele C, Java si Perl. Scopul limbajului este de a permite programatorilor WEB sa scrie rapid pagini ce se generează dinamic.

Prin intermediul PHP3 se pot accesa Microsoft SQL Server si baze de date Microsoft Access cu ajutorul ODBC.

Noțiuni de baza în PHP

Cu ajutorul PHP se pot crea pagini de WEB dinamice, care sunt generate în momentul in care programul utilizator (de exemplu: Netscape) a formulat cererea către serverul de WEB.

Serverul de WEB trebuie sa aibă activat suportul pentru PHP. Toate fișierele care au extensia .php3 trebuie sa fie rulate de către motorul PHP.

Fișierele se creează in aceeași maniera ca si fișierele HTML.

Exemplu de pagina cu tag-uri PHP:

<html><head><title>PHP Test</title></head>

<body>

<?php echo "Hello World<P>"; ?>

</body></html>

Tag-ul PHP

Fiecare tag PHP începe cu <? php , se continua cu propoziția PHP și se închide în partea dreaptă cu ?> . Într-un fișier HTML pot exista un număr nelimitat de tag-uri PHP.

Identificarea tipului de browser

Putem vedea tipul de browser pe care utilizatorul îl folosește pentru a vizualiza pagina datorita informațiilor pe care browserul le trimite împreuna cu cererea pe care o face către serverul de web. 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, if, break, while etc. Variabilele se declară 'din zbor', tipul lor putând fi integer, double sau string, iar numele de variabile trebuie precedat de $. Sunt permiși operatorii obișnuiți și se pot defini și funcții utilizator (prin construcția Function).

3. ANALIZA CALITATIVĂ A TEHNOLOGIILOR DE CREARE A PAGINILOR WEB

3.1. XML și HTML: care limbaj este mai greu

La convorbire s-a pus întrebarea de compararea standardelor complicate HTML și XML. Se afirmă că limbajul XML este mai primitiv decât HTML. Dacă de comparat volumul descrierii acestor limbaje (documentația standardelor XML și HTML), atunci specificațiile XML ocupă de mai multe ori mai puțin loc. Trebuie de cheltuit mai puțină forță și timp pentru ca să înțelegi și să ții minte. În acest sens XML este mai simplu decât HTML.

Cu toate acestea XML nicidecum nu este mai primitiv decât HTML. Dacă de comparat posibilitățile funcționale acestor limbaje, atunci trebuie în primul rând de luat în vedere, măcar că ei au rădăcini comune – standardul internațional vestit limbajului marcat de comunicare a documentelor SGML [27], dar de asemenea se referă la diferite niveluri de abstracție.

Limbajul XML – este un metalimbaj care se află, cum se știe, submulțimea standardului SGML. Cum și SGML, el este predestinat pentru urmarea limbajelor marcate concrete de varietate pe cale de determinare a seturilor concrete de tag-uri (în XML – tipurile elementelor documentului). Aceste determinări cu ajutorul XML, limbajele sunt, în așa fel, concretizările lui.

Cât privește limbajul HTML, acesta este un limbaj concret (nu este lărgit). Funcționarea tăg-urilor însemnate sunt fixate în el, în dependență de XML. HTML s-a creat ca o simplă concretizare a SGML-ui, prezentând prin sine un puternic metalimbaj. HTML poate fi tot așa determinat de mijloacele XML (să ne aducem aminte standardul XHTML), și din acest caz el prezintă prin sine tot așa unul din concretizarea XML.

XML fiind abstract este deschis pentru lărgire (ce este oglindit în denumirea lui), și din această cauză el este mai conservat în comparare cu HTML, unde adăugarea posibilității funcționării cere trecerea procedurii de primire a unei versiuni noi de standard. Versiunile broswerelor XML vor apărea mult mai rar, cum pentru HTML, care tot mai prelungește a se dezvolta.

3.2. XML prin prisma de programare

Aplicarea programării pentru Web a început de la prelucrarea cererilor utilizatorului și generația dinamică a paginilor din partea serverului. Această tendință a primit dezvoltarea și în limbajele de programare înserate în HTML – documente. Apoi a apărut limbajele de programare elementelor HTML – documente din partea clientului. Acestea și altele sunt legate de modelul de date HTML. Astăzi, când Web-ul migrează spre specificarea structurii XML, creatorii mijloacelor de programare trebuie să ia asta în vedere și să reacționeze corect, dând, de exemplu, manipulând cu elementele XML – marcare. Standardul, chemat a marca și să rezolve această problemă, a primit denumirea de Document Object Model – DOM.

Cum se știe, totul sa început de la SGML [1], apoi a dat naștere HTML [2], iar când posibilitățile ultimului a fost epuizate sa întâmplat reîntoarcerea parțială la SGML. Ca rezultat a apărut un limbaj nou – XML (eXtensible Markup Language) sau mai precis, stiva specificațiilor limbajelor de marcare cu diferite roluri, care se bazează pe regulile sintactice generale [4].

Paralel cu procesul dezvoltării descrierea statică formală cuprinsul documentului se dezvoltă și schimbările lui capabile. De la început ele erau pentru JavaScript, pe urmă limbajul de programare Java a dat voie de amplasat în document și de schimbat orice tip de informație. Apariția VBScript și JScript înseamnă că Microsoft se îndreaptă în aceeași direcție. Treptat tehnologia Java a decăzut la nivelul mijloacelor de prelucrare aplicației Web, dar formatul de scenariu s-a îndreptat spre concepția DHTML (Dynamic HTML). Și XML și DHTML, și Java la sfârșit s-a oprit la modelul de date Web, multe din paginile Web, care din punct de vedere a utilizatorilor limbajelor de căutare XML, prezintă un curent neîntrerupt de diferite elemente [5]. Un document (pagină) – aceste sunt submulțimea documentelor (pagini) Web. Modelul de elemente Web determină în formă de graf – “pădure” din copaci.

DOM – aceasta este interfața programării aplicative în limitele modelului de elemente Web, cu alte cuvinte, un set de standarde de metode a obiectelor Web. Dacă trebuie de afișat textul în corpul documentului, aceasta se poate de făcut în fiecare limbaj de programare pe care îl susține DOM:

document.write (<kuku>);

Aici este pus în funcțiune metoda standard write a documentului obiect. În așa fel, calea de dezvoltare a tehnologiei Web traversează de la trasarea HTML static prin limbaje de criptare, Java și DHTML la specificația XML și DOM. O să ne oprim la aceste etape mai amănunțit.

3.3. Preveziuni pentru viitor

Limbajul XML oferă o metodă de comunicare inter-umană, nu de interschimb de date între mașini, realizând relații între creatori și beneficiarii documentelor acestora. XML moștenește neutralitatea platformei, limbajului și libertatea formatelor de date prezente în SGML. Toate aceste remarci ne dau certitudinea că XML oferă utilizatorilor un standard deschis de marcare a informațiilor, fără limite în ceea ce privește tehnicile de adnotare (extensibilitate asigurată), ușor de folosit (putând conferi suport pentru baze de cunoștințe), facil de implementat.

Viitorul XML nu va avea implicații doar asupra informaticienilor, ci asupra lumii economice și politice. Combinația XML cu XSL poate înlocui toate formatele de procesare de texte și publicare existente în prezent:

un format unic pentru publicarea pe Web și tipărituri

un format comun pentru stocarea datelor în cadrul diverselor produse software

un format unic pentru toate limbile

Succesul XML poate fi întrevăzut atât în lumea Web, permițând crearea de aplicații multimedia extensibile, cât și în procesarea informațiilor în general.

Origini și deziderate

XML a fost dezvoltat de către un grup de lucru XML (XML Working Grup – cunoscut la început ca și SGML Editorial Review Board) format sub auspicile Consorțiului World Wide Web (W3C) în anul 1996. El a fost condus de către Jon Bosak de la Sun Microsystems cu participarea activă a unui grup de interes special XML (XML Special Interest Group – cunoscut în trecut ca și SGML Working Group), organizat tot de către W3C. Membrii XML Working Group sunt dați într-o anexă. Dan Connolly a ținut contactul între WG și W3C.

Scopurile proiectate pentru XML sunt:

XML trebuie să fie simplu de utilizat pe Internet.

XML trebuie să suporte o mare verietate de aplicații.

XML trebuie să fie compatibil cu SGML.

Trebuie să fie ușor să fie scrise programe ce vor procesa documente XML.

Numărul facilităților opționale din XML sunt reduse la minimum, ideal, la zero.

Documentele XML trebuie să fie citibile de către utilizatori și clare într-un mod rezonabile.

Designul XML ar trebui să fie pregătită rapid.

Designul XML trebuie să fie formal și concis.

Documentele XML trebuie să fie ușor de creat.

Caracterul lapidar din marcajele XML să fie de o importanță minimă.

3.4. Dezvoltarea tehnologiilor documentelor create

HTML presupune, că documentul e alcătuit din trasarea elementelor standarde, care se reflectă într-un mod absolut.

Un set de elemente HTML – acestea sunt tipizarea componentelor unui document obișnuit:

titluri,

lista diferitor tipuri,

paragrafe,

tabele,

citare ș.a.

De altfel toate elementele sunt împărțite în două tipuri: rânduri și blocuri.

La primul tip se poate aduce paragraful, lista, tabele. La elementele de rânduri – inserarea cu cursive sau saturație, a adreselor hipertextului textului. Tot aceasta este determinat în Document Type Definition (DTD) specificației HTML, care formal este scris la SGML. Trebuie de menționat, că crearea nodurilor Web s-a transformat astăzi într-un tip diferit de lucru profesional. Prin asta nodul s-a făcut o producție unică, costul căruia nu trebuie să depășească limitile propuse (magazin virtual, slujbă informațională, ș.a.m.d.).

Prima cu ce sau împedicat autorii și proiectanții nodurilor Web – această repetare obligatorie a fragmentelor de coduri la fiecare pagină, de exemplu logotipul companiei sau meniul principal a nodurilor Web. Pentru rezolvarea acestei probleme se întrebuințează metoda de substituire, împrumutat de la macrodeterminarea programării. Așa a apărut Server Site Includes (SSI). Introducerea fișierului exterior în pagina HTML – aceasta este cel mai simplu lucru de atribuire a SSI:

<html>

<head>

<body>

. . .

<! – # include virtual = <file.htm> ->

. . .

<! – # include file = <file.htm> ->

. . .

</body>

</html>

Dar cel mai principal rol în dezvoltarea tehnologiilor de programare a documentelor componente a jucat mecanismul LiveWare, prima dată realizat în anul 1995 în serverele companiei Netscape Communications. Mulțumit SSI documentul este component de partea serverului. Dar tehnologiile Web are arhitectura de client-server. Pentru majoritatea prelucrătorilor de programare Web în limita specificării LiveWare este legat cu JavaScript. Acest limbaj simplu de programare orientat pe obiecte de partea broswerului a permis "învierea" paginii Web.

Interesant, că aproximativ toate cărțile pe JavaScript începe cu descrierea elementelor SCRIPT. Pricina e întraceea, că JavaScript presupune patru metode de plasarea codului de programare în pagina HTML și transmiterea conducerii interpretorului pentru executarea acestui cod. Marcarea elementului SCRIPT este numai unul dintre ei. Interpretarea codului a elementului SCRIPT se întâmplă numai la începutul încărcării paginii. Comanda trece la interpretator în timpul, când programa HTML analizând sintactic "se împedică" de marcarea elementului SCRIPT. Codul se îndeplinește și rezultatul lucrului se pune în document.

Acum ne oprim la tehnologia, care a stat, dintr-o parte cu dezvoltarea marcată a HTML, iar din altă parte – următorul pas spre XML. Merge vorba despre tabela cascadă de stil, Cascading Style Sheets (CSS) făcut de Microsoft. Idea de bază a CSS constă în aceea ca să separe – structura logică a documentului de formă de prezentare.

De la apariția CSS în HTML a fost posibilă utilizarea a două elemente generalizate de marcare: DIV (bloc generalizator) și SPAN (element generalizator de marcare). După aceasta se poate de alcătuit schema logică a documentelor, apoi de determinat formatul ei de reprezentare. Această metodă a schimbat radical tehnologia de proiectare a paginilor Web-nodului. Acum de la început se determină tipul paginii apoi structura logică a paginii pentru fiecare tip și în ultimul rând pentru fiecare element logic se determină conținutul și aspectul exterior.

Posibilitatea indicării stilului în fișierul exterior permite de aplicat o definire a stilurilor pentru întregul nod, și de schimbat aspectul exterior, redactând numai fișierul dat. Următorul pas în această direcție este predifinirea dinamică a stilului de partea clientului în dependență de condițiile de reprezentare a documentului și de acțiunile utilizatorului. Pentru programarea acestor schimbări se folosește limbajul de tip JavaScript. Până acum am vorbit despre dezvoltarea tehnologiilor bazate pe HTML – elementele de marcare și metodele de amplasare a lor pe pagină. Dar mai este încă un aspect al tehnologiei Web – limbajul de programare Java.

La început în Java nu era presupusă manipularea cu obiectele paginii HTML, însă real Java a fost intercalată în document în subaspect de element de marcare aplet. Ca limbaj de programare universal a interfețelor, în special grafice, Java menținea tipuri de date și obiecte mai abstracte, decât se cerea la programarea paginilor Web, în prezent situația s-a schimbat în Java sunt scrise broswere și servere. Prin urmare în Java se poate de scris SSI și de schimbat conținutul documentului în partea broswerului. Însă posibilitățile limbajului Java astăzi se folosesc în primul rând pentru pășirea particularităților negative a schimbului HTTP și extragerea graficii se schimbă dinamic. De menționat faptul că protocolul HTTP versiunea 1.1 [6] permite de componat documentul din mai multe părți ce pot fi amplasate pe servere diferite. Aceasta nu este instalarea unei noi legări pentru scoaterea imaginilor în timpul desfacerii documentului HTML, dar lista titlurilor HTTP, în care se arată URL. În așa fel, HTTP este modificat pentru menținerea documentelor compuse.

3.5. Structura logică a documentului

DTD HTML determină regula construirii documentului HTML, elementele sintactice marcate și posibila aranjare reciprocă. Dacă privim un document ca la multe alte obiecte, care se asociază cu elementele marcate, atunci DTD va da clasele ierarhice acestor obiecte. Structura logică a documentului determină relația obiectelor dintre ei. Există, în orice caz, două modele de obiecte a documentului: modelul JavaScript și DOM.

Primul model se sprijină, cu unele rezerve, practic cu toate cele mai populare broswere. Al doilea model pretinde numai la un rol standard și trebuie în viitor să se sprijine de toate broswerele.

Relațiile a diferitor obiecte între dânsele ajung, la lucru principal, la relațiile tipului “partea-întreagă”, iar structura documentului se prezintă de la sine ca un arbore. În rolul bazei se prezintă arborele elementelor de bloc marcate a documentului. Pe urmă, pe această bază se suprapune elemente minuscule și stiluri. În afară de aceasta la un document există ramuri a arborelui a claselor de obiecte a documentului, determinând în DTD. Trebuie de marcat, că structura logică este mai aproape de modelul de date Internet Explore, decât JavaScript.

3.6. Rezultate intermediare

Modelul de obiecte a documentului trebuie să servească ca nod de unire dintre programare și structura logică a documentului, cu forma lui de prezentare a exponentului. Structura logică și forma de prezentare de descrie în limbajul XML. Programarea Web – aceste limbaje sunt Java, JavaScript, JScript. Standardul DOM permite formal de descris regulile manipulării structurii documentelor XML și cuprinsul lor în limitele programării orientate pe obiecte, care realizează limbajele enumerate.

Cu mare măsură efortul proiectanților DOM reamintește încercările creării diferitor versiuni a specificației HTML (versiunea 2.0 și 3.2). Prima versiune a limbajului și ultima a patra versiune mai degrabă seamănă cu niște declarații despre intenții, prin ce sunt gata pentru întrebuințarea specificației.

3.7. Compatibilitatea tehnologiilor noi

În ultimii cinci ani Internetul a progresat virtiginos, ținând pasul pachetele de programare deja existente la cerințele actuale.

În versiunile noi a pachetelor de prelucrare a graficii, limbaje de programare, baze de date sunt implementate filtre de import, export a datelor în coduri HTML. Ca ulterior aceste date exportate să poată fi integrate în pagini Web, pentru a fi prezentate în WWW. La fel și datele care deja sunt prezentate în WWW să poată fi importate în aceste programe.

Unul din obiectivele producătorilor de soft este de a elabora și propune paralel cu softul specializat într-o oarecare direcție și un program de elaborare a paginilor Web neavând nici pregătiri profesionale pentru prelucrarea paginilor Web.

3.8. Instrumente pentru facilitarea elaborării paginilor Web

Elaborând o pagină Web se poate ușura lucrul de a introduce coduri HTML. În ultimul timp au apărut multe programe noi pentru elaborarea paginilor Web care utilizează exportarea și importarea codurilor HTML. Unele din aceste programe sunt redactoare ca: Microsoft FrontPage, Macromedia Dreamweaver, ș.a. Pentru realizarea animației sunt și apar diferite programe mici și ușor de întrebuințat de exemplu: GifAnimator (grafica în pixeli), Corel Rave 1.0 (grafică vectorială), Flash ș.a, iar pentru realizarea graficii este utilizat CorelDRAW, Photoshop, ș.a.

Pentru elaborarea paginilor Web sunt utilizate redactoarele FrontPage, Dreamweaver, ele ușurează foarte mult lucrul de elaborare, se poate utilizat pentru grafică CorelDRAW, pentru animație Flash, această elaborare se poate de reprezenat prin figura următoare.

4. Protecția muncii și sanitarie de producere

Proiectul de diplomă prezintă elaborarea unui set de programe pentru culegerea și prelucrarea informației. Rezultă problema protecției muncii atât a persoanelor care elaborează programele, cât și a utilizatorilor ei. Lucrările în sistemul menționat vor fi efectuate utilizând calculatoare personale, adică prezintă lucrul programatorilor și a operatorilor tehnicii de calcul, e necesar de a precauta cerințele pentru protecția muncii la lucrul cu tehnica de calcul, în special a calculatoarelor personale cu diferite sisteme periferice, utilizate de către personalul centrului de calcul (CC) în procesul activității vitale. Evident, integrarea și utilizarea pe larg a calculatoarelor electronice pe lângă factorii pozitivi mai are și nuanțe negative asupra persoanelor care le exploatează.

Lucrul operatorilor tehnicii de calcul necesită o atenție mare, posibilitatea de a rezolva în timp limitat probleme complexe, responsabilitatea față de acțiunile întreprinse ce duce la o tensionare emoțională și stres.

Operatorii tehnicii de calcul, programatorii, și alți colaboratori ai CC sunt supuși unor factori nocivi și periculoși cum ar fi:

nivelul ridicat de zgomot;

insuficiența iluminatului natural;

insuficiența iluminatului locurilor de muncă;

temperatura ridicată a mediului ambiant;

diferite forme de iradieri, etc.

Acțiunea factorilor indicați duce la micșorarea capacității de muncă, ca rezultat al obosirii. Apariția și dezvoltarea obosirii este legată de schimbările, ce apar în procesul muncii în sistemul nervos central, cu procese de încetinire în creier. De exemplu, zgomotul mare conduce la dificultăți în perceperea semnalelor colore, micșorează viteza de percepție a culorilor, adaptarea vizuală, micșorează capacitatea de a acționa rapid și efectiv, micșorează cu 5-12% capacitatea de muncă și duce la deteriorarea auzului.

Aflarea îndelungată a persoanei într-un mediu în care acționează mai mulți factori nocivi poate duce la o îmbolnăvire profesională.

Pentru crearea condițiilor de lucru prielnice e necesar de a lua în considerare particularitățile psiho-fiziologice ale oamenilor, plus starea igienică generală. Un rol important îl are amplasarea postului de lucru, economia energiei electrice și timpului operatorului, utilizarea rațională a suprafețelor utilizate, comodității utilizării tehnicii de calcul, respectarea regulilor de protecție a muncii.

4.1. Zgomotul

Zgomotul este unul din factori care influențează omul când el lucrează cu CE, aceasta este condiționat de funcționarea dispozitivelor ce sunt necesare în CC.

Sursele principale de zgomot în încăperi amenajate cu tehnica de calcul sunt imprimantele, tastatura, instalații pentru condiționarea aerului, dar în CE – ventilatoarele sistemelor de refrigerare și transformatoare.

La influența zgomotului pe un timp îndelungat la colaboratorii CC se observă micșorarea atenției, dureri de cap, se micșorează capacitatea de muncă. În documente de însoțire a utilajului ce produc zgomot se aduc normele timpului de lucru la acest utilaj.

În conformitate cu GOST 12.1.003-91 “Zgomot. Cerințele generale de protecție” caracteristica de normă a zgomotului locurilor de muncă sunt nivelurile presiunii de sonor (zgomot). Nivelurile accesibile a zgomotului, lucrând cu CE, sunt prezentate în tabelul 1:

Tabelul 4.1.

Nivelurile admisibile a zgomotului

Pentru micșorarea zgomotului la locurile de muncă se efectuează următoarele acțiuni:

Arhitectural-planificative. Clădirile se proiectează și se construiesc în așa mod ca la locurile de muncă să nu fie depășit nivelului admisibil. Întrucât sistemul va fi utilizat la CC existent aici se poate de obținut micșorarea zgomotului amplasând în încăperi vecine utilajului cu zgomot ridicat;

Tehnico-organizatorice. Pentru micșorarea zgomotului la CC se efectuează reparația și ungerea utilajului (imprimantelor). Se poate de aranjat utilajul în așa fel ca el să facă mai puțin zgomot;

Acustice. În CC se instalează podele tehnologice și poduri fixate în balamale. Distanța între podul de bază și podul fixat în balamale 0,5-0,8 m, iar înălțimea podelei tehnologice 0,2-0,6 m.

4.2. Securitatea electrică

Utilajul CE este foarte periculos pentru operatori, deoarece lucrând la acest utilaj operatorul poate să atingă unele părți care sunt sub tensiune. Trecând prin om curentul electric efectuează influența optică, biologică termică, ce poate aduce la traumă electrică (GOST 12.1.009-91).

O importanță mare pentru emiterea cazurilor neplăcute și periculoase are organizarea corectă a exploatării utilajului electric, efectuarea lucrărilor de montare și profilactică.

Legarea la nul este o măsură de protejare de electrocutare prin deconectarea strictă și în viteză a rețelei în caz de apariție a tensiunii pe carcasă sau în cazul străpungerea izolării. Deconectarea strictă se efectuează, dacă curentul de scurt circuit format prin faza și firul nul este destul de mare ca declanșatorul să lucreze corect.

Scopul calculării este determinarea secțiunii firului nul, care satisface condiția funcționării protecției maximale de curent. Valoarea protecției se determină după puterea instalației electrice proiectate. Curentul de scurtcircuit trebuie să fie mai mare de trei ori decât curentul nominal a siguranței Is.c. ≥ 3In

4.3. Microclimatul

Deoarece CE sunt surse de eliminare a căldurii, ce poate ajunge la mărirea temperaturii și micșorarea umidității aerului. În încăperi se atrage atenție la controlul parametrilor microclimatului în Săli de Calcul (SC). În SC mărimea medie a eliminărilor de căldură constituie 310 W/m2. Eliminările de căldură de la instalații de iluminare tot sunt mari, mărimea specifică a lor este 35-60 W/m2. În afară de aceasta la microclimatul încăperi încă influențează surse exterioare de eliminare a căldurii, cum sunt căldura de la radiația solară ce intră prin fereastră, și afluența căldurii prin construcții de barieră ce nu sunt transparente.

Asupra corpului omului și lucrului utilajului a CC influențează foarte mult umiditatea aerului relativă. La umiditatea aerului egală cu 40% lenta magnetică devine mai fragilă, se mărește uzura capilor magnetice și apare câmpul magnetic static la mișcarea purtătorilor de informației în CE.

La efectuarea controlului locurilor de muncă se măsoară temperatura, umiditatea relativă și viteza de mișcare a aerului în încăperi, totodată se efectuează măsurări la începutul, mijlocul și sfârșitul perioadelor calde și rece a anului.

Se măsoară temperatura și umiditatea aerului cu psihometre aspiratoare, iar viteza de mișcarea a aerului – cu electro-anemometre, catatermometre. Ordinea de măsurare a indicilor microclimatului se stabilește în conformitate cu GOST 12.1.005-91. Parametrii se normează după acest GOST și sunt prezentați în tabelul 2.

Tabelul 4.2.

Normele microclimatului.

În acest tabel se aduc parametrii pentru categoriile de lucru 1a (mai puțin de 120 kkal/oră, lucrul șezând) și 1b (de la 120 până la 150 kkal/oră, lucrul șezând), deoarece lucrul programatorului sau operatorului se poate atribui la una din aceste categorii.

Pentru crearea la locuri de muncă a condițiilor meteorologice bune se efectuează condiționarea și ventilarea aerului, utilizarea ventilatoarelor înăuntru CE pentru a reduce eliminările de căldură. Utilajul se aranjează în așa fel ca influența căldurii asupra corpul omului va fi cea mai mică.

4.4. Securitatea antiincendiară

Focul este o forță gigantică. Oamenii antici vedeau în el o sursă a vieții și în prezent el încălzește și hrănește doar cu acea diferență că pentru contemporanul nostru la nivelul actual de dezvoltare a condițiilor sociale că această întrebare a scăzut cu mult. Însă acest fapt nu ne permite să neglijăm focul, doar o mică neatenție și marea lui forță poate aduce o nenorocire. Iată de ce e atât de important rolul securității antiincendiare în organizarea protecției muncii la întreprinderi și în încăperi administrative.

Incendiul se numește arderea necontrolată în afara unui focar special care aduce pierderi materiale. Dacă această ardere nu cauzează pierderi materiale, atunci ea se numește inflamare. Explozia este o transformare chimică momentană, caracterizată prin degajarea de energie și crearea de gaze comprimate.

După gradul de ardere (oxidare însoțită de degajarea unei cantități mari de căldură) materialele de construcție se împart în următoarele tipuri: nearzătoare – sub acțiunea focului nu se inflamează, nu se corodează; greu inflamabile – sub acțiunea focului se inflamează, se carbonizează doar în prezența sursei de inflamare, iar după lichidarea ei arderea sau carbonizarea încetează (materialele se gips sau beton, materiale din argilă); inflamabile – sub acțiunea focului se inflamează și se carbonizează și continuă acest proces și după lichidarea sursei de inflamare (toate materialele organice, ce nu corespund cerințelor indicate anterior).

Materialele, ce posedă capacități ridicate de inflamabilitate se numesc periculoase din punct de vedere incendiar, iar capabile de explozii și detonare fără participarea oxigenului.

Cauzele incendiilor și exploziilor pot fi electrice după caracter și neelectrice. La categoria electrice se referă: scânteia în aparatele electrice, descărcările electrostatice, fulgerele ș.a.

Cauzele incendiilor și exploziilor cu caracter neelectric pot fi: exploatarea incorectă a aparatului de sudură cu gaz, pistoalele de lipit, dereglarea dispozitivelor de încălzire, a echipamentului de producție, încălcarea procesului tehnologic ș.a.

În dependență de procesele tehnologice și proprietățile materialelor după gradul de pericol incendiar și exploziv încăperile și clădirile se împart în cinci categorii A, B, V, G, D în conformitate cu normele proiectării tehnologice.

Aceste categorii sînt stabilite și aprobate de către ministerele ramurilor corespunzătoare. Majoritatea clădirilor industriei radioelectronice se referă la categoria V.

Clădirile și edificiile se împart după gradul de stabilitate antiincendiară (SNIP 201.02-85), care se determină de limitele minimale de stabilitate incendiară ale construcțiilor de bază și limitele maximale de răspundere în ele a focului. Aceste limite se determină în baza testării probelor în cuptoare speciale.

Protecția antiincendiară a obiectelor naționale este reglementată de STAS 12.11.033-81 “Cerințe generale”, normelor și regulilor constructive, regulilor protecției antiincendiare a ramurii.

Factorii principali pentru viața omului ce apar în timpul incendiului sunt: focul deschis, temperatura ridicată a aerului și obiectelor, produsele toxice ce ard, fumul, micșorarea concentrației de oxigen în aer, distrugerea încăperilor, echipamentului și explozia.

Pentru prevenirea incendiului trebuie luate următoarele măsuri:

excluderea apariției mediului arzător;

excluderea apariției în mediul arzător a surselor de inflamare;

menținerea temperaturii și presiunii mediului arzător mai jos de nivelul maxim admisibil de ardere.

Pentru prevenirea incendiului sunt aplicate un șir de măsuri. Barajele antiincendiare din clădiri și edificii la care se referă pereții antiincendiari, barajele și acoperirile antiincendiare, ușile și altele trebuie să fie executate din materiale ne inflamabile și de asemenea să fie prevăzută autoînchiderea lor. Ferestrele antiincendiare nu trebuie să aibă posibilitate de deschidere.

Pentru anunțul incendiului se utilizează legăturile radio și telefonice, sirenele, traductoare de semnalizare a incendiului. Fiecare unitate economică trebuie să dispună de mijloace de legătură pentru chemarea urgentă a pompierilor. Toate mijloacele de legătură antiincendiare trebuie să aibă acces deschis în orice timp.

Cel mai răspândit și ieftin mijloc de stingere a incendiului este apa care permite consumarea efectivă a căldurii aruncate de focarele de incendiu. Totodată apa nu poate fi folosită pentru stingerea lichidelor ușor inflamabile (benzină, gazul lampant, uleiuri minerale) și a materialelor care în contact cu ea elimină substanțe inflamabile (carbonatul de calciu).

În încăperile închise pentru lichidarea incendiului se recomandă utilizarea vaporilor de apă atât pentru stingerea materialelor solide cît și a substanțelor lichide.

În condițiile de laborator pentru stingerea incendiului poate fi folosit instinctorul cu volumul de șapte litri ce conține 97% etil bromic și 3% soluție de oxid carbonic. Componența aflată sub presiune în timpul utilizării se elimină sub formă de spumă. Durata funcționării este de circa 40s, distanța de aplicare – 4- 5 metri. El se utilizează la stingerea instalațiilor electrice aflate sub tensiune, deoarece brom etilul nu conduce curentul electric. Pentru protecția oamenilor de produsele toxice ale arderii și de fum se utilizează ventilatoarele și canalele de ventilare.

4.5. Radiație

Intensitatea radiației Roentgen de energie joasă se controlează la locuri de muncă cu monitoare, care lucrează sub tensiunea la cinescop 15 kV și mai mult. Norma nivelului de radiație roentgen este 100 mcP/oră, dar în timpul de azi se utilizează mai mult monitoare cu nivelul radiație mai mică, ce aduce la micșorarea influenței factorilor dăunători asupra programatorului sau operatorului. La efectuarea tezei de licență a fost utilizat monitorul cu tensiunea la cinescop mult mai mică de 15 kV, și de aceea acest factor nu a fost înregistrat de dispozitiv, adică a fost mai puțin de normă.

Încă se măsoară și se normează intensitatea radiației ultraviolete (la lungimea de undă 336 nm) și infraroșie (la lungimea de undă 700 – 1050 nm) ce influențează asupra omului, nu trebuie să depășească 10 W/m2.

Radiația electromagnetică se normează după componente electrice (50 V/m) și magnetice (50 A/m) de aflare în această zonă de radiere în timp de 8 ore. Tensiunea înaltă a câmpului electric între monitorul și operatorul aduce la efecte neplăcute. La distanța de 5 – 30 cm de la monitor tensiunea nu trebuie să depășească nivelul admisibil după norme, ce sunt stabilite în dependența de timpul aflării la locul de muncă. Niveluri admisibile de tensiune sunt prezentate în tabelul 3.

Tabelul 4.3.

Niveluri admisibile de tensiune.

Controlul radiației de toate tipurile se efectuează în conformitate cu regulile ce sunt expuse în îndrumare speciale.

4.6. Parametrii vizuali ai imaginii

Efectuând controlul asupra condițiilor de lucru la locuri de muncă cu monitoare trebuie să fie măsurate și evaluate următorii parametri a imaginii:

deformarea imaginii;

contrastul de strălucire a imaginii;

variația strălucirii elementelor simbolului;

lungimea, lățimea, raportul lățimii la lungimea;

lățimea liniei de contur a simbolului;

modulație de strălucire a rasterului;

distanța între cuvinte, rânduri;

vibrația și fugă (licărire) imaginilor.

Prezența sau lipsa licăririi imaginii se stabilește după metode experimentale sau de calcul. Metoda experimentală permite de evaluat și vibrarea imaginii. Prezența vibrării se determină prim metodă măsurărilor directe. Celelalte caracteristici a ecranului se stabilesc după rezultatele măsurărilor directe și indirecte. După control, parametrii se compară cu recomandațiile prezentate în tabelul 4.

Tabelul 4.4.

Parametrii monitorului.

Totodată o importanță mare are rezoluția ecranului, care se determină de tipul adaptorului grafic (CGA, EGA, VGA, SVGA), adică cât mai mare este rezoluția ecranului atât mai bună este imaginea.

4.7. Efecte psihofiziologice

Lucrul operatorilor cere încordarea mintală și emoțională foarte mare, concentrarea atenției și responsabilitatea de lucrul efectuat. Operatorii foarte des suferă de diferite stări proaste a vederii, dureri de cap, dureri de mușchi în regiunea spatelui. În afară de asta, în mare măsură se exprimă senzația oboselii și încordarea mintală în timpul lucrului; ei nu se simt odihniți după somn de noapte.

Sarcina asupra vederii și caracterul încărcării lucrului provoacă la operatori disfuncția stării a analizatorului de vedere și sistemei nervoase centrale. În procesul de lucru la dânșii se micșorează rezistența vederii clare, sensibilitatea electrică și labilitatea analizatorului de vedere, și încă apar disfuncții a mușchilor ochilor.

Sunt interesante cercetările stării psihofiziologice a operatorilor de introducere a datelor, care efectuează lucrul monoton în timp de 2 ore în condiții favorabile de muncă. Tot odată s-a arătat că din 80% de persoane supuse experienței capacitatea de lucru și activitatea mintală se micșorează peste 45 – 60 minute de lucrului neîntrerupt. În afară de aceasta la persoanele supuse experienței la sfârșitul zilei de lucru sa mărit timpul de reacție și cantitatea greșelilor la executarea problemelor. S-a micșorat frecvența de contractare a inimii de la 64 până la 40 batăi/min; la 74% persoane s-a tulburat bilanțul mușchilor ochiului.

Efectuarea multor operații la CC cer încărcarea îndelungată a mușchilor spatelui, gâtului, mâinilor și picioarelor ce aduce la apariția oboselii. Motive principale de apariția oboselii sunt înălțimea irațională a suprafeței de lucru, masei și scaunului, lipsa spatelui de sprijin și brațelor, unghiuri incomode de îndoire în articulațiile umărului și cubitului, unghiul de înclinare a capului, repartizare incomodă a documentelor, monitoarelor și tastaturii, lipsa spațiului și suportului pentru picioare.

4.8. Iluminatul

La lucrul cu CE o importanță mare are crearea mediului de iluminare optimal, adică organizarea rațională iluminatului natural și artificial în încăperi și la locuri de muncă, deoarece lucrând la CE încărcarea în general cade pe organe de vedere. Dacă omul lucrează mai mult de o jumătate a zilei de lucru la CE la el se observă înrăutățirea vederii, ce constituie 62-94%. Asta în primul rând este oboseala ochilor, dureri foarte mari și simțul de nisip în ochi, mâncărime și senzație de usturare în ochi. Totodată senzațiile dureroase în ochi apar în general la sfârșitul zilei de lucru. Din această cauză toate locurile de muncă cu CE se amplasează în locuri ce sunt protejate de căderea luminii difuzate pe ecranul terminalului. Pentru asta se utilizează încăperi cu iluminarea unilaterală (într-o singură direcție), totodată ferestrele trebuie să fie cu storuri sau jaluzele pentru excluderea efectului de orbire și strălucirea ecranului terminalului.

Iluminarea artificială a locului de muncă se efectuează în felul următor, nivelul iluminării locului de muncă trebuie să corespundă caracterului de lucru vizual, iluminarea încăperii să nu depindă de timpul de afară, fluxurile de lumină să aibă direcția optimală și utilajul trebuie să fie economic, inofensiv, durabil și simplu în exploatare.

La instalarea iluminatului artificial se fac următoarele măsurări:

iluminarea la locuri de muncă;

caracterul de strălucire a ecranului, mesei;

strălucirea petelor reflectate în ecran.

Se efectuează măsurări de control a iluminării și strălucirii la locuri de muncă cu diferite terminale care sunt în încăperi și care se află în diferite condiții de iluminare, acolo unde sunt plângeri ale personalului. Măsurarea iluminatului se efectuează în timpul întuneric a zilei.

Punctele de control pentru măsurările iluminatului la locuri de muncă se amplasează:

în centrul ecranului;

pe tastatură;

pe document în planul amplasării lui;

pe masă în zona de lucru.

Efectuarea măsurărilor se efectuează în conformitate cu GOST 2.4.940-91. Măsurarea caracterului de strălucire a ecranului se efectuează la strălucirea ecranului nu mai puțin de 35 c/m2. Iluminarea locului de muncă se normează după SniP II-4-91 și depinde de caracterul lucrului vizual, contrastul obiectului, fonului și tipul fonului.

4.9. Calcularea iluminatului artificial a încăperii.

Pentru organizarea activității normale a omului o mare însemnătate are crearea condițiilor normale de iluminare naturală și artificială la locul de muncă.

Iluminarea de producție, corect proiectată și îndeplinită, aduce la rezolvarea următoarelor probleme:

ea îmbunătățește condițiile de muncă, micșorează oboseala, contribuie la creșterea productivității muncii și a calității producției, acționează binefăcător asupra mediului de producere, acționează pozitiv din punct de vedere psihologic asupra lucrătorului, ridică securitatea muncii și micșorează traumatismul în producție ;

Analizatorul vizual percepe ca lumină oscilațiile electromagnetice cu lungimea de undă 380-770 nm.

Iluminarea optimă se alege în dependență de particularitățile (coeficientul de reflecție) suprafeței de lucru și detaliile ce sunt analizate pe ea (lungimea perioadei de lucru vizual, precizia, caracterul procesului de lucru).

O cerință importantă este menținerea regimului de iluminare. La iluminarea artificială devierile în rețea nu trebuie să depășească + 2.5 – 3 %.

Prin norme sunt introduse valorile minimale a iluminării care permit realizarea cu succes a lucrului vizual.

În dependență de sursa de lumină, iluminarea de producere poate fi de două tipuri: naturală (lumina de zi) și artificială, generată de lămpile electrice.

Iluminatul artificial poate fi de lucru, de pază, de serviciu, de evacuare, de avarii.

Iluminatul de lucru poate fi local, total și combinat.

Este interzis de a folosi la întreprinderile mari iluminatul local, deoarece el trebuie să constituie nu mai puțin de 10 % din iluminatul total.

Normarea iluminatului artificial se efectuează de SNiP-II-4-79.

La fel se normează iluminarea locurilor de muncă în funcție de :

1. categoria lucrului vizual

a) precizie înaltă E =5000 lx

b) fără precizie E =30 lx

2. în dependență de tipul de iluminat-adică total sau local.

3. în dependență de fon.

4. în dependență de contrast.

Raportul dintre fon și contrast indică subcategoria (a,b,c,d).

Iluminatul artificial există datorită becurilor incadiscente și fluoriscente.

Deci după cum știm, iluminatul natural este schimbător în timp sau chiar poate să nu existe, de aceia se folosește iluminatul artificial, iar pentru instalarea corectă a iluminatului artificial se fac careva calcule.

Calcularea iluminatului artificial se face conform metodei randamentului de flux de lumină.

După această metodă se găsește fluxul de lumină a becurilor care asigură iluminarea locurilor de muncă, normarea

unde:

Sp – suprafața podelei

En – iluminarea normată minimală, 500 lx (precizie mijlocie)

z – coeficientul iluminării neuniforme, Z=1.1-1.2

Kr – coeficientul de rezervă, se ține cont de tipul de becuri și de tipul de încăpere.

N – numărul de instalații de iluminat

n – numărul de becuri într-o instalație

Kuf- coeficientul utilizării de către lampele radiante a fluxului de lumina pe

suprafața calculată.

Se determină în dependență de tipul becului, coeficientului de reflectare a podelei, pereților, tavanului, indicile încăperii:

unde

A,B – dimensiunile încăperii

h – înălțimea suspensiei lămpilor de aspra suprafeței de lucru.

Kum – coeficientul de umbrire, se introduce pentru încăperile cu poziția fixă a lucrătorilor, și este egal cu 0.8-0.9.

Înălțimea lampei asupra ariei de iluminare se calculează după formula:

Hc=H-Hl-Ht;

unde

H – înălțimea încăperii 4,00 m.

Hl- distanța de la pod până la partea de jos a lampei, 0,5 m

Ht- distanța de la podea până la suprafața iluminată, 0,75 m

Hc=4,00 – 0,10 – 0,75 = 3,15 m

Calculăm i,

Având coeficientul de reflectare a tavanului și pereților egal cu 0.7 și după indicile calculat i, coeficientul de folosire a fluxului de lumină din tabel egal =0,30

Calculăm

Pentru iluminare utilizăm 10 instalații a câte 2 becuri fiecare. Alegem cea mai apropiată lampă de tipul EA-80 cu fluxul de lumină 5220 lm care asigură pe deplin iluminarea centrului de calcul.

4.10.Ecologia.

Elaborarea și exploatarea produselor soft este una din cele mai curate din punct de vedere ecologic activitatea de producere a oamenilor. Sunt utilizate numai surse de energie electrică. Hârtia nu se utilizează în cantități mari, și ea poate fi ușor reciclată după utilizare. Calculatoarele nu poluează mediul în tipul exploatării.

5. APRECIEREA CHELTUIELILOR ECONOMICE ALE PROIECTULUI DE DIPLOMĂ

Compartimentul economic este o parte integră a proiectului de diplomă și constă în calcularea efectului economic care se va manifesta odată cu aplicarea în practică a rezultatelor experimentelor, ipotezelor și produselor primite la sfârșitul îndeplinirii tezei, indiferent dacă rezultatul va fi un produs care va participa sau nu la un proces economic. Deci compartimentul economic reprezintă o continuare a părții științifice a tezei, adică evaluarea ei din punct de vedere economic. Aici vor fi studiate toate procesele economice necesare pentru îndeplinirea proiectului: fondurile proiectului, cheltuielile care s-au produs pe parcurs, venitul după realizarea produsului ș.a.

5.1. Planificarea rețea pentru “Web – site muzical”

Proiectele tehnologice contemporane sunt caracterizate de următoarele particularități:

tehnica nouă utilizată este foarte complexă și este construită utilizând ultimele elaborări științifice.

accelerării vitezei de elaborare a proiectelor.

proiectele referitoare la complexele tehnicii de calcul și softului sunt supuse uzurii morale foarte rapide.

necesitatea proiectării de sistemă la elaborarea softului și sistemelor tehnice.

Toate acestea au dus la necesitatea de creare a noi metode de planificare. Una din aceste metode prezintă modelarea procesului de elaborare, adică prezentarea legăturilor și caracteristicilor lucrărilor în procesul elaborării proiectului.

Metodele tradiționale de planificare presupun utilizarea celor mai simple modele de construirea a diagramelor de tip consecutive și ciclice.

Dar în asemenea diagrame nu este posibil de a prezenta legăturile dintre niște lucrări, de unde rezultă imposibilitatea de a afla cât de importantă este lucrarea dată pentru executarea scopului final. Pot apărea diferite întârzieri în timp, ce apar pe porțiuni de interconectare a lucrărilor, care sunt complicat de prezentat în diagrame. De obicei, î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 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, de a corecta toată diagrama în legătură cu schimbarea termenilor de efectuare a unei lucrări, ce este necesar de a efectua ca să nu schimbăm termenul de efectuare a întregului complex de lucrări.

Aceasta este doar o parte mică din neajunsurile metodelor utilizate în prezent pentru planificarea și prezentarea grafică a planurilor de pregătire a producerii. Aceste neajunsuri în mare pare sunt excluse de către sistemele de planificare și dirijare în rețea utilizate în prezent.

Sistemele de planificare și gestiune în rețea prezintă un complex de metode grafice și de calcul, metode de control și de organizare, care asigură modelarea, analiza și reconstruirea dinamică a planului de executare a proiectelor complexe.

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. Așa indicatori, în dependență de condițiile concrete, pot fi:

răspuns;

timpul minim pentru elaborarea întregului complex de lucrări;

costul minim al elaborării proiectului;

economia maximală a resurselor.

Particularitățile sistemului de planificare și gestiune în rețea în general sunt următoarele:

se realizează metoda proiectării de sistem la rezolvarea problemelor de organizare a gestiunii proceselor;

se utilizează modelul informațional-dinamic special (graful-rețea) pentru descrierea matematico-logică a procesului și calculul automat (conform algoritmului) a parametrilor acestui proces (durata, costul, forțele de muncă, etc.);

se utilizează sisteme de calcul pentru prelucrarea datelor operative pentru calculul indicatorilor și primirea rapoartelor analitice și statistice necesare.

Documentul de bază în sistemul de planificare și gestiune în rețea este graful-rețea (modelul rețea), care prezintă modelul informațional-dinamic, în care sunt prezentate legăturile și rezultatele tuturor lucrărilor, necesare pentru atingerea scopului final.

Tabelul 5.1.

Graful-rețea.

Continuarea tabelului 5.1.

Tabelul 5.2.

Determinarea duratei lucrărilor (timpul în zile)

Figura 5.1.

Graful-rețea pentru elaborarea SI “Proiectarea unui Web Site Muzical”.

Continuarea figurii 5.1.

Graful-rețea pentru elaborarea SI “Proiectarea unui Web Site Muzical”.

Continuarea figurii 5.1.

Graful-rețea pentru elaborarea SI “Proiectarea unui Web Site Muzical”.

Tabelul 5.3.

Calculele parametrilor grafului-rețea.

Tabelul 5.4

Componența grupului de lucru.

5.2. Evaluarea economică a proiectului.

Tabelul 5.5.

Executarea lucrărilor de către lucrători.

Pentru salariu remunerat de bază sau cheltuit

Sb = 1740 + 3900 + 2730 = 8370,00 lei.

Salariu auxiliar (18%)

Sa = 8370 0,18 = 1506,60 lei.

Defalcări în Fondul Social (28%)

Cfs = (8370,00 + 1506,60) 0,28 = 2705,45 lei.

Cheltuielile totale pentru achitarea salariului

Ct = 8370,00 + 1506,60 + 2705,45 = 12582,05 lei.

Plus fondul de pensii (1%): 12582,05+12582,05*0,01=12707,87 lei.

Programul va fi scris la calculatoare arendate cu 5 lei pe oră.

Proiectarea protocolului a necesitat de de ore de lucru la calculator. De aici rezultă ca suma cheltuielilor pentru ore-mașină va constitui:

Smas = 552 * 5 = 2760,00 lei.

Tabelul 5.6.

Cheltuielile pentru procurarea softului necesar.

De asemenea s-a procurat literatură tehnică în valoare de 380,00 lei și rechizite de birou în valoare de 44,5 lei.

În timpul elaborării proiectului au fost implicate următoarele mijloace tehnice:

calculator personal

imprimantă

Amortizarea se calculează conform formulei de uzură directă:

unde

Ci – costul utilajului;

Na – norma de uzură;

Tu – timpul de utilizare.

Tabelul 5.7.

Calculul amortizării

Pentru elaborarea programului s-a utilizat calculatorul de tip Duron 700 MHz. Un astfel de calculator consumă 300 W/h. Imprimantă laser ce consumă până la 50 W/h. Calculul cheltuielilor de energie electrică se ia în conformitate cu timpul de utilizare a utilajului ținând cont că ziua de muncă are durata de 6 ore.

Pentru calculul energiei consumate utilizăm formula:

Wunit = Pcons • tfuncț ,

unde Pcons – este puterea de consum a unității timp de o oră;

tfuncț – este timpul de funcționare a unității.

Wcalc = (300*3) * 92 * 6 = 496800 W/h = 496,8kW/h.

Wimprim = 50 • 6 • 6 = 1800 W/h = 1,8 kW/h.

La momentul elaborării proiectului tariful pentru energia electrică este de 0,68 lei pentru un kW/h. În total obținem suma necesară pentru a acoperi cheltuielile de energie electrică.

Σ Wunit =496,8 + 1,8 = 498,6 kW/h.

Cheltuielile de energie electrică constituie: Chen.electr. = 498,6 * 0,68 = 339,05 lei.

Tabelul 5.8.

Cheltuielile prețului de cost și prețului de livrare al “ Web – site muzical”

5.3. Efectul social

Pe lîngă evaluarea economică a proiectului se poate evidenția și efectul social.

Proiectul meu reprezintă un avantaj din punct de vedere social. El este elaborat astfel, încît poate fi renovat după preferințe în toată ziua, săptamîna sau luna.

Site-ul dat are următoarele avantaje:

Costul pentru elaborarea proiectului este relativ mic în comparare cu alte Web Site-uri;

Fiabilitatea – proprietatea sistemului de a cădea foarte rar în pană;

Disponibilitatea – Site-ul este disponibil tuturor doritorilor care au acces la Internet;

Generalitatea – nu are importanță platforma (Unix sauWindows), sistema de operare (Windows 9x, ME, 2000 sau XP);

Comoditatea – Site-ul are o interfață comodă și frumoasă (din punct de vedere al stilului);

Unicitatea – Site-uri, care se ocupă cu muzica mai există, dar proiectul dat mai are icorporate noutăți, galerie foto, muzică (în domeniu muzical), iar adăugător conține lecții și sfaturi de Web-Design.

Site-ul dat permite navigatorilor pe Web să acceseze informații utile și totodată îi scutește de cheltuieli inutile sau pierdere de timp pe Internet în căutarea acestei informații pe diferite servere.

CONCLUZII

Cel puțin pentru cinci ani de acum încolo, HTML-ul, mai ales prin facilitățile oferite de standardul 4.0, va fi principalul limbaj de marcare a paginilor Web, dând proiectanților de site-uri Web flexibilitate, ușurința în design și suport pentru includerea de elemente interactive. Va trebui însă să ofere și posibilitatea de introducere de formule matematice oricât de complicate și elemente de realitate virtuală, plus mecanisme de interogare a bazelor de date eterogene și distribuite. Complementar, XML se afla încă la începuturi atât privind cercetările teoretice, cât și aplicațiile dezvoltate.

Care ar putea fi soluția optimă pentru viitor? HTML împreună cu Java, care tinde sa câștige tot mai mult teren, sau paradigma agenților mobili (entități abstracte călătorind între diverse noduri de rețea) numiți de creatorii săi de la IBM agleți? Un alt limbaj de marcare sau folosirea de noi tehnologii inteligente de acces la Internet?

Răspunsul ni-l va oferi viitorul.

Cert este că oricare ar fi tehnologia de elaborare a paginilor Web în viitor, ea ar trebui să rezolve o sumedenie de probleme cu care se confruntă astăzi Internetul. Cea mai stringentă problemă este problema securității păstrării și transmiterii informației. Pe planul doi ar fi problema de supraveghere a respectării unui eventual cod de etică la elaborarea și prezentarea site-urilor. Un alt obiectiv al Internetului pentru viitor, va fi cu certitudine, structurizarea mai bună a informației din Internet. Această structurizare poate fi ori conform domeniului de utilizare, ori limbii în care este prezentată informația.

Cu toate neajunsurile pe care le are în prezent, Internetul este o sursă de informare destul de accesibilă. Diferite persoane din orice domeniu de activitate se pot documenta accesând Internetul și nu numai, oricine își poate prezenta activitatea pe o pagină Web (prezentarea mărfii, prestarea serviciilor ș.a.).

Internetul devine tot mai preferabil ca mijloc de comunicare (poșta electronică, teleconferințe, tebele de discuții și dezbateri ș.a.)

O noțiune mai nouă în Internet este comerțul electronic care din anumite probleme tehnice și de securitate se află în faza testărilor finale.

Indiferent de câte minusuri are astăzi Internetul, viitorul va depinde într-o oarecare măsură anume de el. Anume asta trebuie să ie în calcul promotorii tehnologiilor de elaborare a paginilor Web pe viitor.

BIBLIOGRAFIE

Lynn M. Bremner, Anthony F. Iasi, Al Servati „Intranet” Editura ALL București 1997.

Matt Strazniskas „Photoshop 5” Editura ALL București 1999.

Kris Jamsa “Programarea în Web”

Macromedia Dremweaver

Microsoft Frontpage

„PC WORLD Revista programatorilor” Octombrie 2000.

http://www.infoiasi.ro

http://www.pcreport.ro

http://www.google.com

http://www.epress.ro

http://www.omen.ru

http://www.ournet.md

ANEXA 1.

Listingul programului

index.html

<html>

<head>

<title>Pagina de start</title>

<meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">

<STYLE>

<!–

A.ssmItems:link {color:black;text-decoration:none;}

A.ssmItems:hover {color:black;text-decoration:none;}

A.ssmItems:active {color:black;text-decoration:none;}

A.ssmItems:visited {color:black;text-decoration:none;}

//–>

</STYLE>

<SCRIPT SRC="ssm.js" language="JavaScript1.2">

//Dynamic-FX slide in menu v6.5 (By maXimus, [anonimizat])

//Site: http://maximus.ravecore.com/

//For full source, and 100's more DHTML scripts, visit http://www.dynamicdrive.com

</SCRIPT>

<script>

function sendmail()

{

var s = 'mailto:';

s = s + '?subject=Un site interesant&body=Viziteaza '+

document.location+'! – Aici gasesti totuldespre javascript!'

document.location=s;

}

</script>

<SCRIPT SRC="ssmItems.js" language="JavaScript1.2"></SCRIPT>

<style TYPE="TEXT/CSS">

<!–

.link1 { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 11px; color: #FFFFFF}

.text1 { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 11px; color: #FFFFFF}

.text1Bold { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 11px; color: #FFFFFF; font-weight: bold}

–>

</style>

<script language="JavaScript1.2">

//Hover-up Menu Bar: By Dynamicdrive.com

//Credit must stay intact for use

//Visit http://www.dynamicdrive.com for this script and more

//CSS stylesheet for menu bar

//Customize background color (#FFF2BF) and link color (black):

var cssdefinition='<style>\n.menuitems{\nborder:2.5px solid #FFF2BF;\n}\n\n.menuitems a{\ntext-decoration:none;\ncolor:black;\n}\n<\/style>'

//No need to edit beyond here

if (document.all||document.getElementById)

document.write(cssdefinition)

function over_effect(e,state, bgcolor){

if (document.all)

source4=event.srcElement

else if (document.getElementById)

source4=e.target

if (source4.className=="menuitems"){

source4.style.borderStyle=state

source4.style.backgroundColor=bgcolor

}

else{

while(source4.tagName!="DIV"){

source4=document.getElementById? source4.parentNode : source4.parentElement

if (source4.className=="menuitems"){

source4.style.borderStyle=state

source4.style.backgroundColor=bgcolor

}}}}

</script></head>

<body LEFTMARGIN="0" TOPMARGIN="0" MARGINWIDTH="0" MARGINHEIGHT="0" LINK="#FFFFFF" VLINK="#FFFFFF" ALINK="#FFFFFF" bgproperties="fixed" bgcolor="#663333">

<script>

var interval = 1000;

var culori= new Array(

"#003366","#003366","#003366","#003366","#003366",

"#003366","#003366","#003366","#003366");

var i=1,back=0; // daca am ajuns la ultima culoare ma intorc

function degrade()

{

if (document.all)

// script valabil doar pentru IE 5.5+

{

if (back==0)

i++;

else

i–;

C = culori[i];

document.body.style.scrollbarBaseColor = C;

if (i>=culori.length-1)

back=1;

if (i<=1)

back=0;

timer=setTimeout('degrade()', interval)

// mai apelez functia dupa inca un interval

}

}

degrade();

//apelez functia cand este incarcata pagina

</script>

<table width="95%" border="1" height="151" bgcolor="#663333" align="center" bordercolor="#000000">

<tr>

<td height="137" bgcolor="#993333">

<div align="center"><img src="pics/banner.jpg" width="327" height="149" border="1"></div>

</td>

</tr>

</table>

<table border="1" cellspacing="0" cellpadding="0" height="36%" bgcolor="#663333" width="947" align="center" bordercolor="#000000">

<tr valign="TOP">

<td bgcolor="#003366" height="755" width="178">

<div align="right">

<p><font face="Arial" size="2"><span class="menuitems">

<!–Customize menu dimension, initial menu color (#2E536B) and hover color (#FFE271) –>

</span></font></p>

<p>&nbsp;</p>

<table width="92%" border="0" cellspacing="0" cellpadding="5" height="148" align="center">

<tr valign="top">

<td height="21">

<div align="center"><b><font face="Verdana, Arial, Helvetica, sans-serif" size="3" color="#FF0000">

<font size="4">[ <font color="#00CCFF">MENIU</font> ]</font></font></b></div>

</td>

</tr>

<tr valign="top">

<td height="168">

<p align="center"><span class="text1">Daca va veti apropia cu mouse-ul

de patratul roshu din stinga, veti deschide meniul site-ului.</span><br>

<b><font color="#FF0000" size="4">&lt;&lt;=</font><font color="#FF0000">

<font color="#00FF00" size="4">Aici</font> <font size="4">&lt;&lt;=</font></font></b></p>

<p>&nbsp;</p>

</td>

</tr>

</table>

<p>&nbsp;</p>

<p align="center"><img src="pics/Foto/pic21.jpg" width="153" height="300"></p>

<p align="center">&nbsp;</p>

</div>

</td>

<td bgcolor="#663333" height="755" width="17"> <font color="#FF0000" size="3"><b>A</b></font>

<p align="center"><font size="3"><b><font color="#FF0000">B</font></b></font></p>

<p align="center"><font size="3"><b><font color="#FF0000">C</font></b></font></p>

<p align="center"><font size="3"><b><font color="#FF0000">D</font></b></font></p>

<p align="center"><font size="3"><b><font color="#FF0000">E</font></b></font></p>

<p align="center"><font size="3"><b><font color="#FF0000">F</font></b></font></p>

<p align="center"><font size="3"><b><font color="#FF0000">G</font></b></font></p>

<p align="center"><font size="3"><b><font color="#FF0000">A</font></b></font></p>

<p align="center"><font size="3"><b><font color="#FF0000">B</font></b></font></p>

<p align="center"><font size="3"><b><font color="#FF0000">C</font></b></font></p>

<p align="center"><font size="3"><b><font color="#FF0000">D</font></b></font></p>

<p align="center"><font size="3"><b><font color="#FF0000">E</font></b></font></p>

<p align="center"><font size="3"><b><font color="#FF0000">F</font></b></font></p>

<p align="center"><font size="3"><b><font color="#FF0000">G</font></b></font></p>

<p align="right">&nbsp;</p>

</td>

<td height="755" width="732" bgcolor="#003366">

<div align="right">

<table width="100%" border="0" cellspacing="0" cellpadding="0" height="28">

<tr bgcolor="#333333">

<td height="25" bgcolor="#2E536B"> <font face="Arial" size="2"><span class="menuitems">

</span></font>

<div style="background-color:#2E536B;width:80%;height:23px;padding-top:5px" onMouseOver="over_effect(event,'outset','#FFE271')" onMouseOut="over_effect(event,'solid','#2E536B')" onMouseDown="over_effect(event,'inset')" onMouseUp="over_effect(event,'outset')">

<div align="right"><font face="Arial" size="2"><span class="menuitems"></span>

<span class="menuitems"></span> <span class="menuitems"><a href="http://freewarejava.com/cgi-bin/Ultimate.cgi"><font face="Arial, Helvetica, sans-serif" size="3"><b><font face="Arial" size="2"><span class="menuitems">

</span></font><font size="2">Pagina de start</font></b></font></a></span>

<font size="2"><b><font face="Arial, Helvetica, sans-serif"><span class="menuitems"><a href="http://www.flamingtext.com">

Adaugare in &quot;Alese&quot;</a></span> <span class="menuitems"><a href="mailto:[anonimizat]">

E-m@il me </a></span></font><font face="Arial" size="2"><font size="2"><b><font face="Arial, Helvetica, sans-serif"><span class="menuitems"></span></font></b></font></font></b></font></font></div>

</div>

</td>

</tr>

</table>

<div align="left">

<p>&nbsp;</p>

</div>

<table border="0" cellspacing="0" cellpadding="4" align="center" width="85%" height="76">

<tr align="CENTER">

<td height="134"><img width="205" height="144" src="pics/Foto/FOTO/002_6227.JPG"></td>

<td height="134"><img src="pics/Foto/FOTO/002_6559.JPG" width="249" height="148"></td>

<td height="134"><img src="pics/Foto/FOTO/limp%20bizkit.jpg" width="251" height="144"></td>

</tr>

</table>

<br>

<br>

<table border="0" cellspacing="0" cellpadding="5" align="center" width="90%" height="277">

<tr>

<td valign="top" colspan="5" height="102">

<table width="98%" border="0" cellspacing="4" cellpadding="0" align="center" height="93">

<tr>

<td width="172" bgcolor="#003366" height="18">&nbsp;</td>

<td width="277" bgcolor="#29383D" height="18">

<div align="center"><b><font face="Verdana, Arial, Helvetica, sans-serif" size="3" color="#FF0000">Unde

am nimerit ?</font></b></div>

</td>

<td valign="bottom" bgcolor="#003366" width="172" height="18">

<div align="center"><b></b></div>

</td>

</tr>

<tr bgcolor="#003366">

<td colspan="3">

<p><span class="text1"><font face="Verdana, Arial, Helvetica, sans-serif" size="2" color="#000000">

Ceea ce vedeti inaintea ochilor reprezinta un proiect de

diploma, care are ca scop crearea unui <i><font color="#FF0000"><b>site

muzical</b></font></i>. Toatea despartiturile site-ului

le puteti vedea in meniul principal, care se afla pe partea

stinga a paginii. Asadar, LA TREABA.</font></span></p>

</td>

</tr>

</table>

</td>

</tr>

<tr>

<td valign="top" width="51%" height="114">

<table width="98%" border="0" cellspacing="4" cellpadding="0" align="center" height="93">

<tr>

<td width="43" bgcolor="#003366" height="5">&nbsp;</td>

<td width="212" bgcolor="#29383D" height="5">

<div align="center"><b><font face="Verdana, Arial, Helvetica, sans-serif" size="3" color="#FF0000">Ce

este bun pe site ?</font></b></div>

</td>

<td valign="bottom" bgcolor="#003366" width="47" height="5">

<div align="center"><b></b></div>

</td>

</tr>

<tr bgcolor="#003366">

<td colspan="3" height="38">

<p>In interiorul lui se afla o arhiva de muzica, tab-uri de

chitara, ceva soft si multe poze cu formatiile de tot genul.

Sper sa gasesti aici ceva util pentru tine. :-)</p>

</td>

</tr>

</table>

</td>

<td valign="top" colspan="4" width="49%" height="114">

<table width="97%" border="0" cellspacing="4" cellpadding="0" align="center" height="77">

<tr>

<td width="40" height="8" bgcolor="#003366">

<div align="center"></div>

</td>

<td valign="bottom" bgcolor="#29383D" width="185" height="8"><b><font face="Verdana, Arial, Helvetica, sans-serif" size="3" color="#FF0000">Expuneti-va

parerea !</font></b></td>

<td valign="bottom" bgcolor="#003366" width="46" height="8">&nbsp;</td>

</tr>

<tr bgcolor="#003366">

<td colspan="3" height="62">

<p><font face="Verdana, Arial, Helvetica, sans-serif" size="2" color="#000000">Se

invita toti doritorii sa-si expuna parerile (bune sau poate

nu prea…). Acest lucru poate fi facut in Guest Book-ul

din meniu. </font></p>

</td>

</tr>

</table>

</td>

</tr>

<tr>

<td valign="top" colspan="5" height="323">

<table width="100%" border="0" cellspacing="4" cellpadding="0" align="center" height="62">

<tr>

<td bgcolor="#003366" height="10">

<div align="center"><b><font face="Verdana, Arial, Helvetica, sans-serif" size="3" color="#FF0000">Recomandeaza-ne

! </font></b></div>

</td>

</tr>

<tr bgcolor="#003366">

<td height="64">

<div align="center">Daca ai gasit ceva util pentru tine, gindeste-te

si la prietenul tau. </div>

<p align="center"><span onClick="sendmail()">

<script language="">

function sendmail()

{

var s = 'mailto:';

s = s + '?subject=Un site interesant&body=Viziteaza '+

document.location+'! – Aici gasesti totuldespre muzica!'

document.location=s;

}

</script>

<input type="submit" value="Recomandeaza Site-ul unui prieten" name="submit">

</span></p>

</td>

</tr>

</table>

<span onclick="sendmail()">

<form>

</form>

</span>

<table width="100%" border="0" cellspacing="4" cellpadding="0" align="center" height="62">

<tr>

<td bgcolor="#003366" height="10">

<div align="center"><b><font face="Verdana, Arial, Helvetica, sans-serif" size="3" color="#FF0000">Scrie-mi

parerea pe E-mail</font></b></div>

</td>

</tr>

<tr bgcolor="#003366">

<td height="191">

<p> Nu vrei sa-ti expui parerea in Guest Book din motive private?

Foarte bine, atunci scrie-mi-o pe E-mail</p>

<FORM onSubmit="CheckForm()" METHOD="post" action=mailto:[anonimizat]>

<pre> Numele meu este : <input type="text" name="username2" size="16"></pre>

<div align="center">

<div align="left">

<pre> Si vreau sa-ti spun ca : <INPUT TYPE="text" NAME="username" size="36">

<BR> <input type="submit" value="Asta e parerea mea !" name="submit2"></pre>

</div>

</div>

</form>

</td>

</tr>

</table>

</td>

</tr>

</table>

</div>

</td>

<td bgcolor="#663333" height="755" align="CENTER" width="19" class="text1Bold">

<font color="#FF0000" size="3"><b>A</b></font>

<p align="center"><font size="3"><b><font color="#FF0000">B</font></b></font></p>

<p align="center"><font size="3"><b><font color="#FF0000">C</font></b></font></p>

<p align="center"><font size="3"><b><font color="#FF0000">D</font></b></font></p>

<p align="center"><font size="3"><b><font color="#FF0000">E</font></b></font></p>

<p align="center"><font size="3"><b><font color="#FF0000">F</font></b></font></p>

<p align="center"><font size="3"><b><font color="#FF0000">G</font></b></font></p>

<p align="center"><font size="3"><b><font color="#FF0000">A</font></b></font></p>

<p align="center"><font size="3"><b><font color="#FF0000">B</font></b></font></p>

<p align="center"><font size="3"><b><font color="#FF0000">C</font></b></font></p>

<p align="center"><font size="3"><b><font color="#FF0000">D</font></b></font></p>

<p align="center"><font size="3"><b><font color="#FF0000">E</font></b></font></p>

<p align="center"><font size="3"><b><font color="#FF0000">F</font></b></font></p>

<p align="center"><font size="3"><b><font color="#FF0000">G</font></b></font></p>

</td>

<td bgcolor="#003366" height="755" align="CENTER" width="114" class="text1Bold">

<div align="right"></div>

</td>

</tr>

</table>

<div align="right"></div>

<p align="center"><font color="#FFFF00"> Copyright &copy; 2000 Birsanu Sergiu. All rights reserved.</font></p>

</body>

</html>

news.html

<html>

<head><title>Noutati</title>

<meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=KOI8-R">

<style TYPE="TEXT/CSS">

.link1 { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 11px; color: #FFFFFF}

.text1 { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 11px; color: #FFFFFF}

.text1Bold { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 11px; color: #FFFFFF; font-weight: bold}

</style>

<script language="JavaScript1.2">

var cssdefinition='<style>\n.menuitems{\nborder:2.5px solid #FFF2BF;\n}\n\n.menuitems a{\ntext-decoration:none;\ncolor:black;\n}\n<\/style>'

if (document.all||document.getElementById)

document.write(cssdefinition)

function over_effect(e,state, bgcolor){

if (document.all)

source4=event.srcElement

else if (document.getElementById)

source4=e.target

if (source4.className=="menuitems"){

source4.style.borderStyle=state

source4.style.backgroundColor=bgcolor

}

else{

while(source4.tagName!="DIV"){

source4=document.getElementById? source4.parentNode : source4.parentElement

if (source4.className=="menuitems"){

source4.style.borderStyle=state

source4.style.backgroundColor=bgcolor

}

}

}

}

</script></head>

<body bgcolor="#663333" LEFTMARGIN="0" TOPMARGIN="0" MARGINWIDTH="0" MARGINHEIGHT="0" LINK="#ffffff" VLINK="#ffffff" ALINK="#ffffff" bgproperties="fixed" text="#FFFFFF">

<table width="88%" border="1" height="41" bordercolor="#000000" align="center">

<tr>

<td bgcolor="#993333" height="97">

<p align="center"><img src="pics/news.jpg" width="304" height="140"></p>

</td>

</tr>

</table>

<table background="pics/bg.gif" border="1" cellspacing="0" cellpadding="0" height="14%" bgcolor="#ffffff" width="876" align="center" bordercolor="#000000">

<tr valign="top">

<td bgcolor="#003366" height="721" width="182">

<p>&nbsp;</p>

<p>&nbsp;</p>

<table width="97%" border="0" cellspacing="0" cellpadding="5" height="127" align="center">

<tr valign="top">

<td>

<p align="center"><span class="text1"><font color="#00FF00"><b><font size="2">Arhiva

de noutati</font></b></font></span></p>

<p align="center"><b><font color="#00CCCC" size="2">Ce mai nou a fost</font></b></p>

<p align="center"><span class="text1"><font color="#00FF00"><b><font color="#FF0000">[

</font></b></font></span><span class="text1"><b><font color="#FFFFFF" link="red" alink="yellow">LUNA

TRECUTA</font><font color="#ff0000" link="red" alink="yellow"> </font></b></span></p>

<p align="center"><span class="text1"><font color="#00FF00"><b><font color="#FF0000">[

</font></b></font></span><span class="text1"><b><font color="#FFFFFF" link="red" alink="yellow">SAPTAMINA

TRECUTA</font><font color="#ff0000" link="red" alink="yellow"> ]</font></b></span></p>

<p align="center"><b><font color="#FF0000">L M Mr J V S D</font></b></p>

</td>

</tr>

</table>

<p>&nbsp;</p>

</td>

<td bgcolor="#663333" height="721" width="20">

<h5 align="left">&nbsp;</h5>

<h5 align="left">&nbsp;</h5>

<p align="right">&nbsp;</p>

<p align="right">&nbsp;</p>

<p align="right">&nbsp;</p>

</td>

<td height="721" width="625" bgcolor="#003366">

<table width="105%" border="0" cellspacing="0" cellpadding="0" height="28">

<tr bgcolor="#333333">

<td height="25" bgcolor="#2e536b"> <font face="Arial" size="2"><span class="menuitems">

</span></font>

<div style="WIDTH: 80%; PADDING-TOP: 5px; HEIGHT: 23px; BACKGROUND-COLOR: #2e536b"

onMouseOver="over_effect(event,'outset','#FFE271')"

onMouseOut="over_effect(event,'solid','#2E536B')"

onMouseUp="over_effect(event,'outset')"

onMouseDown="over_effect(event,'inset')"

>

<div align="right"><font face="Arial" size="2"><span class="menuitems"></span>

<span class="menuitems"></span> <span class="menuitems"><a href="index.html"><font face="Arial, Helvetica, sans-serif" size="3"><b><font face="Arial" size="2"><span class="menuitems">

<!–Customize menu dimension, initial menu color (#2E536B) and hover color (#FFE271) –>

</span></font><font size="2">Home</font></b></font></a></span>

<span class="menuitems"></span> <span class="menuitems"><a href="http://freewarejava.com/cgi-bin/Ultimate.cgi"><font face="Arial, Helvetica, sans-serif" size="3"><b><font face="Arial" size="2"><span class="menuitems">

</span></font></b></font></a></span><font size="2"><b><font face="Arial, Helvetica, sans-serif"><span class="menuitems"><a href="mailto:[anonimizat]">

E-m@il me </a></span></font><font face="Arial" size="2"><font size="2"><b><font face="Arial, Helvetica, sans-serif"><span class="menuitems"></span></font></b></font></font></b></font></font></div>

</div>

</td>

</tr>

</table>

<p align="center"><b>NOUTATILE ZILEI</b></p>

<table width="92%" border="0" align="center" height="643" bordercolor="#000000" bgcolor="#003366">

<tr>

<td colspan="4" height="101">

<div align="center">

<p><font color="#FF0000"><b>Indragostitii sint din nou impreuna</b></font></p>

<p align="left"><font color="#00FF00">Britney Spears si Justin Timberlake s-au impacat definitiv. Pop-Principesa iradiaza de bucurie si povesteste tuturor celor, care sint gata sa o asculte, despre cosmarul pe care l-a trait despartita de Justin</font></p>

</div>

</td>

</tr>

<tr>

<td colspan="4" height="5">

<p align="center"><font color="#FF0000"><b>Tribut pentru Jimi Hendrix</b></font></p>

<p align="left"><font color="#00FF00">In luna noiembrie a acestui an Jimi Hendrix ar fi implinit 60 de ani. In cinstea legendarului chitarist american toamna se pregatesc mari festivitati in Siattle si la Paris. Sora muzicianului vrea sa produca un album-tribut al fratelui sau.</font></p>

</td>

</tr>

<tr>

<td colspan="4" height="127">

<p align="center"><b><font color="#FF0000">Batausi la concertul lui Eminem</font></b></p>

<p align="left"><font color="#00FF00">La concertul lui Eminem, care a avut loc la Washington SUA s-a pornit o miscare in rezultatul careia au avut de suferit maimult de 30 de oameni. Cum sustin &quot;gurile rele&quot; cauza traumelor a constituit-o neintelegerile dintre fani. </font></p>

</td>

</tr>

<tr>

<td colspan="4" height="43">

<p align="center"><b><font color="#FF0000">Eurovision</font></b></p>

<p><font color="#00FF00">C</font><font color="#00FF00">oncursul Eurovision-2002, care s-a desfasurat simbata 25.05.2002 la Tallin s-a incheiat cu victoria cintaretei din Lituania нБТЙС оБХНПЧБ. </font></p>

</td>

</tr>

<tr>

<td colspan="4" height="87">

<p align="center"><font color="#00FF00"><b><font color="#FF0000">Luna

de miere pentru J. Lopez s-a terminat</font></b></font></p>

<p><font color="#00FF00">Jennifer Lopez, care este proaspat casatorita cu dansatorul Cris Judd, si, parind mai mult decit multumita de mariajul sau, a recunoscut, ca viata ei cu sotul nu este tocmai o dulceata… </font> </p>

</td>

</tr>

<tr>

<td colspan="4" height="94">

<div align="center">

<p><font color="#FF0000"><b>Doua albume de la Ricky Martin</b></font></p>

<p align="left"><font color="#00FF00">Fanii lui Ricky Martin vor obtine de la idolul lor anul acesta dintr-o data 2 discuri noi. Unul din ele va fi in engleza, iar celalalt-in spaniola. Unele compozitii vor intra in ambele volume, dar nu se vor copia </font></p>

</div>

</td>

</tr>

</table>

</td>

<td height="721" width="20" bgcolor="#663333">&nbsp;</td>

<td height="721" width="17" bgcolor="#003366">

<div align="right">

<div align="left">

<div align="center">

<p>&nbsp;</p>

<p>&nbsp;</p>

</div>

</div>

</div>

</td>

</tr>

</table>

<p>&nbsp;</p></body>

</html>

guestbook.php

<?

include "config.php";

include "passwd.php";

function a1(){

global $a11,$a12,$a13,$a25;

if(!empty($a25))$a25="$a25";

else{

$a25="0";}

?>

<html>

<head>

<meta charset=windows-1251>

<title><?echo$a11?></title>

</head>

<body alink=<?echo$a13?> background=<?echo$a25?> bgcolor=<?echo$a12?> link=<?echo$a13?> text=<?echo$a13?> vlink=<?echo$a13?>>

<style>

a:visited{text-decoration:none}

a:hover{text-decoration:underline}

a:link{text-decoration:none}

</style>

<?}

function a2(){

?></body>

</html>

<?}

function a3(){

global $a1,$a2,$a3,$a5,$a6,$a7,$a14,$a15,$a16,$a17,$a18,$a19,$a20,$a21,$a22,$a23,$a24,$a26,$a39;

a1();

?>

<center>

<font face=verdana size=2><a href=<?echo$a1?>?a66=a1>adauga o inscriere</a></font>

</center>

<br>

<?

$a27=file($a2);

$a28=count($a27);

if(!isset($a26))$a26=0;

?>

<center>

<table bgcolor=<?echo$a14?> border=0 cellpadding=1 cellspacing=0 width=530>

<tr>

<td>

<table bgcolor=<?echo$a15?> border=0 cellpadding=2 cellspacing=0 width=530>

<tr><td><br>

<?

for($a29=$a26;$a29<min($a26+$a3,$a28);$a29++){

list($a30,$a31,$a32,$a33,$a34,$a35,$a36,$a37,$a38,$a39,$a40,$a41)=split("\|","$a27[$a29]");

if(empty($a5)||$a39=="n/a"){

$a42="";

$a43="";}

else{

$a42="<a href=$a5?qm=form&name=Anonymous&touin=$a39>";

$a43="</a>";}

if($a39=="n/a"){

$a44="<img src=icq_na.gif>";}

else{

$a44="<img src=http://online.mirabilis.com/scripts/online.dll?icq=$a39&img=5>";}

if(empty($a41)){

$a41="";}

else{

$a41="&nbsp;<font face=verdana size=1><b><a href=mailto:$a7><font color=$a24>$a6</font></a>:&nbsp;$a41</b></font>";}

?>

<center>

<table bgcolor=<?echo$a16?> border=0 cellpadding=1 cellspacing=0 width=448>

<tr><td>

<table border=0 cellpadding=2 cellspacing=0 height=120 width=448>

<tr>

<td bgcolor=<?echo$a17?> height=1 valign=top><font face=verdana size=2>&nbsp;<a href=mailto:<?echo$a34?>><font color=<?echo$a18?>><?echo$a33?></font></a></font></td>

<td align=right bgcolor=<?echo$a17?> height=1 valign=top><font color=<?echo$a18?> face=verdana size=2>[&nbsp;<a href=<?echo$a35?> target=_top><?echo$a36?></a>&nbsp;]</font></td></tr>

<tr>

<td bgcolor=<?echo$a19?> colspan=2 height=1 valign=top><font color=<?echo$a20?> face=verdana size=1>&nbsp;<?echo$a37?>&nbsp;[<?echo$a32?>]</font></td>

</tr>

<tr>

<td bgcolor=<?echo$a21?> colspan=2 style=text-align:justify valign=top><font color=<?echo$a22?> face=arial size=2>&nbsp;<?echo$a38?><br><br><?echo$a41?></font></td>

</tr>

<tr>

<td bgcolor=<?echo$a21?> colspan=2 height=1>

<table border=0 width=100%>

<tr>

<td width=20><?echo$a44?></td>

<td align=left width=80><?echo$a42?><font color=<?echo$a23?> face=verdana size=1><?echo$a39?><?echo$a43?></font></td>

<td align=right width=348><font color=<?echo$a23?> face=verdana size=1><?echo$a31?></font></td>

</tr></table></td></tr></table></td></tr></table>

<br>

</center>

<?}

?>

</td></tr></table></td></tr></table></center>

<br>

<div align=center>

<table border=0>

<tr>

<?

$a45=$a26+$a3;

$a46=$a26-$a3;

if($a26>=$a3){

?>

<td align=left><a href=<?echo$a1?>?a26=0&a28=<?echo$a28?>><img alt=Первая border=0 src=first.gif></a>&nbsp;<a href=<?echo$a1?>?a26=<?echo$a46?>&a28=<?echo$a28?>><img alt="оПЕДШДСЫХЕ <?echo$a3?>" border=0 src=prev.gif></a></td>

<?}

if($a26+$a3<$a28){

?>

<td align=right><a href=<?echo$a1?>?a26=<?echo$a45?>&a28=<?echo$a28?>><img alt="яКЕДСЧЫХЕ <?echo$a3?>" border=0 src=next.gif></a>&nbsp;<a href=<?echo$a1?>?a26=<?echo"".floor($a28/$a3)*$a3.""?>&a28=<?echo$a28?>><img alt=Последняя border=0 src=last.gif></a></td>

<?}

?>

</tr></table></div>

<?

a2();}

function a4(){

global $a1,$a11,$a13,$a14,$a15,$a16,$a17,$a18,$a19,$a21,$a22,$a33,$a34,$a35,$a36,$a37,$a38,$a39,$a47;

if(!isset($a33))$a33="";

if(!isset($a34))$a34="";

if(!isset($a35))$a35="";

if(!isset($a36))$a36="HomePage";

if(!isset($a37))$a37="";

if(!isset($a38))$a38="";

if(!isset($a39))$a39="";

if(!isset($a48))$a48="";

if($a47=="1")$a48="<br><b>Все поля, помеченные *, должны быть заполнены.</b>";

elseif($a47=="a34")$a48="<br><b>Неверный формат E-Mail адреса.</b>";

a1();

?>

<center>

<form action=<?echo$a1?> method=post>

<input name=a66 type=hidden value=a2>

<table bgcolor=<?echo$a16?> border=0 cellpadding=1 cellspacing=0 width=448>

<tr>

<td>

<table border=0 cellpadding=2 cellspacing=0 width=448>

<tr>

<td bgcolor=<?echo$a17?>><font face="verdana" size="2" color="<?echo$a18?>">Cartea

oaspetilor </font></td>

<td align=right bgcolor=<?echo$a17?>><font color=<?echo$a18?> face=verdana size=2><b><?echo$a11?>&nbsp;</b></font></td>

</tr>

<tr>

<td bgcolor=<?echo$a21?> colspan=2 height=1>&nbsp;</td>

</tr>

<tr>

<td align=right bgcolor=<?echo$a19?> height=1 width=120><font color=<?echo$a13?> face=verdana size=2>*&nbsp;<b>Numele</b></font></td>

<td bgcolor=<?echo$a21?> height=1 width=330>&nbsp;&nbsp;<input maxlength=16 name=a33 style="background-color:<?echo$a19?>;border:<?echo$a16?> 1 solid;color:<?echo$a22?>;font-size:15;width:250" type=text value="<?echo$a33?>"></td>

</tr>

<tr>

<td align=right bgcolor=<?echo$a21?> height=1 width=120><font color=<?echo$a13?> face=verdana size=2>E-Mail</font></td>

<td bgcolor=<?echo$a21?> height=1 width=330>&nbsp;&nbsp;<input maxlength=64 name=a34 style="background-color:<?echo$a19?>;border:<?echo$a16?> 1 solid;color:<?echo$a22?>;font-size:15;width:250" type=text value=<?echo$a34?>></td>

</tr>

<tr>

<td align=right bgcolor=<?echo$a19?> height=1 width=120><font color=<?echo$a13?> face=verdana size=2>URL</font></td>

<td bgcolor=<?echo$a21?> height=1 width=330>&nbsp;&nbsp;<input maxlength=64 name=a35 style="background-color:<?echo$a19?>;border:<?echo$a16?> 1 solid;color:<?echo$a22?>;font-size:15;width:250" type=text value=<?echo$a35?>></td>

</tr>

<tr>

<td align=right bgcolor=<?echo$a21?> height=1 width=120><font color="<?echo$a13?>" face="verdana" size="2">Nume

URL</font></td>

<td bgcolor=<?echo$a21?> height=1 width=330>&nbsp;&nbsp;<input maxlength=32 name=a36 style="background-color:<?echo$a19?>;border:<?echo$a16?> 1 solid;color:<?echo$a22?>;font-size:15;width:250" type=text value="<?echo$a36?>"></td>

</tr>

<tr>

<td align=right bgcolor=<?echo$a19?> height=1 width=120><font color=<?echo$a13?> face=verdana size=2>*&nbsp;<b>Orasul</b></font></td>

<td bgcolor=<?echo$a21?> height=1 width=330>&nbsp;&nbsp;<input maxlength=24 name=a37 style="background-color:<?echo$a19?>;border:<?echo$a16?> 1 solid;color:<?echo$a22?>;font-size:15;width:250" type=text value="<?echo$a37?>"></td>

</tr>

<tr>

<td align=right bgcolor=<?echo$a21?> height=1 width=120><font color=<?echo$a13?> face=verdana size=2>*&nbsp;<b>Mesajul</b></font></td>

<td bgcolor=<?echo$a21?> height=1 width=330>&nbsp;&nbsp;<textarea cols=28 name=a38 rows=5 style="background-color:<?echo$a19?>;border:<?echo$a16?> 1 solid;color:<?echo$a22?>;font-family:arial;font-size:13;height:100;scrollbar-3dlight-color:<?echo$a14?>;scrollbar-arrow-color:<?echo$a17?>;scrollbar-darkshadow-color:<?echo$a17?>;scrollbar-face-color:<?echo$a21?>;scrollbar-highlight-color:<?echo$a15?>;scrollbar-shadow-color:<?echo$a14?>;scrollbar-track-color:<?echo$a15?>;width:250"><?echo$a38?></textarea></td>

</tr>

<tr>

<td align=right bgcolor=<?echo$a19?> height=1 width=120><font color=<?echo$a13?> face=verdana size=2>ICQ</font></td>

<td bgcolor=<?echo$a21?> height=1 width=330>&nbsp;&nbsp;<input maxlength=9 name=a39 onkeypress="if(event.keyCode<46||event.keyCode>57)event.returnValue=false" style="background-color:<?echo$a19?>;border:<?echo$a16?> 1 solid;color:<?echo$a22?>;font-size:15;width:250" type=text value=<?echo$a39?>></td>

</tr>

<tr>

<td bgcolor=<?echo$a21?> colspan=2>

<br>

<center>

&nbsp;&nbsp;

<input name=a70 style="background-color:<?echo$a17?>;border-color:<?echo$a16?>;font-size:13;height:22;width:90" type=submit value=Da>

&nbsp;&nbsp;

<input name=reset style="background-color:<?echo$a17?>;border-color:<?echo$a16?>;font-size:13;height:22;width:90" type=reset value=Reset>

<p></p></center></center></td></tr></table></table></form>

<table border=0 cellpadding=0 cellspacing=0 width=448>

<tr>

<td> <font face=verdana size=1>*&nbsp;cimpuri obligatorii

<?echo$a48?>

</td>

</tr>

</table>

<p align=right><font face=verdana size=1><a href=<?echo$a1?>?a66=a5>ADMINISTRARE</a></font></p>

<?

a2();}

function a5(){

global $a1,$a5,$a49;

a1();

if(!isset($a49))$a49="";

if(empty($a5)){

$a50="n/a";

$a51="";

$a52="";}

else{

$a50="$a5";

$a51="<a href=$a5>";

$a52="</a>";}

a2();}

function a6(){

global $HTTP_USER_AGENT,$HTTP_X_FORWARDED_FOR,$REMOTE_ADDR,$REMOTE_HOST,$a1,$a2,$a4,$a6,$a7,$a8,$a9,$a10,$a11,$a31,$a33,$a34,$a35,$a36,$a37,$a38,$a39,$a53;

if(!empty($a34)){

if(!eregi("^[a-z0-9\._-]+@[a-z0-9\._-]+\.[a-z]{2,4}\$",$a34)){

header("location:$a1?a66=a1&a33=$a33&a34=$a34&a35=$a35&a36=$a36&a37=$a37&a38=$a38&a39=$a39&a47=a34");

exit;}}

if(empty($a33)||empty($a37)||empty($a38)){

header("location:$a1?a66=a1&a33=$a33&a34=$a34&a35=$a35&a36=$a36&a37=$a37&a38=$a38&a39=$a39&a47=1");

exit;}

if(empty($a34))$a34="";

if(empty($a35))$a35="";

if(empty($a36))$a36="HomePage";

if(!ereg("^http://(.*)",$a35))$a35="http://$a35";

if(isset($HTTP_X_FORWARDED_FOR)){

$a54=gethostbyaddr($HTTP_X_FORWARDED_FOR);}

else{

$a54=gethostbyaddr($REMOTE_ADDR);}

$a31=gethostbyname("$a54");

if($a9=="1"){

include "badwords.php";

$a55=sizeof($a56);

for($a29=0;$a29<$a55;$a29++){

$a57=$a56[$a29];

if(eregi($a57,$a33)||eregi($a57,$a34)||eregi($a57,$a35)||eregi($a57,$a36)||eregi($a57,$a37)||eregi($a57,$a38)){

$a33=str_replace($a57,"***",$a33);

$a34=str_replace($a57,"***",$a34);

$a35=str_replace($a57,"***",$a35);

$a36=str_replace($a57,"***",$a36);

$a37=str_replace($a57,"***",$a37);

$a38=str_replace($a57,"***",$a38);}}}

if(crypt($a39,"$a10")!=$a53){

$a33=htmlspecialchars($a33);

$a33=stripcslashes($a33);

$a33=trim($a33);

$a33=str_replace("@","a",$a33);

$a33=str_replace("|","I",$a33);

$a33=str_replace("$","S",$a33);

$a33=str_replace("][","X",$a33);

$a33=str_replace("}{","X",$a33);

$a33=str_replace("[","/",$a33);

$a33=str_replace("]","/",$a33);

$a33=str_replace("{","/",$a33);

$a33=str_replace("}","/",$a33);

$a33=str_replace("#","№",$a33);

$a33=substr($a33,0,16);

$a34=htmlspecialchars($a34);

$a34=stripcslashes($a34);

$a34=trim($a34);

$a34=str_replace("|","",$a34);

$a34=str_replace("$","",$a34);

$a34=str_replace("*","",$a34);

$a34=str_replace("!","",$a34);

$a34=str_replace("[","",$a34);

$a34=str_replace("]","",$a34);

$a34=str_replace("{","",$a34);

$a34=str_replace("}","",$a34);

$a34=str_replace("#","",$a34);

$a34=str_replace("/","",$a34);

$a34=substr($a34,0,64);

$a35=htmlspecialchars($a35);

$a35=stripcslashes($a35);

$a35=trim($a35);

$a35=str_replace("@","a",$a35);

$a35=str_replace("|","I",$a35);

$a35=str_replace("$","S",$a35);

$a35=str_replace("][","X",$a35);

$a35=str_replace("}{","X",$a35);

$a35=str_replace("[","/",$a35);

$a35=str_replace("]","/",$a35);

$a35=str_replace("{","/",$a35);

$a35=str_replace("}","/",$a35);

$a35=str_replace("#","№",$a35);

$a35=substr($a35,0,64);

$a36=htmlspecialchars($a36);

$a36=stripcslashes($a36);

$a36=trim($a36);

$a36=str_replace("@","a",$a36);

$a36=str_replace("|","I",$a36);

$a36=str_replace("$","S",$a36);

$a36=str_replace("][","X",$a36);

$a36=str_replace("}{","X",$a36);

$a36=str_replace("[","/",$a36);

$a36=str_replace("]","/",$a36);

$a36=str_replace("{","/",$a36);

$a36=str_replace("}","/",$a36);

$a36=str_replace("#","№",$a36);

$a36=substr($a36,0,32);

$a37=htmlspecialchars($a37);

$a37=stripcslashes($a37);

$a37=trim($a37);

$a37=str_replace("@","a",$a37);

$a37=str_replace("|","I",$a37);

$a37=str_replace("$","S",$a37);

$a37=str_replace("][","X",$a37);

$a37=str_replace("}{","X",$a37);

$a37=str_replace("[","/",$a37);

$a37=str_replace("]","/",$a37);

$a37=str_replace("{","/",$a37);

$a37=str_replace("}","/",$a37);

$a37=str_replace("#","№",$a37);

$a37=substr($a37,0,24);

$a38=htmlspecialchars($a38);

$a38=str_replace("

","<br>",$a38);

$a38=stripcslashes($a38);

$a38=trim($a38);

$a38=str_replace("@","a",$a38);

$a38=str_replace("|","I",$a38);

$a38=str_replace("$","S",$a38);

$a38=str_replace("][","X",$a38);

$a38=str_replace("}{","X",$a38);

$a38=str_replace("[","/",$a38);

$a38=str_replace("]","/",$a38);

$a38=str_replace("{","/",$a38);

$a38=str_replace("}","/",$a38);

$a38=str_replace("#","№",$a38);

$a38=substr($a38,0,1024);}

else{

$a39="";}

$a39=ereg_replace("[^0-9]","",$a39);

$a39=substr($a39,0,9);

if(empty($a39))$a39="n/a";

$a58=array("января","февраля","марта","апреля","мая","июня","июля","августа","сентября","октября","ноября","декабря");

$a103=array("1-е","2-е","3-е","4-е","5-е","6-е","7-е","8-е","9-е","10-е","11-е","12-е","13-е","14-е","15-е","16-е","17-е","18-е","19-е","20-е","21-е","22-е","23-е","24-е","25-е","26-е","27-е","28-е","29-е","30-е","31-е");

$a59=$a103[date("d")-1]." ".$a58[date("m")-1]." ".date("Y")."г."." ".date("H:i");

$a60=fopen("counter.php","r");

$a61=fread($a60,filesize("counter.php"));

fclose($a60);

$a61++;

$a60=fopen("counter.php","w");

flock($a60,2);

fputs($a60,$a61);

flock($a60,3);

fclose($a60);

$a62=file("$a2");

$a63="$a61|$a31|$a59|$a33|$a34|$a35|$a36|$a37|$a38|$a39|$HTTP_USER_AGENT||";

$a60=fopen("$a2","w");

flock($a60,1);

fwrite($a60,"$a63\n");

for($a29=0;$a29<$a4;$a29++){

@fwrite($a60,"$a62[$a29]");}

flock($a60,3);

fclose($a60);

if($a8=="1"&&!empty($a7)){

$a64="From:Гостевая книга: $a11<>\nReply-To:$a34";

$a65="Новое сообщение от: $a33";

$a63="[$a59] $a37 $a34 $a35 ICQ: $a39\n\n$a33: $a38\n\nip: $a31\nhost: $REMOTE_HOST\nsystem: $HTTP_USER_AGENT";

$a63=str_replace("<br>","\n",$a63);

$a6=convert_cyr_string($a6,'w','k');

$a63=convert_cyr_string($a63,'w','k');

$a64=convert_cyr_string($a64,'w','k');

$a65=convert_cyr_string($a65,'w','k');

#mail("$a6 <$a7>",$a65,$a63,$a64);

}

header("location:$a1?a66=a3");

exit;}

function a7(){

global $a1,$a12,$a13,$a16,$a17,$a19,$a22,$a53,$a66,$a67;

a1();

?>

<center>

<br>

<br>

<br>

<font face="verdana" size="5">Administrare</font> <br>

<form action=<?echo$a1?> method=post>

<input name=a66 type=hidden value=a6>

<font face="verdana" size="2">parola&nbsp;</font>

<input maxlength=8 name=a67 onkeypress="if((event.keyCode>32&&event.keyCode<48)||(event.keyCode>57&&event.keyCode<65)||(event.keyCode>90&&event.keyCode<97)||(event.keyCode==34||event.keyCode==39))event.returnValue=false" style="background-color:<?echo$a19?>;border:<?echo$a16?> 1 solid;color:<?echo$a22?>;font-size:16;height:20;width:120" type=password>

<br>

<br><input onclick=javascript:history.back() style="background-color:<?echo$a17?>;border-color:<?echo$a16?>;font-size:13;height:22;width:90" type=button value=

<&nbsp;Back> &nbsp;&nbsp;

<input name=a70 style="background-color:<?echo$a17?>;border-color:<?echo$a16?>;height:22;width:90" type=submit value=Enter>

</form>

</center>

<?

a2();

exit;}

function a8(){

global $a1,$a2,$a3,$a4,$a5,$a10,$a14,$a15,$a16,$a17,$a19,$a20,$a21,$a22,$a26,$a28,$a53,$a66,$a67;

if($a67!=$a53){

if(!empty($a67)){

$a67=escapeshellcmd($a67);

$a67=substr($a67,0,8);

$a67=htmlspecialchars($a67);

$a67=crypt($a67,$a10);}}

if($a67==$a53){

a1();

?>

<table align=center border=1 bordercolor=<?echo$a16?> cellpadding=1 cellspacing=1 width=448>

<tr>

<td align=center><font face=verdana size=2><a href=<?echo$a1?>?a66=a10&a67=<?echo$a67?>>interfata</a>&nbsp;|&nbsp;<a href=<?echo$a1?>?a66=a9&a67=<?echo$a67?>>setar</a>i&nbsp;|&nbsp;<a href=<?echo$a1?>?a66=a7&a67=<?echo$a67?>>schimbarea

parolei</a>|&nbsp;<a href=<?echo$a1?>?a66=a1>adaugare</a></font></td>

</tr>

</table>

<br>

<?

$a27=file($a2);

$a28=count($a27);

if(!isset($a26)){

$a26=0;}

$a68=($a4-$a28)+1;

if($a28>=$a4+1)$a69="более старые сообщения удаляются";

else $a69="осталось: $a68";

?>

<center>

<font face="verdana" size="1">Inscrieri in total:

<?echo$a28?>

&nbsp;(

<?echo$a69?>

)</font>

</center>

<?

for($a29=$a26;$a29<min($a26+$a3,$a28);$a29++){

list($a30,$a31,$a32,$a33,$a34,$a35,$a36,$a37,$a38,$a39,$a40,$a41)=split("\|","$a27[$a29]");

$a41=str_replace("<br>","\n",$a41);

?>

<center>

<form action=<?echo$a1?> method=post>

<input name=a26 type=hidden value=<?echo$a26?>>

<input name=a28 type=hidden value=<?echo$a28?>>

<input name=a30 type=hidden value=<?echo$a30?>>

<input name=a32 type=hidden value="<?echo$a32?>">

<input name=a40 type=hidden value="<?echo$a40?>">

<input name=a66 type=hidden value=a8>

<input name=a67 type=hidden value=<?echo$a67?>>

<table bgcolor=<?echo$a16?> border=0 cellpadding=1 cellspacing=0>

<tr>

<td>

<table border=0 cellpadding=2 cellspacing=0 width=448>

<tr>

<td bgcolor=<?echo$a17?> height=1 valign=top>

<input name=a33 size=13 style="background-color:<?echo$a19?>;border:<?echo$a16?> 1 solid;color:<?echo$a22?>;font-size:15;width:108" type=text value="<?echo$a33?>">

<input name=a34 size=13 style="background-color:<?echo$a19?>;border:<?echo$a16?> 1 solid;color:<?echo$a22?>;font-size:15;width:108" type=text value=<?echo$a34?>>

<input name=a36 size=13 style="background-color:<?echo$a19?>;border:<?echo$a16?> 1 solid;color:<?echo$a22?>;font-size:15;width:108" type=text value="<?echo$a36?>">

<input name=a35 size=13 style="background-color:<?echo$a19?>;border:<?echo$a16?> 1 solid;color:<?echo$a22?>;font-size:15;width:108" type=text value=<?echo$a35?>>

</td>

</tr>

<tr>

<td bgcolor=<?echo$a19?> colspan=2 height=1 valign=top><input name=a37 size=20 style="background-color:<?echo$a19?>;border:<?echo$a16?> 1 solid;color:<?echo$a22?>;font-family:verdana;font-size:10;width:108" type=text value="<?echo$a37?>"><font color=<?echo$a20?> face=verdana size=1>&nbsp;[<?echo$a32?>]</font></td>

</td>

</tr>

<tr>

<td bgcolor=<?echo$a21?> colspan=2 valign=top><center><textarea cols=54 name=a38 rows=3 style="background-color:<?echo$a19?>;border:<?echo$a16?> 1 solid;color:<?echo$a22?>;font-family:arial;font-size:13;height:80;scrollbar-3dlight-color:<?echo$a14?>;scrollbar-arrow-color:<?echo$a17?>;scrollbar-darkshadow-color:<?echo$a17?>;scrollbar-face-color:<?echo$a21?>;scrollbar-highlight-color:<?echo$a15?>;scrollbar-shadow-color:<?echo$a14?>;scrollbar-track-color:<?echo$a15?>;width:445"><?echo$a38?></textarea></center></td>

</tr>

<tr>

<td bgcolor=<?echo$a21?> colspan=2 height=1>

<table border=0 cellpadding=0 cellspacing=0>

<tr>

<td align=left width=149><input name=a39 style="background-color:<?echo$a19?>;border:<?echo$a16?> 1 solid;color:<?echo$a22?>;font-family:verdana;font-size:10;width:108" type=text value=<?echo$a39?>></td>

<td align=center width=150><font color=<?echo$a20?> face=verdana size=1>[<a href=<?echo$a1?>>читать книгу</a>]</font></td>

<td align=right width=149><input name=a31 style="background-color:<?echo$a19?>;border:<?echo$a16?> 1 solid;color:<?echo$a22?>;font-family:verdana;font-size:10;width:108" type=text value=<?echo$a31?>></td>

</tr></table></td></tr></table></td></tr></table>

<table border=0 cellpadding=1 cellspacing=0 width=452>

<tr>

<td bgcolor=<?echo$a15?> rowspan=2 width=55><font color=<?echo$a20?> face=verdana size=1><center>№:&nbsp;<?echo$a30?><br>–––-<br>ком-<br>ментарий</center></font></td>

<td rowspan=2 width=317><center><textarea cols=40 name=a41 rows=2 style="background-color:<?echo$a19?>;border:<?echo$a16?> 1 solid;color:<?echo$a22?>;font-family:verdana;font-size:10;font-weight:bold;height:46;scrollbar-3dlight-color:<?echo$a14?>;scrollbar-arrow-color:<?echo$a17?>;scrollbar-darkshadow-color:<?echo$a17?>;scrollbar-face-color:<?echo$a21?>;scrollbar-highlight-color:<?echo$a15?>;scrollbar-shadow-color:<?echo$a14?>;scrollbar-track-color:<?echo$a15?>;width:307"><?echo$a41?></textarea></center></td>

<td align=right width=80>

<input name=a70 style="background-color:<?echo$a17?>;border-color:<?echo$a16?>;font-size:12;height:22;width:80" type=submit value=OK>

</td>

</tr>

<tr>

<td align=right>

<input name=a70 style="background-color:<?echo$a17?>;border-color:<?echo$a16?>;font-size:12;height:22;width:80" type=submit value=Sterge>

</td></tr></table>

<font face=verdana size=1><?echo$a40?></font>

<hr color=<?echo$a16?> size=1 width=448>

</form></center>

<?}

?>

<div align=center>

<table border=0>

<tr>

<?

$a45=$a26+$a3;

$a46=$a26-$a3;

if($a26>=$a3){

?>

<td align=left><a href=<?echo$a1?>?a66=a6&a26=0&a28=<?echo$a28?>&a67=<?echo$a67?>><img alt=Первая border=0 src=first.gif></a>&nbsp;<a href=<?echo$a1?>?a66=a6&a26=<?echo$a46?>&a28=<?echo$a28?>&a67=<?echo$a67?>><img alt="оПЕДШДСЫХЕ <?echo$a3?>" border=0 src=prev.gif></a></td>

<?}

if($a26+$a3<$a28){

?>

<td align=right><a href=<?echo$a1?>?a66=a6&a26=<?echo$a45?>&a28=<?echo$a28?>&a67=<?echo$a67?>><img alt="яКЕДСЧЫХЕ <?echo$a3?>" border=0 src=next.gif></a>&nbsp;<a href=<?echo$a1?>?a66=a6&a26=<?echo"".floor($a28/$a3)*$a3.""?>&a28=<?echo$a28?>&a67=<?echo$a67?>><img alt=Последняя border=0 src=last.gif></a></td>

<?}

?>

</tr></table></div>

<?

a2();}

else{

a1();

?>

<center>

<br><br><br><br><br><br>

<table align=center border=1 bordercolor=<?echo$a16?> cellpadding=1 cellspacing=1 width=448>

<tr>

<td align=center><font face=verdana size=2><a href=<?echo$a1?>>citire</a>|&nbsp;<a href=<?echo$a1?>?a66=a5>intrare

din nou</a>&nbsp;|&nbsp;<a href=<?echo$a1?>?a66=a1>adaugare</a></font></td>

</tr></table></center>

<?

a2();}}

function a9(){

global $a1,$a2,$a26,$a28,$a30,$a31,$a32,$a33,$a34,$a35,$a36,$a37,$a38,$a39,$a40,$a41,$a53,$a66,$a67,$a70;

if($a67!=$a53){

a1();

a7();

a2();}

else{

if($a70=="Принять"){

$a41=str_replace("|","I",$a41);

$a41=str_replace("#","№",$a41);

$a41=str_replace("<?","&lt;?",$a41);

$a41=str_replace("?>","?&gt;",$a41);

$a41=str_replace("

","<br>",$a41);

$a71=file($a2);

for($a29=0;$a29<=count($a71);$a29++){

if(@ereg("^$a30\|",$a71[$a29]))$a71[$a29]="$a30|$a31|$a32|$a33|$a34|$a35|$a36|$a37|$a38|$a39|$a40|$a41|\n";}

$a60=fopen($a2,"w");

flock($a60,2);

for($a29=0;$a29<=count($a71);$a29++){

if(isset($a71[$a29]))fputs($a60,$a71[$a29]);}

flock($a60,3);

fclose($a60);

header("location:$a1?a66=a6&a26=$a26&a28=$a28&a67=$a67");

exit;}

else{

$a71=file($a2);

for($a29=0;$a29<=count($a71);$a29++){

if(ereg("^$a30\|",$a71[$a29]))unset($a71[$a29]);}

$a60=fopen($a2,"w");

flock($a60,2);

for($a29=0;$a29<=count($a71);$a29++){

if(isset($a71[$a29]))fputs($a60,$a71[$a29]);}

flock($a60,3);

fclose($a60);

header("location:$a1?a66=a6&a26=$a26&a28=$a28&a67=$a67");

exit;}}}

function a10(){

global $a1,$a10,$a12,$a13,$a16,$a17,$a19,$a22,$a42,$a53,$a66,$a67,$a72,$a73,$a74;

if($a67!=$a53){

if(!empty($a67)){

$a67=crypt($a67,$a10);}}

if($a67!=$a53){

a1();

a7();

a2();}

else{

if(empty($a42)){

a1();

?>

<center>

<br><br><br>

<font face=verdana size=5>Schimbarea parolei</font>

<form action=<?echo$a1?> method=post>

<input name=a42 type=hidden value=ok>

<input name=a66 type=hidden value=a7>

<input name=a67 type=hidden value=<?echo$a67?>>

<table border=0>

<tr> <td><font face="verdana" size="2">Parola veche</font></td>

<td><input maxlength=8 name=a72 onkeypress="if((event.keyCode>32&&event.keyCode<48)||(event.keyCode>57&&event.keyCode<65)||(event.keyCode>90&&event.keyCode<97)||(event.keyCode==34||event.keyCode==39))event.returnValue=false" style="background-color:<?echo$a19?>;border:<?echo$a16?> 1 solid;color:<?echo$a22?>;font-size:16;height:20;width:120" type=password></td>

</tr>

<tr>

<td><font face=verdana size=2>Parola noua</font></td>

<td><input maxlength=8 name=a73 onkeypress="if((event.keyCode>32&&event.keyCode<48)||(event.keyCode>57&&event.keyCode<65)||(event.keyCode>90&&event.keyCode<97)||(event.keyCode==34||event.keyCode==39))event.returnValue=false" style="background-color:<?echo$a19?>;border:<?echo$a16?> 1 solid;color:<?echo$a22?>;font-size:16;height:20;width:120" type=password></td>

</tr>

<tr>

<td><font face="verdana" size="2">Control</font></td>

<td><input maxlength=8 name=a74 onkeypress="if((event.keyCode>32&&event.keyCode<48)||(event.keyCode>57&&event.keyCode<65)||(event.keyCode>90&&event.keyCode<97)||(event.keyCode==34||event.keyCode==39))event.returnValue=false" style="background-color:<?echo$a19?>;border:<?echo$a16?> 1 solid;color:<?echo$a22?>;font-size:16;height:20;width:120" type=password></td></tr></table>

<br>

<input name=a70 style="background-color:<?echo$a17?>;border-color:<?echo$a16?>;height:22;width:90" type=submit value=Schimba>

</form></center>

<?

a2();

exit;}

else{

if(!empty($a72)){

$a72=substr($a72,0,8);

$a72=crypt($a72,$a10);}

if($a72!=$a53){

a1();

?>

<center><br><br><br>

<font face=verdana size=4>Parola veche incorecta.</font> <br>

<br><input onclick=javascript:history.back() style="background-color:<?echo$a17?>;border-color:<?echo$a16?>;font-size:13;height:22;width:90" type=button value=

<&nbsp;Back>

</center>

<?

a2();

exit;}

if(empty($a73)){

$a73=substr($a73,0,8);

a1();

?>

<center><br><br><br>

<font face="verdana" size="4">Nu este introdusa parola noua.</font> <br><br><input onclick=javascript:history.back() style="background-color:<?echo$a17?>;border-color:<?echo$a16?>;font-size:13;height:22;width:90" type=button value=

<&nbsp;Back>

</center>

<?

a2();

exit;}

if($a73!=$a74){

$a74=substr($a74,0,8);

a1();

?>

<center><br><br><br>

<font face="verdana" size="4">Greseala la controlul parolei.</font> <br><br><input onclick=javascript:history.back() style="background-color:<?echo$a17?>;border-color:<?echo$a16?>;font-size:13;height:22;width:90" type=button value=

<&nbsp;Back>

</center>

<?

a2();

exit;}

$a73=crypt($a73,$a10);

$a60=@fopen("passwd.php","w")or die("Error open file");

flock($a60,2);

fwrite($a60,"<?\n");

fwrite($a60,"\$a53=\"$a73\";\n");

fwrite($a60,"?>");

flock($a60,3);

fclose($a60);

a1();

?>

<center><br><br><br><br><br><br>

<table align=center border=1 bordercolor=<?echo$a16?> cellpadding=1 cellspacing=1 width=448>

<tr><td align=center><font face=verdana size=2><a href=<?echo$a1?>>citire</a>&nbsp;|&nbsp;<a href=<?echo$a1?>?a66=a5>intrare

din nou</a>&nbsp;|&nbsp;<a href=<?echo$a1?>?a66=a1>adaugare</a></font></td>

</tr>

</table>

</center>

<?

a2();}}}

function a11(){

global $a1,$a2,$a3,$a4,$a5,$a6,$a7,$a8,$a9,$a16,$a17,$a18,$a19,$a22,$a50,$a53,$a66,$a67,$a75,$a76,$a77,$a78,$a79,$a80,$a81,$a82,$a83;

if($a67!=$a53){

a1();

a7();

a2();}

else{

if(empty($a50)){

a1();

if($a8=="1")$a84="checked";

else $a84="";

if($a9=="1")$a85="checked";

else $a85="";

?>

<center>

<br>

<form action=<?echo$a1?> method=post>

<input name=a50 type=hidden value=ok>

<input name=a66 type=hidden value=a9>

<input name=a67 type=hidden value=<?echo$a67?>>

<table border=0 width=650>

<tr>

<td bgcolor=<?echo$a17?> colspan=2><font color=<?echo$a18?> face=verdana size=2><b>&nbsp;&nbsp;Setari</b></font></td>

</tr>

<tr>

<td><input name=a75 style="background-color:<?echo$a19?>;border:<?echo$a16?> 1 solid;color:<?echo$a22?>" type=text value=<?echo$a1?>></td>

<td><font face=verdana size=2>&nbsp;numele script-fisierului php_self

(dupa care – redenumirea fisierului)</font></td>

</tr>

<tr>

<td><input name=a76 style="background-color:<?echo$a19?>;border:<?echo$a16?> 1 solid;color:<?echo$a22?>" type=text value=<?echo$a2?>></td>

<td><font face=verdana size=2>&nbsp;numele fisierului baza de mesaje (dupa

care – redenumirea fisierului)</font></td>

</tr>

<tr>

<td><input name=a77 style="background-color:<?echo$a19?>;border:<?echo$a16?> 1 solid;color:<?echo$a22?>" type=text value=<?echo$a3?>></td>

<td><font face=verdana size=2>&nbsp;numarul inregistrarilor pe o pagina</font></td>

</tr>

<tr>

<td><input name=a78 style="background-color:<?echo$a19?>;border:<?echo$a16?> 1 solid;color:<?echo$a22?>" type=text value=<?echo$a4?>></td>

<td><font face=verdana size=2>&nbsp;numarul maximal de inregistrari din

baza</font></td>

</tr>

<tr>

<td><input name=a79 style="background-color:<?echo$a19?>;border:<?echo$a16?> 1 solid;color:<?echo$a22?>" type=text value=<?echo$a5?>></td>

<td><font face=verdana size=2>&nbsp;calea catre QIM (Quick ICQ Message)</font></td>

</tr>

<tr>

<td><input name=a80 style="background-color:<?echo$a19?>;border:<?echo$a16?> 1 solid;color:<?echo$a22?>" type=text value="<?echo$a6?>"></td>

<td><font face=verdana size=2>&nbsp;Numele administratorului</font></td>

</tr>

<tr>

<td><input name=a81 style="background-color:<?echo$a19?>;border:<?echo$a16?> 1 solid;color:<?echo$a22?>" type=text value="<?echo$a7?>"></td>

<td><font face=verdana size=2>&nbsp;E-Mail-ul administratorului</font></td>

</tr>

<tr>

<td align=right width=155><input <?echo$a84?> name=a82 type=checkbox value=1></td>

<td><font face=verdana size=2>&nbsp;trimiterea mesajelor noi pe E-Mail-ul

administratorului</font></td>

</tr>

<tr>

<td align=right width=155><input <?echo$a85?> name=a83 type=checkbox value=1></td>

<td><font face=verdana size=2>&nbsp;folosirea filtrului 'antiinjuraturi'</font></td>

</tr>

</table>

<br>

<input name=a70 style="background-color:<?echo$a17?>;border-color:<?echo$a16?>;height:22;width:90" type=submit value=Aplicare>

</form>

<br>

<table align=center border=1 bordercolor=<?echo$a16?> cellpadding=1 cellspacing=1 width=448>

<tr>

<td align=center><font face=verdana size=2><a href=<?echo$a1?>>citire</a>&nbsp;|&nbsp;<a href=<?echo$a1?>?a66=a5>intrare

din nou</a>&nbsp;|&nbsp;<a href=<?echo$a1?>?a66=a1>adaugare</a></font></td>

</tr>

</table>

</center>

<?

a2();}

else{

$a86=file("config.php");

for($a29=0;$a29<=count($a86);$a29++){

if(@ereg("^\\\$a1=",$a86[$a29]))$a86[$a29]="\$a1=\"$a75\";\n";

if(@ereg("^\\\$a2=",$a86[$a29]))$a86[$a29]="\$a2=\"$a76\";\n";

if(@ereg("^\\\$a3=",$a86[$a29]))$a86[$a29]="\$a3=\"$a77\";\n";

if(@ereg("^\\\$a4=",$a86[$a29]))$a86[$a29]="\$a4=\"$a78\";\n";

if(@ereg("^\\\$a5=",$a86[$a29]))$a86[$a29]="\$a5=\"$a79\";\n";

if(@ereg("^\\\$a6=",$a86[$a29]))$a86[$a29]="\$a6=\"$a80\";\n";

if(@ereg("^\\\$a7=",$a86[$a29]))$a86[$a29]="\$a7=\"$a81\";\n";

if(@ereg("^\\\$a8=",$a86[$a29]))$a86[$a29]="\$a8=\"$a82\";\n";

if(@ereg("^\\\$a9=",$a86[$a29]))$a86[$a29]="\$a9=\"$a83\";\n";}

$a60=@fopen("config.php","w")or die("Error open file");

flock($a60,2);

for($a29=0;$a29<=count($a86);$a29++){

if(isset($a86[$a29]))fputs($a60,$a86[$a29]);}

flock($a60,3);

fclose($a60);

header("location:$a1?a66=a9&a67=$a67");

exit;}}}

function a12(){

global $a1,$a11,$a12,$a13,$a14,$a15,$a16,$a17,$a18,$a19,$a20,$a21,$a22,$a23,$a24,$a25,$a53,$a66,$a67,$a87,$a88,$a89,$a90,$a91,$a92,$a93,$a94,$a95,$a96,$a97,$a98,$a99,$a100,$a101,$a102;

if($a67!=$a53){

a1();

a7();

a2();}

else{

if(empty($a87)){

a1();

?>

<form action=<?echo$a1?> method=post>

<input name=a66 type=hidden value=a10>

<input name=a67 type=hidden value=<?echo$a67?>>

<input name=a87 type=hidden value=ok>

<center>

<table border=0 width=465>

<tr>

<td bgcolor=<?echo$a17?> colspan=3><font color=<?echo$a18?> face=verdana size=2><b>&nbsp;&nbsp;Интерфейс</b></font></td>

</tr>

<tr>

<td width="149">

<input name=a88 style="background-color:<?echo$a19?>;border:<?echo$a16?> 1 solid;color:<?echo$a22?>" type=text value="<?echo$a11?>"></td>

<td align=center width=25>-</td>

<td width=277><font face=verdana size=2>&nbsp;&nbsp;numele cartii</font></td>

</tr>

<tr>

<td width="149">

<input name=a89 style="background-color:<?echo$a19?>;border:<?echo$a16?> 1 solid;color:<?echo$a22?>" type=text value=<?echo$a25?>></td>

<td align=center width=25>-</td>

<td width=277><font face=verdana size=2>&nbsp;&nbsp;imaginea de fon</font></td>

</tr>

<tr>

<td width="149">

<input name=a90 style="background-color:<?echo$a19?>;border:<?echo$a16?> 1 solid;color:<?echo$a22?>" type=text value=<?echo$a12?>></td>

<td bgcolor=<?echo$a12?> width=25>&nbsp;</td>

<td width=277><font face=verdana size=2>&nbsp;&nbsp;culoarea fonlui principal</font></td>

</tr>

<tr>

<td width="149">

<input name=a91 style="background-color:<?echo$a19?>;border:<?echo$a16?> 1 solid;color:<?echo$a22?>" type=text value=<?echo$a14?>></td>

<td bgcolor=<?echo$a14?> width=25>&nbsp;</td>

<td width=277><font face=verdana size=2>&nbsp;&nbsp;culoarea border-ului

principal</font></td>

</tr>

<tr>

<td width="149">

<input name=a92 style="background-color:<?echo$a19?>;border:<?echo$a16?> 1 solid;color:<?echo$a22?>" type=text value=<?echo$a15?>></td>

<td bgcolor=<?echo$a15?> width=25>&nbsp;</td>

<td width=277><font face=verdana size=2>&nbsp;&nbsp;culoarea back-fonlui</font></td>

</tr>

<tr>

<td width="149">

<input name=a93 style="background-color:<?echo$a19?>;border:<?echo$a16?> 1 solid;color:<?echo$a22?>" type=text value=<?echo$a13?>></td>

<td bgcolor=<?echo$a13?> width=25>&nbsp;</td>

<td width=277><font face=verdana size=2>&nbsp;&nbsp;culoarea textului</font></td>

</tr>

<tr>

<td width="149">

<input name=a94 style="background-color:<?echo$a19?>;border:<?echo$a16?> 1 solid;color:<?echo$a22?>" type=text value=<?echo$a16?>></td>

<td bgcolor=<?echo$a16?> width=25>&nbsp;</td>

<td width=277><font face=verdana size=2>&nbsp;&nbsp;culoarea border-ului

mesajului</font></td>

</tr>

<tr>

<td width="149">

<input name=a95 style="background-color:<?echo$a19?>;border:<?echo$a16?> 1 solid;color:<?echo$a22?>" type=text value=<?echo$a17?>></td>

<td bgcolor=<?echo$a17?> width=25>&nbsp;</td>

<td width=277><font face=verdana size=2>&nbsp;&nbsp;culoarea footer-ului mesajului</font></td>

</tr>

<tr> <td width="149">

<input name=a96 style="background-color:<?echo$a19?>;border:<?echo$a16?> 1 solid;color:<?echo$a22?>" type=text value=<?echo$a18?>></td>

<td bgcolor=<?echo$a18?> width=25>&nbsp;</td>

<td width=277><font face=verdana size=2>&nbsp;&nbsp;culoarea textului footer-ului</font></td>

</tr>

<tr> <td height="31" width="149">

<input name=a97 style="background-color:<?echo$a19?>;border:<?echo$a16?> 1 solid;color:<?echo$a22?>" type=text value=<?echo$a19?>></td>

<td bgcolor=<?echo$a19?> width=25 height="31">&nbsp;</td>

<td width=277 height="31"><font face=verdana size=2>&nbsp;&nbsp;culoarea sub-footer-ului mesajului</font></td>

</tr>

<tr>

<td width="149">

<input name=a98 style="background-color:<?echo$a19?>;border:<?echo$a16?> 1 solid;color:<?echo$a22?>" type=text value=<?echo$a20?>></td>

<td bgcolor=<?echo$a20?> width=25>&nbsp;</td>

<td width=277><font face=verdana size=2>&nbsp;&nbsp;culoarea textului sub-footer-uli</font></td>

</tr>

<tr>

<td width="149">

<input name=a99 style="background-color:<?echo$a19?>;border:<?echo$a16?> 1 solid;color:<?echo$a22?>" type=text value=<?echo$a21?>></td>

<td bgcolor=<?echo$a21?> width=25>&nbsp;</td>

<td width=277><font face=verdana size=2>&nbsp;&nbsp;culoarea fonului mesajului</font></td>

</tr>

<tr> <td width="149">

<input name=a100 style="background-color:<?echo$a19?>;border:<?echo$a16?> 1 solid;color:<?echo$a22?>" type=text value=<?echo$a22?>></td>

<td bgcolor=<?echo$a22?> width=25>&nbsp;</td>

<td width=277><font face=verdana size=2>&nbsp;&nbsp;culoarea textului mesajului</font></td>

</tr>

<tr> <td width="149">

<input name=a101 style="background-color:<?echo$a19?>;border:<?echo$a16?> 1 solid;color:<?echo$a22?>" type=text value=<?echo$a23?>></td>

<td bgcolor=<?echo$a23?> width=25>&nbsp;</td>

<td width=277><font face=verdana size=2>&nbsp;&nbsp;culoarea textului ICQ UIN si a adresei IP</font></td>

</tr>

<tr>

<td width="149">

<input name=a102 style="background-color:<?echo$a19?>;border:<?echo$a16?> 1 solid;color:<?echo$a22?>" type=text value=<?echo$a24?>></td>

<td bgcolor=<?echo$a24?> width=25>&nbsp;</td>

<td width=277><font face=verdana size=2>&nbsp;&nbsp;culoarea numelui administratorului</font></td>

</tr></table>

<br>

<input name=a70 style="background-color:<?echo$a17?>;border-color:<?echo$a16?>;height:22;width:90" type=submit value=Aplicare>

</form>

<br>

<table align=center border=1 bordercolor=<?echo$a16?> cellpadding=1 cellspacing=1 width=448>

<tr> <td align=center><font face=verdana size=2><a href=<?echo$a1?>>citire</a>&nbsp;|&nbsp;<a href=<?echo$a1?>?a66=a5>intrare

din nou</a>&nbsp;|&nbsp;<a href=<?echo$a1?>?a66=a1>adaugare</a></font></td>

</tr></table></center>

<?

a2();}

else{

$a86=file("config.php");

for($a29=0;$a29<=count($a86);$a29++){

if(@ereg("^\\\$a11=",$a86[$a29]))$a86[$a29]="\$a11=\"$a88\";\n";

if(@ereg("^\\\$a12=",$a86[$a29]))$a86[$a29]="\$a12=\"$a90\";\n";

if(@ereg("^\\\$a13=",$a86[$a29]))$a86[$a29]="\$a13=\"$a93\";\n";

if(@ereg("^\\\$a14=",$a86[$a29]))$a86[$a29]="\$a14=\"$a91\";\n";

if(@ereg("^\\\$a15=",$a86[$a29]))$a86[$a29]="\$a15=\"$a92\";\n";

if(@ereg("^\\\$a16=",$a86[$a29]))$a86[$a29]="\$a16=\"$a94\";\n";

if(@ereg("^\\\$a17=",$a86[$a29]))$a86[$a29]="\$a17=\"$a95\";\n";

if(@ereg("^\\\$a18=",$a86[$a29]))$a86[$a29]="\$a18=\"$a96\";\n";

if(@ereg("^\\\$a19=",$a86[$a29]))$a86[$a29]="\$a19=\"$a97\";\n";

if(@ereg("^\\\$a20=",$a86[$a29]))$a86[$a29]="\$a20=\"$a98\";\n";

if(@ereg("^\\\$a21=",$a86[$a29]))$a86[$a29]="\$a21=\"$a99\";\n";

if(@ereg("^\\\$a22=",$a86[$a29]))$a86[$a29]="\$a22=\"$a100\";\n";

if(@ereg("^\\\$a23=",$a86[$a29]))$a86[$a29]="\$a23=\"$a101\";\n";

if(@ereg("^\\\$a24=",$a86[$a29]))$a86[$a29]="\$a24=\"$a102\";\n";

if(@ereg("^\\\$a25=",$a86[$a29]))$a86[$a29]="\$a25=\"$a89\";\n";}

$a60=@fopen("config.php","w")or die("Error open file");

flock($a60,2);

for($a29=0;$a29<=count($a86);$a29++){

if(isset($a86[$a29]))fputs($a60,$a86[$a29]);}

flock($a60,3);

fclose($a60);

header("location:$a1?a66=a10&a67=$a67");

exit;}}}

if(!isset($a66))$a66="";

switch($a66){

case "a1": a4(); break;

case "a2": a6(); break;

case "a3": a3(); break;

case "a4": a5(); break;

case "a5": a7(); break;

case "a6": a8(); break;

case "a7": a10(); break;

case "a8": a9(); break;

case "a9": a11(); break;

case "a10": a12(); break;

default: a3(); break;}

?>

ANEXA 2.

Elementele elaborarării schematice a paginii Web

ANEXA 3.

Schema tree (arbore) a site-ului:

ANEXA 4.

Interfața paginii de start a site-ului(index.html)

ANEXA 5.

Interfața despărțiturii “Galerie Foto” (pictures.html)

ANEXA 6.

Interfața introducerii datelor în despărțitura “Guest Book” (guestbook.php)

Similar Posts

  • . Magazine Virtuale

    CUPRINS: INTRODUCERE NOȚIUNI GENERALE DESPRE INTERNET Apariția Internetului în lume………………………………………………………..7 Funcționarea Internetului…………………………………………………………….8 1.3. Apariția Internetului în România………………………………………………….9 1.4. Utilitatea Internetului pentru Întreprinderile Mici și Mijlocii…………..10 AFACERI ELECTRONICE PE INTERNET 2.1. Caracteristici generale…………………………………………………………………15 2.2. Tipuri de afaceri on-line……………………………………………………………..17 2.3. Etapele realizării unei afaceri on-line……………………………………………23 2.4. Mijloace de plată în afacerile electronice………………………………………28 2.5. Categorii de fraude pe…

  • Utilitatea Unui Sistem Informatic de Tip Erp

    INTRODUCERE În ultimul deceniu s-a înregistrat o dezvoltare importantă a micilor afaceri care au luat amploare în statele din Europa. Ca urmare a dezvoltării acestui sector a crescut prosperitatea, cresterea nivelului de trai si o dezvoltare importantă atât a acestor state cât si a celor industrializate. P. Drucker spunea că “micile afaceri reprezintă catalizatorul principal…

  • Aplicatia Ccleaner

    General: Ce sunt regiștrii? Ce sunt fișierele temp? Ce e cache-ul? Ce e un serviciu? Plus alți termeni folosiți la care mă mai gândesc și ii voi scrie aici. Ce e un sistem de operare?(definitie Radulescu) Ce e o clasa sau instantieire?(definitie Oprea)? Ce e o clasa? Ce e un obiect? Ce e incapsulare Etc…

  • Implementarea Unui Convertor Pentru Limbajul Descriptiv Hmi

    Implementarea unui convertor pentru limbajul descriptiv HMI(Human Machine Interface) Lucrare de diplomă – Cuprins 1. Introducere 1.1Definirea problemei și motivarea alegerii temei Prezenta lucrare reprezintă o parte a unui proiect realizat de compania Yazaki Component Technology Timișoara(companie din domeniul automotive);aceasta presupune realizarea unui convertor numit convertor PXA. Acest convertor va realiza convertirea in QML a…

  • Arhitecturi de Acces la Internet Pentru Utilizatori Casnici Si Institutii Mici

    Cuprins Capitolul I. Introducere…………………………………………………………………………………………………4 Capitolul II. Rețele de calculatoare Cuprins 2 I. Introducere 4 II. Rețele de calculatoare 6 2.1.Rețele locale 6 2.1.1. Topologia rețelelor 6 2.1.2. Arhitectura rețelelor 7 2.2. Echipamente de comunicație 8 2.2.1. Hub-ul 8 2.2.2. Switch-ul 9 2.2.3. Router-ul 9 2.3. Cabluri și conectori 10 2.4. Adrese IP 11 2.5. Modelul…