Magazin Online Bazat PE Sistemul Opencart

FUNDAȚIA PENTRU CULTURĂ ȘI ÎNVĂȚĂMÂNT “IOAN SLAVICI” TIMIȘOARA

UNIVERSITATEA “IOAN SLAVICI” TIMIȘOARA

FACULTATEA DE INGINERIE

DOMENIUL CALCULATOARE ȘI TEHNOLOGIA INFORMAȚIEI

FORMA DE ÎNVĂȚĂMÂNT – ZI

PROIECT DE DIPLOMĂ

CONDUCĂTOR ȘTIINȚIFIC

prof. univ. dr . Titus Slavici

ABSOLVENT

Nicević Mirsad

– 2016 –

FUNDAȚIA PENTRU CULTURĂ ȘI ÎNVĂȚĂMÂNT “IOAN SLAVICI” TIMIȘOARA

UNIVERSITATEA “IOAN SLAVICI” TIMIȘOARA

FACULTATEA DE INGINERIE

DOMENIUL CALCULATOARE ȘI TEHNOLOGIA INFORMAȚIEI

FORMA DE ÎNVĂȚĂMÂNT – ZI

MAGAZIN ONLINE BAZAT PE SISTEMUL OPENCART

CONDUCĂTOR ȘTIINȚIFIC

prof. univ. dr . Titus Slavici

ABSOLVENT

Nicević Mirsad

2016

UNIVERSITATEA DIN ORADEA

FACULTATEA de Inginerie Electrică Și Tehnologia Informației

DEPARTAMENTUL Calculatoare Și tehnologia informației

TEMA _________________

Lucrare de Finalizare a studiilor a studentului________________________

1). Tema lucrării de finalizare a studiilor: __________________________________________________________________________________________________________________________________________________________________________________________________________

2). Termenul pentru predarea lucrării ______________________________________________

3). Elemente inițiale pentru elaborarea lucrării de finalizare a studiilor __________________________________________________________________________________________________________________________________________________________________________________

4). Conținutul lucrării de finalizare a studiilor: _______________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________

5). Material grafic: ________________________________________________________________________________________________________________________________________________________________________________________________________________________________

6). Locul de documentare pentru elaborarea lucrării:

__________________________________________________________________________________________________________________________________________________________

7). Data emiterii temei _____________________________________________________________

Coordonatori Științifici

Prof. Univ. Dr. Titus Slavici

REFERAT

PRIVIND LUCRAREA DE LICENȚĂ

A

ABSOLVENTULUI / ABSOLVENTEI : ……………………………………….

DOMENIUL Calculatoare Și tehnologia informației

SPECIALIZAREA Tehnologia Informației

PROMOȚIA 2016

Titlul lucrării ………………………………………………………………………..

…..…………………………………………………………………………………………………

Structura lucrării …………………………………………………………………….

…………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………

…………………………………………………………………………………………………………………………………………………………………………………………………………………

Aprecieri asupra conținutului lucrării de LICENȚĂ (finalizare a studiilor), mod de abordare, complexitate, actualitate, deficiențe

………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………

Aprecieri asupra lucrării (se va menționa: numărul titlurilor bibliografice consultate, frecvența notelor de subsol, calitatea și diversitatea surselor consultate; modul în care absolventul a prelucrat informațiile din surse teoretice)

…………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………

(se va menționa: opțional locul de documentare și modul în care absolventul a realizat cercetarea menționându-se contribuția autorului)

……………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………

Concluzii (coordonatorul lucrării trebuie să aprecieze valoarea lucrării întocmite, relevanța studiului întreprins, competențele absolventului, rigurozitatea pe parcursul elaborării lucrării, consecvența și seriozitatea de care a dat dovadă absolventul pe parcurs)

……………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………

………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………

Redactarea lucrării respectă …………………………………………………. cerințele academice de redactare (părți, capitole, subcapitole, note de subsol și bibliografie).

Consider că lucrarea îndeplinește / nu îndeplinește condițiile pentru susținere în sesiunea de Examen de LICENȚĂ (finalizare a studiilor) din IULIE 2016 și propun acordarea notei ………………

Oradea,

Data Conducător Științific

Prof. univ. Dr. Titus Slavici

Cuprins

Introducere

INTERNET s. n. Rețea internațională de calculatoare, formată prin interconectarea rețelelor locale și globale, destinată să faciliteze schimbul de date și informații în diverse domenii. – Abr. din engl. Inter[national] Net[work]. (conform cu Dicționarul Explicativ al limbii Române, ediția 2009).

Acest cuvânt are doua sensuri, unul scris cu majusculă, iar cealalta cu minusculă, astfel că, Internet, fiind substantiv propriu, desemnează o rețea mondială de calculatoare, interconectate conform protocoalelor TCP/IP, iar internet, substantiv comun, desemnează rețele speciale, capabil să interconecteze două sau mai multe rețele autonome aflate la mare depărtare una față de cealaltă.

Doar aproximativ 20% din populația planetei folosea Internetul in anul 2008, ca mai apoi, in anul 2014, numărul utilizatoriilor a urcat la aproximativ 40%, aproape jumătate din populația totală a planetei, iar numărul este in continuare creștere.

In prezent, Internetul este intreținut de multe firme comerciale, bazându-se pe specificații tehnice detaliate, cum ar fi „protocoale de comunicație”. Aceste protocoale descriu toate regulile de transmitere a datelor in rețeaua Internet. Protocoalele fundamentale sunt Internet Protocol (IP), Transmission Control Protocol (TCP), și User Datagram Protocol (UDP). Există doi termeni inrudiți cu Internet, respectiv internet: intranet si extranet. Intranet-ul este o rețea particulară, de regulă folosit in companiile mai mari, la care au acces numai angajații companiei respective. Intranet-ul este separat de Internet, principiile de funcționare fiind similare cu cele ale Internetului. Extranet-ul este un intranet particular, la care au acces nu numai angajații unei companii, ci și alte persoane sau grupuri autorizate din alte companii, iar accesul are loc prin intermediul Internetului.

Accesul la Internet se poate face prin mai multe metode, unele cu avantaje, altele cu dezavantaje. Accesul la Internet prin linie de telefonie fixă se realizează cu ajutorul unui modem. Modemul este o componentă al calculatorului, fiind capabil să convertească semnalele digitale in semnale analogice, care pot circula prin rețeaua telefonică. Acest tip de acces nu se mai utilizează aproape deloc, având o viteză foarte mică comparativ cu alte tipuri de acces. Alte tipuri de acces folosite sunt cele Wi-Fi (fără fir), cele cu fibră optică, având viteze de transfer foarte mari, cele prin rețele de telefonie mobilă (GSM), care de asemenea au viteze foarte bune de transfer (3G/4G), etc.

Primul site web din Internet a apărut in anul 1991, care avea adresa nxoc01.cern.ch. Incepând cu anul 2005, numărul site-urilor web era de aproximativ 75 milioane, ca mai apoi, in anul 2008, numărul site-urilor sa atinga 190 milioane. Este foarte probabil ca la jumătatea anului 2016, numărul site-urilor web să depașească un miliard.

Există multe aplicații Internet, cel mai popular fiind afișarea de informații in format text, imagini si chiar sunete, apoi comunicația in poștă electronică (e-mail), cu funcții precum transfer de fișiere si informații. De asemnea există si aplicații precum comunicarea video, sunet si text, televiziune prin Internet, comerț online, site-uri massmedia, jocuri in rețea, operațiuni bancare si efectuarea de plăți online, si multe altele. World Wide Web, prescurtat WWW, este de asemenea o aplicație integrativă, cu o interfață foarte atrăgatoare, simplu de folosit. WWW a fost inventat in anul 1993 de către Tim Berners-Lee. Pentru folosirea aplicațiilor din web enumerate, este necesar de un browser, de exemplu: Internet Explorer, Mozilla Firefox, Google Chrome, Apple Safari etc.

Cu ajutorul Internetului, avem acces la divertisment, de exemplu vizionarea filmelor, videoclipuri, cărți, muzică, documentație si multe altele. Un mare avantaj al Internetului este comerțul electronic, prin care furnizorii de servicii si produse își pot dezvolta afacerea prin punerea la dispoziția clientului o serie de produse, pe o platformă online, in care clientul poate vizualiza informații despre un produs, inclusiv preț, cumpărare online ș.a.m.d.

Gradul de răspândire a Internetului in intreaga lume este rapidă, accesul fiind simplu si ieftin, insă la fel de periculos poate fi, deoarece poate avea consecințe negative, pentru că nimeni nu garantează corectitudinea utilizatorului. Astfel, există programe dăunătoare create de rău-voitori, incepând de la spionarea activității unui utilizator, până la furturile din conturile bancare.

Rețeaua Internet si WWW este o rețea mare de calculatoare, la ordinul zecilor sau sutelor de milioane de calculatoare, rețea ce deține cantități uriașe de informații, unele dintre acestea fiind gratuite sau contra cost. Rețeaua World Wide Web este cea mai dezvoltată parte din internet, creată in 1989 in Europa.

Capitolul I

Prezentarea proiectului

"Metode conforme cu directivele europene pentru includerea tineretului pe piața forței de muncă: transferul de know-how în statele non-UE" este un proiect care se va ocupa de incluziunea socială a tinerilor în problematica pieței muncii, care este de o importanță maximă în ziua de azi.

Context și justificarea proiectului: statelor membre ale UE, dar nu numai, țările non-UE, de asemenea s-au confruntat în ultimii ani cu o creștere uriașă și rapidă a ratei șomajului în rândul tinerilor însoțită de o tranziție dificilă a tinerilor de la școală la muncă. Tinerii, ca grup, au plătit cel mai mare preț în timpul crizei globale, fiind deosebit de dezavantajați în comparație cu adulții, atunci când vine vorba de perspectivele lor de a fi absorbiți de piața forței de muncă. Proiectul își propune să discute și să faciliteze integrarea pe piața muncii a tinerilor din România, Italia, Serbia și Republica Moldova.

Puncte-cheie: asigurarea de schimburi de bune practici și transfer de know-how pentru a facilita integrarea tineretului pe piața forței de muncă în conformitate cu legislația UE pentru statele non-UE; creșterea gradului de conștientizare publică în România, Italia, Serbia și Republica Moldova pentru problemele UE.

Grupurile țintă ale proiectului sunt: ​​tineri absolvenți din România, Italia, Serbia și Moldova factorii de decizie și implementatori politicilor, serviciile publice de ocupare a locurilor de muncă, parteneri sociali, ONG-uri, societatea civilă, personal academic, angajatori, universități, organisme profesionale și asociațiile de afaceri.

I.1 Obiectivele proiectului

Obiectivul principal al proiectului este de a crește șansele de angajare ale studenților și posibilitățile de intrare pe piața forței de muncă după absolvire.

Obiectivele specifice sunt:

Obiectivul 1. stimularea dezbaterii între diferitele părți interesate cu privire la metodele inovative de tranziție a tinerilor pe piața forței de muncă, în special cu privire la abordarea inovatoare a „Simulate Enterprise” care vine în conformitate cu obiectivul programului „Jean Monnet” – promovarea inovației în predare și cercetare (de exemplu intersectorială și / sau studiile multidisciplinare, educație deschisă, rețea cu alte instituții).

Obiectivul 2. diseminarea rezultatelor proiectului și promovarea metodelor de tranziție de la școală la viața activă și

Obiectivul 4. diseminarea conceptului de "Simulate Enterprise" ca un instrument inovativ pentru pregătirea studenților în acumularea abilităților practice pentru carierele lor profesionale viitoare vine în conformitate cu obiectivul programului „Jean Monnet” – încurajarea implicării tinerilor academicieni în procesul de predare și de cercetare pe teme europene prin activități.

Obiectivul 3. îmbunătățirea oportunitățile de carieră de afaceri prin accesul la piața națională și internațională a muncii potențialilor angajatori și

Obiectivul 5. îmbunătățirea dialogului între lumea academică și factorii de decizie vine în conformitate cu obiectivul programului „Jean Monnet” – încurajarea dialogului între lumea academică și a factoriilor de decizie, în special pentru a consolida guvernanța politicilor

I.2 Relevanța proiectului

Relevanța proiectului rămâne, de asemenea, în conceptul inovativ de transfer de bune practici și de know-how în ceea ce privește adaptarea unor noi instrumente inovatoare (întreprinderea simulată, consiliere în carieră) pentru trecerea tinerilor la nevoile grupului țintă, respectiv la nevoile persoanelor aparținând grupurilor vulnerabile. Aceasta propune un mecanism de integrare socială și profesională prin care se întâlnesc la jumătatea drumului angajatorii și persoanele cu posibilități financiare reduse, îndrumând și monitorizând procesul de asimilare al unei persoane în mediul profesional, adaptarea treptată a acesteia la cerințele locurilor de muncă și de conduită ale echipei în care ea lucrează.

În contextul în care nu există date statistice, în domeniul de inserție a tinerilor pe piața forței de muncă, doar la nivel național și regional, și nu local, s-a efectuat o analiza de necesitate pe un grup de 300 de studenți, 100 de angajatori, 100 de personal didactic, care a constat în completarea unui chestionar cu 15 de întrebări. Ca urmare, a fost făcut un raport pe studenți și angajatori. Din toți studenții chestionați, 33,5% au afirmat că nu pot găsi un loc de muncă după absolvire, 42,6% au afirmat că nu au primit un loc de muncă din cauza lipsei lor de experiență în muncă, 11% lucrează în alt domeniu față de cel pe care l-au absolvit (locuri de muncă prost plătite), 10% au considerat că facultatea nu i-a ajutat să găsească un loc de muncă, 5% au confirmat că doresc să părăsească țara în scopul de a obține un loc de muncă bine plătit în străinătate și 6% au afirmat că s-au angajat în timpul studiilor. În plus, dintre toți angajatorii chestionați 37% au considerat că tinerii absolvenți nu au experiența necesară pentru angajare, pe 10% îi vor angaja ca personal necalificat, 42,8% au apreciat că absolvenții nu au abilități practice conforme cerințele lor.

Ultimul capitol al analizei arată că 75,8% personalul academic a subliniat necesitatea de a armoniza programele lor cu ale altor universități europene în vederea facilitării inserției, 8% considerând că elevii răspund la cerințele angajatorului.

Ca urmare, este evident că studenții au nevoie de servicii care să îi facă independenți prin dezvoltarea personală și profesională, dobândirea de competențe și abilități care îndeplinesc cerințele de pe piața forței de muncă și asigurarea unei integrări durabile pe piața muncii. Angajatorii trebuie să fie mai flexibili, pentru a facilita introducerea de tineri pe piața muncii.

I.3 Activitățile proiectului

În scopul de a facilita tranziția tineretului către piața muncii proiectului propune următoarele activități:

Activitatea de management: prin elaborarea planurilor de lucru (anul 1, anul 2 si anul 3), întâlniri cu personalul care se ocupa de implementare, monitorizarea proiectului, procedurile de achiziții publice;

Activitatea de conștientizare cu privire la măsurile inovatoare de facilitare a integrării pe piața muncii a tinerilor: conferința de lansare al proiectului, lansarea și actualizarea site-ul proiectului, crearea și actualizarea unei e-platforme interactivă, crearea și actualizarea unei pagini de Facebook a proiectului, campanii de informare, conferința de închidere a proiectului;

Crearea unei rețele și schimbul de bune practici privind măsuri inovatoare pentru a facilita tranziția tinerilor de la educație la piața forței de muncă și mediu de întreprindere / de afaceri:

Atelier 1: Măsuri inovatoare pentru a facilita integrarea pe piața muncii a tinerilor- accent pe situația din România și analiza transferabilității pentru alte țări europene și vizită de studiu asupra întreprinderilor simulate într-o universitate românească cu profil economic;

Atelier 2: "Cum sa obții un loc de muncă mai rapid – CV-ul cheia succesului"

Atelier 3: "Schimburi de bune practici în schimbarea mentalității angajatorului față de lipsa de experiență a tinerilor absolvenți"

Atelier 4: "Importanța adaptării programei la nevoile angajatorilor"

Atelier 5: Măsuri inovatoare pentru a facilita integrarea pe piața muncii a tinerilor- accent pe situația din Italia și analiza transferabilității pentru alte țări europene

Atelier 6: Măsuri inovatoare pentru a facilita integrarea pe piața muncii a tinerilor- accent pe situația din Serbia

Atelier 7: Măsuri inovatoare pentru a facilita integrarea pe piața muncii a tinerilor- accent pe situația din Moldova.

Studiu privind impactul măsurilor inovatoare privind integrarea tinerilor și a mobilității pe piața forței de muncă la nivel european: elaborarea studiului și finalizarea, diseminarea studiului. Acesta va combina perspectivele demografice și economice în stabilirea unor serii de recomandări cu privire la modul de proiectare și implementare a primelor programe de tranziție în așa fel încât să se evite alegerea greșită a aptitudinilor și să se promoveze utilizarea eficientă a resurselor umane. Studiul va avea un număr de identificare și rezultatele vor fi diseminate nu doar la nivel regional, național, dar și la nivel european, în Italia, Serbia și Republica Moldova.

I.4 Concluziile proiectului

Valoarea adăugată a proiectului este dată de includerea de noi entități propuse de Europa: parcuri științifice și industriale, start-up și spin-off companii din domeniul academic. Astfel va fi facilitată conversia rezultatelor cercetării științifice în produse viabile pe piață. Punctul forte constă în competențele personalului academic implicat în proiect, care va asigura efectul multiplicator al proiectului. Calitatea studiului realizat va avea un impact mare asupra diferitelor părți interesate, cu un rol de inserție pe piața muncii.

CAPITOLUL II

Dezvoltarea și tehnologiile folosite la SITE-UL / E-PLATFORMA http://www.magazinulmeu.ro/ [6][7]

II.1 Descrierea. Cerințe și specificații [8][9][10][11]

După cum spuneam și la începutul acestei lucrări, s-a dorit a se realiza o platformă electronică pentru a crește șansele de angajare ale studenților și posibilitățile de intrare pe piața forței de muncă după absolvire, împreună cu un site de informare.

Urmărind aceste linii directoare, am stabilit primele specificații pe care să le urmăm în dezvoltarea proiectului.

Aveam nevoie de un site dinamic, unde pe prima pagină să fie prezentate cele mai recente informații, precum și cele mai recente locuri de muncă anunțate disponibile de către companiile parte din proiect, pentru a încuraja tinerii să se înscrie și să consulte materialele disponibile. Am ales ca procesul de înscriere să fie relativ facil, solicitând tinerilor doar introducerea unei adrese de e-mail și alegere unei parole pentru accesul în platformă. Dat fiind publicul țintă, o cerință intrinsecă pentru proiect a fost ca acesta să fie disponibil în totalitate și dispozitivelor mobile (telefon, tabletă). Am realizat un site în tehnologia ”responsive web design”, tehnologie care presupune crearea de pagini web care să furnizeze o vizualizare și interacțiune optimă – citire și navigare ușoară, cu un minim de operații, indiferent de platforma de pe care este accesat. Această cerință se suprapune peste trendul global de utilizare a internetului, care este în scădere de pe desktop și în creștere de pe dispozitivele mobile. Traficul mobil de internet a cunoscut o adevărată explozie în ultima perioadă: din iunie 2014 și până în mai 2015 traficul mobil a crescut la 32,79% din traficul internet la nivel global, în timp ce traficul de pe desktop a scăzut în aceeași perioadă de la 66.86% la 61.43% din traficul global de internet.

Pentru că eram mai mulți oameni implicați în acest proiect, în afara echipei condusă de mine, am ales să folosim modelul prototip pentru dezvoltarea de software, după cum am fost învățați în facultate, pentru a putea controla proiectul și a-l dezvolta relativ ușor.

În interiorul echipei, pentru a nu ne suprapune și pentru a ne folosi potențialul la maxim, am ales să divizăm proiectul în mai multe părți, pe care le-am alocat fiecăruia după specific. Eu am ales să mă ocup de partea tehnică, respectiv serverul pe care se face găzduirea proiectului, de prezentarea proiectului in social-media, respectiv pe Facebook, YouTube, Google+, dezvoltarea întregii structuri a proiectului, creat în tehnologia MVC (model-view-controller) folosind Ruby on Rails, crearea unor pagini folosind tehnologii HTML5, precum și integrarea părților dezvoltate de ceilalți colegi. Alsandi Alexandru s-a ocupat de dezvoltare bazelor de date din proiect folosind tehnologii SQLite și de dezvoltarea unor pagini, folosind de asemenea HTML5. Budeanu Florian a fost responsabil cu tehnologiile JavaScript și cu elementele CSS3 elaborării proiectului.

II.2 Detaliile tehnice. [12]

Hardware:

Pentru a oferi stabilitate și accesabilitate, am ales să găzduim platforma pe un server colocat într-un datacenter. Am ales această soluție pentru că datacenter-ul oferă un mediu controlat din punctul de vedere al condițiilor de mediu, precum și multiple conexiuni de internet de la majoritarea furnizorilor de servicii de internet naționali și internaționali, astfel că timpii de răspuns ai aplicației sunt foarte mici.

Ca hardware am ales să folosim un server HP rack-mountable, ce are un procesor Intel Xeon quad-core, cu 8 Gb memorie disponibilă și două hard-disk-uri în tehnologie SAS, de 146 Gb fiecare, instalate în RAID1.

Software:

Din punct de vedere al software-ul instalat, am ales să instalăm o soluție de virtualizare VMware ESXi, în care am instalat un server linux, utilizând distribuția Ubuntu Server LTS 15.04. Pentru partea de webserver am instalat Apache HTTP Server 2.4.12, împreună cu Phusion Passenger ca server de aplicație pentru Ruby on Rails. Platforma a fost dezvoltată folosind HTML5, Ruby on Rails, SQLite, Node.js

II.2.1 Hypervizorul OpenVZ:

OpenVZ este o soluție de virtualizare de tip container pentru Linux.
OpenVZ crează multiple containere izolate și securizate pe un singur echipament fizic și se asigură că aplicațiile rulate funcționează în parametri normali și nu crează conflicte.
Fiecare container rulează și executa aplicații identic ca și un server fizic, poate fi restartat având accesul deplin (root) asupra sistemului de operare.
Serverele virtuale OpenVZ se potrivesc perfect pentru companiile și utilizatorii cu trafic moderat, pentru cei ce vor să împartă aplicațiile și consumul de resurse pe multiple servere.

In timp ce Vmware si Xen, care sunt tehnologii de virtualizare si ofera virtualizare completa si poate rula mai multe sisteme de operare si versiuni de Kernel diferite, OpenVZ foloseste un singur patch de kernel Linux si poate rula numai pe Linux. Toate aceste containere OpenVZ impartasesc aceasi arhitectura si versiune kernel. Acesta poate fi un dezavantaj in cazul in care oaspetii solicita versiuni de kernel diferite, altele decat cele de pe host. Totusi, este foarte eficient si foarte rapid.

Kernel-ul OpenVZ este un kernel de tip Linux, modificat pentru a adauga suport pentru containerele OpenVZ. Kernel-ul modificat ofera virtualizare, management de resurse, izolare.

Fiecare container este o entitate separata, iar fiecare are propriile fisiere, grupuri si utilizatori, procese, retea, dispozitive si obiecte IPC.

Managementul de resurse al OpenVZ consta in patru componente, si anume: Cote de disc cu doua niveluri, planificator CPU, planificator I/O, si user Beancounters. Aceste resurse pot fi schimbate in timpul rularii, eliminand necesitatea repornirii.

Fiecare container are propria cota de disc, masurata in blocuri de disc si inoduri. In container, exista posibilitatea sa folosim unelte standare pentru a seta cotele de disc UNIX per grup si per utilizator.

Planificatorul CPU este o implementare pe doua niveluri. Pe primul nivel, planificatorul decide care container ofera timp CPU-lui, iar pe cel de al doilea, planificatorul standard Linux decide care proces sa ruleze in acel container, utilizand procesele prioritare al standardului Linux.

Se pot seta valori diferite pentru fiecare container in parte, iar timpul real al unitatii centrale de procesare va fi distribuita proportional la aceste valori. OpenVZ ofera posibilitati precum:

setari stricte al limitei procesorului, cum ar fi 10 la suta din timpul total al CPU (–cpulimit);

limitarea nucleelor procesorului disponibile containerului (–cpus);

unirea unui container la un set specific de procesoare (–cpumask).

Similar planificatorului CPU, planificatorul I/O este de asemenea pe doua niveluri. Fiecarui container ii este atribuita o prioritate I/O, iar acest planificator distribuie latimea de banda valabila, in functie de prioritati.

Ultimul component, si anume User Beancounters, este un set de contoare per container, cu scopul de a preveni vreun container de a acapara resursele sistemului. In kernel-urile curente ale OpenVZ, exista doi parametrii primari, si anume ram si swap, si altele optionale.

OpenVZ restricitoneaza accesul containerelor la dispozitive fizice reale. Singurul care poate permite accesul containerelor la dispozitive reale, precum porturi USB, dispozitive PCI sau placi fizice de retea, este administratorul.

II.2.2 Sistemul de operare – CentOS:

CentOS este un sistem de operare de tip GNU/Linux, gratuit, produsa de Red Hat, scopul acestuia fiind de a oferi o distributie gratuita pentru afaceri. Acesta este o distributie populara GNU/Linux pentru servere web, detinand astfel o cota de aproape 30 de procente dintre serverele web existente pana in prezent. CentOS provine de la Community Enterprise Operating System.

Produsul Red Hat Enterprise Linux este disponibil numai printr-un serviciu platit, oferind astfel accest la actualizari de soft si suport tehnic. Este compus din pachete soft sub licenta cu sursa deschisa, sau sub licenta libera, codul sursa fiind de asemenea publicat de Red Hat.

Dezvoltatorii folosesc codul sursa Red Hat pentru a crea un produs final apropiat de Red Hat Enterprise Linux, iar marcile si logo-urile sunt modificate, deoarece Red Hat nu permite redistribuirea acestora.

II.2.3 Webserverul Apache HTTP Server

Autor Robert McCool

Dezvoltator Apache Software Foundation

Lansare initiala 1995

Ultima lansare 2.4.12 / 29 ianuarie 2015

Scris in C/C++ si XML

Sisteme de operare Windows, OS X, Linux, Unix, FreeBSD, Solaris, NetWare, OS/2, TPF, OpenVMS si eComStation

Licenta Licenta Apache 2.0

Website httpd.apache.org

Conform rubricii de FAQ de pe site-ul proiectului Apache, numele Apache a fost ales din respect pentru tribul nativ american Apache și pentru competențele sale superioare în război și strategie. Numele a fost mult timp considerat a fi un joc de cuvinte pentru un “A Patchy Server” (deoarece a fost un set de patch-uri de software).

Apache suportă o varietate de caracteristici, multe implementate ca module compilate care extind funcționalitatea de bază. Acestea pot varia de la suport pentu limbajul de programare server-side pana la sisteme de autentificare. Unele interfețe comune suporta Perl, Python, Tcl, și PHP. Modulele populare de autentificare includ mod_access, mod_auth, mod_digest și mod_auth_digest, succesorul mod_digest. Alte caracteristici includ Secure Sockets Layer și Transport Layer Security suport (mod_ssl), un modul de proxy (mod_proxy), un ReWriter URL (mod_rewrite), fișierele jurnal personalizat (mod_log_config), și de sprijin de filtrare (mod_include și mod_ext_filter).

Metodele de comprimare populare pe Apache includ modulul de extensie extern, mod_gzip, implementat pentru a ajuta la reducerea dimensiunilor paginilor web furnizate prin HTTP. ModSecurity este un motor deschis detectare si prevenire a intruziunilor sursă pentru aplicații Web. Logurile Apache pot fi analizate prin intermediul unui browser web, folosind scripturi gratuite, cum ar fi AWStats / W3Perl sau Visitors.

Virtual hosting permite instalarea Apache pentru a deservi mai multe site-uri web diferite. De exemplu, o unitate cu o instalare Apache ar putea deservi simultan www.examplu.ro, www.examplu.com.ro, test52. server-test.examplu.edu.ro etc.

Apache are mesaje de eroare configurabile, baze de date de autentificare bazate pe DBMS și negocierea conținutului. De asemenea, este susținută de mai multe interfețe grafice (GUI).

Susține autentificare prin parolă și autentificare cu certificat digital. Deoarece codul sursă este disponibil gratuit, oricine poate adapta serverul pentru nevoi specifice, și există o bibliotecă publică mare de add-on-uri pentru Apache.

În loc de a pune în aplicare o singură arhitectură, Apache oferă o varietate de module  MultiProcessing  (MPMS), care ii permit Apache sa ruleze in mod process-based, hybrid (process si thread) sau event-hybrid pentru a se potrivi mai bine cerințelor fiecărei infrastructuri. Aceasta implică faptul că alegerea corectă a MPM și configurația corectă este importantă.

Proiectul Apache HTTP Server este un efort de dezvoltare de software de colaborare care vizează crearea unui cod sursă de calitate comercială, cu o implementare robustă, bogat în caracteristici și disponibile în mod liber pentru un server HTTP (Web). Proiectul este gestionat în comun de către un grup de voluntari situate în întreaga lume, folosind Internetul și Web pentru a comunica, planifica și de a dezvolta serverul și documentația aferentă. Acest proiect face parte din Apache Software Foundation. În plus, sute de utilizatori au contribuit cu idei, cod și documentație de proiect.

II.2.4 Platforma de dezvoltare web PHP [21]

PHP este un limbaj de tip server-side, creat pentru dezvoltare web. La inceput, PHP insemna Personal Home Page, dar ulterior a devenit Hypertext Preprocessor, si este de asemenea folosit ca și limbaj de programare de uz general.

PHP poate fi implementat intr-un cod HTML, sau se poate combina cu framework-uri si template-uri web. Codul este procesat de către un interpretor și ulterior implementat ca un modul în server-ul web. Server-ul web combină rezultatele si execută codul PHP, care, bineințeles, poate fi o imagine, sau orice tip de dată. Deobicei, PHP se utilizează cu scopul de a crea pagini web dinamice, cu conținut dinamic, chiar și imagini.

PHP este ca un filtru, care preia conținutul text sau instrucțiunile php dintr-un fisier din care rezultă alt flux de date. Adesea, rezultatul va fi HTML, insă mai poate fi si XML, JSON sau date precum imagini sau sunete.

Arhitectura LAMP este foarte popular in industria web, iar litera P este adesea folosit pentru a face referire la PHP, alături de Linux, Apache și MySQL. De asemenea, litera P mai poate face referire la Perl, Python. Pachete comune precum WAMP si MAMP sunt valabile si pentru Windows si OS X, cu prima litera făcând referire la sistemul de operare.

In anul 2007, peste 20 de milioane de domenii au avut găzduire web cu PHP instalat, ca peste 7 ani, in 2014, procentajul domeniilor cu PHP implementat a fost de peste 80%, si este cel mai utilizat soft de tip open source.

II.2.5 Serverul de aplicație Phusion Passenger

Dezvoltator Phusion

Ultima lansare 5.0.10 / 11 iunie 2015

Scris în C++ și Ruby

Licența Licența MIT

Website www.phusionpassenger.com

Phusion Passenger (cunoscut informal în rândul comunității Ruby sub numele de mod_rails și mod_rack) este un server gratuit de web și de aplicație (application server) cu suport pentru Ruby on Rails, Python și Node.js . Acesta este conceput pentru a se integra în serverul Apache HTTP sau serverul de web Nginx, dar are, de asemenea, un mod pentru rularea standalone fără un server web extern. Phusion Passenger acceptă sistemele de operare Unix-like și este disponibil ca un gem package sau ca pachete native Linux.

Proiectat inițial pentru aplicații web construite pe framework-ul Ruby on Rails, mai târziu a fost extins pentru a sprijini Ruby framework-urile web arbitrare prin interfața Rack Interface. În versiunile ulterioare s-a adaugat de asemenea suport pentru Python prin intermediul interfeței WSGI, precum și suport pentru Node.js. În 2012, Phusion a anuntat Phusion Passenger Enterprise, o varianta comercială, care nu mai era gratuită, prezentată ca având "o gamă largă de caracteristici premium" . Phusion a afirmat că varianta open source va continua să fie dezvoltată și menținută în parallel cu varianta Enterprise.

Phusion pasager este "configurare preferată de implementare", pentru aplicațiile Ruby on Rails și a fost recomandat de către Ruby on Rails autorilor. În combinație cu Ruby 2.0, sau cu Ruby Enterprise Edition (acum întrerupt), Phusion Passenger susține că este capabilă să reducă consumul de memorie al Rails cu 33%, precum și creșterea performanței acestuia.

II.2.6 HTML5 [14][15]

HyperText MarkUp Language

Dezvoltator World Wide Web Consortium și WHATWG

Lansare inițială 28 octombrie 2014

Cea mai recentă lansare HTML 5

HTML 5.1 (draft de lucru)

HTML = HyperText Markup Language, într-o traducere ad-litteram, Limbaj de marcare, este un limbaj standard utilizat pentru crearea paginilor web ce pot fi afișate într-un browser. Scopul HTML este mai degrabă de a prezenta informațiile – paragrafe, fonturi, tabele, etc – decât de a descrie semantica documentului.

Specificațiile HTML sunt dezvoltate de World Wide Web Consortium W3C.

HTML5 este o tehnologie de bază a internetului, utilizată pentru structurarea și prezentarea de conținut pentru World Wide Web. Din octombrie 2014, acesta este a cincea revizuire finală și completă a standardului HTML al World Wide Web Consortium (W3C). Versiunea anterioară, HTML 4, a fost standardizat în 1997.

Obiectivele sale de bază au fost să îmbunătățească limbajul, cu suport pentru cele mai recente elemente multimedia în timp ce se menține ușor de citit de oameni și în mod constant înțeles de către browsere. HTML5 este gândit să reunească nu numai HTML 4, ci și XHTML 1 și DOM Level 2 HTML.

În continuarea predecesorii săi imediați HTML 4.01 si XHTML 1.1, HTML5 este un răspuns la faptul că HTML și XHTML, folosite în comun pe World Wide Web, sunt un amestec de caracteristici introduse de specificații diferite, pe lângă cele introduse de produsele software cum ar fi browserele. De asemenea, este o încercare de a defini un singur limbaj de marcare care pot fi scrise în HTML sau XHTML. Acesta include modele detaliate de prelucrare pentru a încuraja implementări mai interoperabile; extinde, îmbunătățește și raționalizează marcajul disponibil pentru documente și introduce markup și API (application programming interface) pentru aplicații web complexe. Din aceleași motive, HTML5 este, de asemenea, un potențial candidat pentru aplicațiile mobile cross-platform. Multe caracteristici ale HTML5 au fost construite cu considerentul de a fi capabil să ruleze pe dispozitive low-powered cum ar fi smartphone-urile și tabletele.

În particular, HTML5 adaugă multe caracteristici noi în sintaxă. Acestea includ noile elemente <videoclip>, <audio> și <canvas> , precum și integrarea conținutului Scalable Vector Graphics (SVG) (înlocuind tag-ul generic <object>), precum și MathML pentru formule matematice. Aceste caracteristici sunt concepute să facă mai ușoară includerea și manipularea elementelor multimedia și conținutului grafic pe web, fără a fi nevoie să recurgă la plugin-uri și API-uri. Alte elemente noi de structură , cum ar fi, <section> <principal>, <Article>, <header>, <footer>, <aside>, <nav> și <figure> sunt concepute pentru a îmbogăți conținutul semantic al documentelor. Au fost introduse noi atribute, unele elemente și atributele au fost eliminate și unele elemente, cum ar fi <a>, <cite> și <menu> s-au schimbat, redefinit sau s-au standardizat. API-uri și Document Object Model (DOM) sunt lăsate pe planul secund, dar sunt părți fundamentale ale specificațiilor HTML5. HTML5 definește în detaliu procesarea necesară pentru documente invalide, astfel încât erorile de sintaxă vor fi tratate în mod uniform de toate browserele conforme și alți utilizatori.

HTML5 introduce elemente și atribute ce reflectă consumul tipic pe site-urile moderne. Unele dintre ele sunt înlocuitori semantice pentru utilizări comune ale blocului generic (<div>) și inline (<span>) elemente, de exemplu, <nav> (bloc de navigare pe site), <footer> (de obicei, referindu-se la partea de jos a paginii web sau la ultimele linii de cod HTML), sau <audio> si <video> în loc de <object>. Unele elemente depreciate din HTML 4.01 au fost abandonat, inclusiv elemente pur prezentare, cum ar fi <font> și <center>, ale cărei efecte au fost mult timp înlocuite cu mai capabilul CSS. De asemenea, există un accent pe importanța DOM (Document Object Model) scripting (de exemplu, JavaScript) în comportamentul Web.

Sintaxa HTML5 nu se mai bazează pe SGML în ciuda asemănării sale. Acesta a fost, totuși, proiectat pentru a fi compatibil cu prelucrarea comună de versiunile mai vechi ale HTML. Vine cu o nouă linie introductivă care arată ca o declarație tip de document SGML, <! DOCTYPE html>, care declanșează modul de redare care respectă standardele. Din 5 ianuarie 2009, HTML5 include, de asemenea Web Forms 2.0, o specificație separată a WHATWG (Web Hypertext Application Technology Working Group).

În plus față de markup specific, HTML5 specifică scripting-uri API, care pot fi utilizate cu JavaScript. Interfețele existente DOM (document object model) sunt extinse și caracteristicile de facto documentate. Există, de asemenea, noi API-uri, cum ar fi:

Elemental canvas (pânză de desen) pentru modul direct de desenare 2D

Timed media playback

Offline Web Applications

Document editing

Drag-and-drop

Cross-document messaging

Browser history management

Tipul MIME și protocol handler registration

Microdata

Web Storage, un framework de stocare în perechi, un element cheie care furnizeaza un comportament similar cu cookies dar cu o capacitate de stocare extinsă si un API îmbunătățit.

Nu toate tehnologiile de mai sus sunt incluse în specificațiile W3C HTML5, chiar dacă acestea sunt în specificațiile HTML WHATWG. Unele tehnologii conexe, care nu fac parte din nici HTML5 W3C sau WHATWG HTML, sunt după cum urmează. W3C publică specificațiile pentru aceste separat:

Geolocalizarea

The Indexed API Database, o stocare indexată ierarhic a valorilor cheie (fosta WebSimpleDB).

HTML5 File API, se ocupă de încărcările și manipularile de fișiere.

Directories and System, un API destinat sa satisfaca cazuri de utilizare client-side-storage nu foarte bine deservite de baze de date.

File Writer, un API pentru scriere în fișiere din aplicații web.

Web Audio API, un JavaScript API de nivel înalt pentru prelucrarea și sintetizarea sunetului în aplicațiile web.

ClassList API

HTML5 nu poate oferi animație în pagini web. Funcționalități suplimentare JavaScript sau CSS3 sunt necesare pentru animarea elementelor HTML. Animația este de asemenea posibilă, folosind JavaScript și HTML 4 și în elementele SVG prin SMIL, deși suportul acestuia din urmă în browser rămâne incertă începând cu 2011.

II.2.7 Baza de date MySQL

Limba Engleza

MySQL este un sistem de gestiune a bazelor de date relationale, produsa de MySQL AB si distribuit sub Licenta Publica Generala GNU. Este de asemenea o componenta importanta al LAMP, care inseamna Linux, Apache, MySQL, PHP, si este cel mai popular la ora actuala.

Este des folosit cu limbajul de programare PHP, dar cu mySQL se pot realiza aplicatii in orice limbaj. Exista scheme API ce permite scrierea aplicatiilor in limbaje de programare pentru accesarea bazelor de date mySQL, dupa cum urmeaza: C, C++, Java, PHP, Python, C# si multe altele, iar fiecare dintre acestea foloseste un tip specific API.

MySQL este o componenta integrata LAMP sau WAMP, care inseamna Linux/Windows-Apache-MySQL-PHP/Perl/Python. Este mai usor de invatat si folosit decat alte aplicatii de gestiune a bazelor de date, punem spre exemplu comanda de iesire: „exit” sau „quit”.

Pentru administrarea bazelor de date MySQL, se poate folosi fie modulul linie de comanda, sau descarcarea unei interfete grafice de pe internet al MySQL Administrator si MySQL Query Browser. Se poate de asemenea descarca aplicatia gratuita phpMyAdmin, scrisa in PHP, care este un alt instrument al bazelor de date. MySQL poate fi rulat pe platforme precum: Mac OS X, Linux, Solaris, Windows etc.

MySQL a fost creata de o companie suedeza, fondata de David Axmark, Allan Larsson si Michael Widenius. Prima versiune MySQL a aparut in 23 Mai 1995, si initial a fost creata pentru uz personal bazat pe limbajul de nivel scazut ISAM, in care creatorii l-au considerat inflexibil si prea lent. Ulterior au creat o noua interfata SQL, pastrand acelasi API ca si mSQL. Astfel, pastrand acelasi API cu sistemul mSQL, multi dezvolatori au putut folosi MySQL in loc de mSQL.

II.2.8 Mediul de rulare (runtime environment) JavaScript – aplicația Node.js [15]

Node.js este un mediu de rulare open source, cross-platform pentru aplicații server-side și de networking. Aplicațiile Node.js sunt scrise în JavaScript, și pot fi rulate în runtime environment-ul Node.js pe OS X, Microsoft Windows, Linux, FreeBSD, NonStop, IBM AIX, IBM System z și IBM i. Dezvoltarea sa este găzduită și susținută de Fundația Node.js, un proiect de colaborare (Collaborative Project ) la Linux Foundation.

Node.js oferă o arhitectură event-driven și API I/O non-blocking care optimizează performanțele și scalabilitate unei aplicații. Aceste tehnologii sunt folosite de obicei pentru aplicații web în timp real.

Node.js foloseste motorul Google V8 JavaScript pentru a executa cod și un procent mare de module de bază sunt scrise în JavaScript. Node.js conține o bibliotecă built-in care permite aplicațiilor să acționeze ca un server Web fără software suplimentare cum ar fi Apache Server HTTP sau Microsoft Internet Information Services.

Node.js câștigă teren în adoptarea ca o platformă server-side și este utilizat de IBM, Microsoft, Yahoo!, Walmart, Groupon, SAP, LinkedIn, PayPal, și GoDaddy.

II.2.9 Standardul de formatare HTML – CSS3[18][19]

Cascading Style Sheets (CSS) este un standard folosit pentru a descrie aspectul și formatarea unui document HTML. Deși cele mai multe ori folosit pentru a schimba stilul de pagini web si interfete scrise în HTML și XHTML, poate fi aplicat la orice tip de document XML, inclusiv XML simplu, SVG și XUL. Împreună cu HTML și JavaScript, CSS este o tehnologie fundamentală folosită de cele mai multe site-uri web pentru a crea pagini web atractive vizual, interfețe de utilizator pentru aplicații web și interfețe de utilizator pentru multe aplicații mobile.

CSS este gândit în primul rând pentru a permite separarea conținutului documentului de prezentare de documente, inclusiv elemente cum ar fi aspectul, culorile și fonturile. Această separare poate îmbunătăți accesibilitatea conținutului, oferă mai multă flexibilitate și control în specificarea caracteristicilor de prezentare, permite mai multor pagini HTML să împartă aceeași formatare prin specificarea unui CSS relevant într-un fișier .css separat și să reducă complexitatea și repetiția în conținutul structural, cum ar fi tabelele nesemnificative semantic, care au fost folosite pe scară largă pentru formatarea paginilor înainte ca un suport consistent de redare CSS să fi fost disponibil în toate browserele importante. CSS face posibilă separarea instrucțiunilor de prezentare de conținutul HTML într-un fișier sau o secțiune stil separată a fișierului HTML. Pentru fiecare element HTML potrivit, se oferă o listă de instrucțiuni de formatare. De exemplu, o regulă CSS ar putea preciza că "toate elemente heading 1 ar trebui să fie bold", lăsând cod curat HTML care specifica "acest text este heading 1" fără formatare cod, cum ar fi marcajul <bold> de indicare a modului în care aceste texte ar trebui să fie afișate.

Această separare de formatare și conținut face posibilă prezentarea aceleași pagină în stiluri diferite pentru diferite metode de redare, cum ar fi pe ecran, în print, prin voce (când e citit de un browser sau de un screen-reader) și pe dispozitive tactile bazate pe Braille. Acesta poate fi de asemenea utilizat pentru a afișa pagina web diferit, în funcție de dimensiunea ecranului dispozitivului pe care este vizualizat. Deși autorul unei pagini web conectează un fișier CSS cu fișierul HTML, cititorii pot specifica o foaie de stil diferit, cum ar fi un fișier CSS stocat pe computerul lor, pentru a trece peste cel specificat de autor. În cazul în care autorul sau cititorul nu a lega documentul la o foaie de stil, stilul implicit al browser-ul va fi aplicat. Un alt avantaj al CSS este că modificările estetice aduse proiectului grafic unui document (sau sute de documente) pot fi aplicate rapid și ușor, prin editarea câteva rânduri într-un singur fișier, mai degrabă decât printr-un proces laborios (și, prin urmare, costisitoare) de crawling peste fiecare linie de cod din fișier pentru schimbarea marcării.

Specificațiile CSS descrie un sistem de priorități pentru a determina ce stil se aplică dacă mai mult de o singură regulă se potrivește unui anumit element. In acest așa-numita cascadă, priorități (sau greutăți) sunt calculate și atribuite regulilor, astfel încât rezultatele sunt previzibile.

Specificațiile CSS sunt întreținute de către World Wide Web Consortium (W3C). Tipul media internet (tip MIME) text / css este înregistrată pentru utilizarea cu CSS de RFC 2318 (martie 1998). W3C operează un serviciu gratuit de validare CSS pentru documentelor CSS.

CAPITOLUL III

PHP

III.1 Noțiuni introductive [21][22]

PHP este un limbaj de programare, utilizat pentru dezvoltarea site-urilor web, iar scopul acestuia este acela de a oferi un aspect si o funcționare cât mai dinamică si plăcută. Spre deosebire de paginile create doar cu HTML, in care utilizatorul poate vedea numai imagini si text, cu PHP, pagina devine mult mai dinamică, astfel oferind o mai bună interactivitate cu utilizatorul. Drept exemplu, putem prelua, citi si prelucra date introduse de un utilizator intr-un formular prin intermediul unei baze de date. Pentru a lucra si dezvolta un site in limbajul PHP, avem nevoie de un server care ruleaza PHP, care poate fi localizat pe un server separat, sau pe unul virtual creat pe calculatorul personal.

Codul PHP poate fi scris utilizand editorul de text Notepad, iar in cazul in care lucram pe un server virtual, fisierele care conțin codul programului PHP trebuie să aibă extensia .php. Pentru a executa codul creat in fisierele respective, se utilizeaza un browser, de exemplu Internet Explorer, iar mai apoi vom trece in bara de adrese locația dupa cum urmeaza: http://localhost/exemplu.php.

Exemplu de script php:

<?php

echo „Scriptul meu php”;

?>

In exemplul ilustrat mai sus, prima linie marcheaza inceputul unui script, ca mai apoi, pe a doua linie, prin cuvantul cheie echo, afișăm un mesaj pe ecran, și foarte important, sa nu uitam simbolul de punct si virgulă de la final (;). Ultima linie reprezintă finalul codului scris in PHP.

Exemplu de combinare a codului HTML cu cod PHP:

Un lucru foarte important in programarea web, este faptul ca putem integra codul PHP in interiorul codului HTML, astfel:

<html>

<body>

<p>Text scris in HTML</p>

<?php

echo “Text scris in PHP”;

?>

</body>

</html>

In PHP, la fel ca și in multe limbaje de programare, putem marca o secvență/linie de cod prin comentariu. Acest comentariu nu face altceva decât să ignore bucata de cod selectată in acest scop. Pentru un rând, vom folosi simbolul #, iar pentru mai multe rânduri, vom folosi la inceput /*, si la finalul codului vom marca cu */.

III.2 Structuri de control PHP

Atunci cand scriem un script si programe in PHP, urmăm un set de reguli si instrucțiuni pe care le oferim limbajului de programare, acestea fiind defapt coduri sursă, ca mai apoi, interpretorul să prelucreze aceste coduri si să le transforme in cod mașină, după care sa ne ofere rezultatul codului aferent. In continuare, o scurtă prezentare al structurilor utilizate in PHP:

Structura IF

Această structură, des utilizată in PHP, reprezintă faptul că instrucțiunea se va executa, cu condiția ca valoarea expresiei evaluată este adevărată, in caz contrar, nu va executa nimic. Sintaxa este: if(condiție){instrucțiune}.

<?php

$mesaj=’Acesta este un simplu mesaj’;

Echo $text’<br/>’

$var1 = 10;

$var2 = 30;

if ($var1 < $var2) {

echo ‘Valoarea lui var1 este mai mica decat valoarea lui var2’;

}

echo “Condiția este adevărată”;

?>

Rezultatul codului de mai sus, după execuție, va afișa mesajul din interiorul if-ului, deoarece

condiția pusă in paranteze este adevărată.

Structura IF – ELSE

Deoarece nu intotdeauna condiția este adevărată, PHP pune la dipoziția dezvoltatoriilor web o structură care sa execute o instrucțiune sau un set de instrucțiuni in cazul in care condiția evaluată este falsă. Sintaxa este: if(condiție){instrucțiune} else{instrucțiune}. Un exemplu de cod pentru această structură:

<?php

$mesaj=’Acesta este un simplu mesaj’;

Echo $mesaj’<br/>’

$var1 = 60;

$var2 = 30;

if ($var1 < $var2) {

echo “Valoarea lui var1 este mai mica decat valoarea lui var2”;

}

else {

echo “Valoarea lui var1 nu este mai mică decât valoarea lui var2”;

}

?>

In cazul de față, condiția if-ului este falsă, astfel programul va executa secvența de cod aflată in interiorul lui else.

Structura IF – ELSEIF

Uneori nu este suficient să avem două condiții, unul pentru if și unul pentru else. Totuși, PHP are o structură de tip if – elseif, in care putem pune câte condiții dorim pentru un set de instrucțiuni. Putem avea if-uri in alte if-uri, iar ultimul if va funcționa numai dacă condițiile de dinainte sunt indeplinite. Sintaxa unei astfel de structuri este: if(condiție1){intrucțiune1} else if(condiție2){instrucțiune2} else{altă instrucțiune}.

Structura SWITCH

Structura switch este utilizată sa producem acțiuni diferite bazat pe condiții diferite, altfel spus, folosim switch pentru a selecta una din multe blocuri de cod pentru a fi executat. Un exemplu concret pentru structura switch:

<?php

$anotimp = „toamna”;

Switch ($anotimp) {

case „primavara”:

echo „Anotimpul preferat este Primavara!”;

break;

case „vara”:

echo „Anotimpul preferat este Vara!”;

break;

case „toamna”:

echo „Anotimpul preferat este Toamna!”;

break;

case „iarna”:

echo „Anotimpul preferat este Iarna!”;

break;

default:

echo „Nu ai niciun anotimp preferat!”;

}

?>

Structura funcționează in felul următor. Prima dată avem o expresie $anotimp, adesea o variabilă, care este evaluată. Valoarea expresiei este comparată cu valorile pentru fiecare case din structură. In cazul in care există o egalitate din punct de vedere al valorii, blocul asociat cu case-ul este executat, iar in cazul in care nu există o astfel de egalitate, se va executa blocul default. Folosirea brake-urilor este importantă, intrucât previne execuția codului in următorul case.

Structura WHILE

Această structură este utilă in cazul in care dorim să executăm o serie de instrucțiuni intr-o buclă, in funcție de condiția specificată. Sintaxa acestei structuri este: while (condiție){cod de executat}. In exemplul următor arătăm cum funcționează o astfel de buclă.

<?php

$contor = 0;

$num = 50;

while($contor < 10) {

$num–;

$contor++;

}

Echo (“Bucla s-a oprit la i = $contor si num = $num”);

?>

Un lucru foarte important atunci când folosim bucla while, este să nu intrăm intr-o buclă infinită. In exemplul nostru, variabila $contor este initializată cu 0, iar condiția este sa execute codul atâta timp cât valoarea variabilei $contor este mai mică decât 10. Pentru a evita bucla infinită, am specificat ca variabila $contor să se incrementeze cu câte o unitate.

Structura DO – WHILE

Structura do-while este asemănătoare celei while, singura diferență dintre cele două este acela că blocul de instrucțiuni din structura do, se v-a executa atâta timp cât condiția pusă in while este adevărată. Această structură se va executa cel puțin o dată, deoarece condiția este pusă după executie. Exemplu:

<?php

$x=5;

do{

x–;

echo “Pasul lui x este’.$x.;

}

while ($x>2)

?>

Structura FOR

Această structură este foarte utilă atunci când deja știm in mare parte de câte ori dorim să executăm un set de instrucțiuni. Sintaxa este următoarea:

for(inițializare contor; condiția; incrementare/decrementare) {

codul de executat;

}

In exemplul următor afișăm numerele de la 0 la 10:

<?php

for ($x = 0; $x <= 10; $x++) {

echo “Numarul este: $x <br>”;

}

?>

Bucla se v-a executa atâta timp cât condiția este adevărată, astfel, am specificat ca valoarea variabilei $x să se incrementeze cu câte o unitate, pentru a evita bucla infinită.

Structura FOREACH

Structura foreach se folosește pentru a parcurge tablouri. Un tablou este o inșiruire de elemente, fiecare având propriul index. Acesta poartă denumirea de Array, iar primul element dintr-un tablou are index-ul 0. Următorul exemplu demonstrează o buclă care v-a afișa valorile tabloului dat:

<?php

$culori = array(“verde”, “roșu”, “alb”, “albastru”);

Foreach ($culori as $valoare) {

Echo “$valoare <br>”;

}

?>

Așadar, fiecare valoare specificată in array vor fi plasate in tabloul $culori. Elementul “albastru” este al patrulea element specificat, insă el se află pe poziția a treia in tablou.

Bibliografie

[1] https://ro.wikipedia.org/wiki/Internet

[2] http://www.internetworldstats.com/stats.htm

[3] GROSSECK , Gabriela, 2014, INTERNET – istoric, evoluție, perspective, Facultatea de Sociologie și Psihologie Universitatea de Vest din Timișoara

[4] ANGHEL, Traian , 2011, Tot ce trebuie sa stii despre Internet, Ed Polirom

[5] GRALLA Preston, Ilustr. TROLLER Michael, 2003, Cum functioneaza internetul, Ed ALL

[6] SCOTT, Mitchell, 2009, Cum sa creezi un site web, editura Teora

[7] SURCEL, T., 2005, Tehnologii Web si baze de date, Tribuna Economica, București

[8] http://gs.statcounter.com/#all-comparison-ww-monthly-201406-201505

[9] CIOCÂRLIE, H; 2013, Universul limbajelor de programare. Ed. A 2-a rev. – Timișoara: Orizonturi Universitare

[10] MANEA, C., 2013, IT Security, ECDL – Permisul European de Conducere a Computerului 

[11] SIMION, I., 2007, Proiectarea paginilor Web, Editura Teora, București.

[12] MNERIE, A., MOLNAR, F., 2009, Indrumător de laborator Rețele, Sisteme intrareieșire, Achiziții de date,Calculatoare – echipamente Hard, Introducere în internet, Matematici discrete, Fundației ”Ioan Slavici”

[13] SOBELL, Mark, 2014, A Practical Guide to Ubuntu Linux®, Third Edition, Pearson Education INC, SUA

[14] KEITH, Jeremy, 2010, HTML5 for web designers, A Book Apart Publisher

[15] SCHIFREEN, Robert, 2009, How to create Web sites and applications with HTML, CSS, Javascript, PHP and MySQL, Oakworth Business Publishing Ltd, UK

[16] PREDA, G., 2014, Aplicatii cu baze de date, Editura Matrixrom 

[17] VELICANU, M., 2009, Sisteme de baze de date evoluate, Editura ASE, București

[18] DUCKETT, Jon, 2011, HTML and CSS: Design and Build Websites Paperback ,  Wiley Publisher

[19] CEDERHOLM, Dan, 2015, CSS3 for web designers, second edition, A Book Apart Publisher

[20] SLAVICI, Titus, MOLNAR, F., BEBEȘELEA, A., MNERIE, A., KREPELKA, M., GROZA, I., KÜRTI, V., KÖRÖSI, A., MNERIE, G., DORNEANU, L. , 2010, Utilizarea și programarea calculatoarelor, Fundației ”Ioan Slavici”

[21] RUBY, Sam, THOMAS, Dave, HANSSON, David Heinemeier, 2011, Agile Web Development with Rails 3.2 (Pragmatic Programmers), Pragmatic Bookshelf; Fourth Edition edition

[22] HATYL, Hartl, 2014, The Ruby on Rails Tutorial, online book

[23] BEAIRD, Jason, 2011, Principii de web design atractiv, 3d media communications

DECLARAȚIE DE AUTENTICITATE

A

LUCRĂRII DE FINALIZARE A STUDIILOR

Titlul lucrării ________________________________________________________

___________________________________________________________________

___________________________________________________________________

Autorul lucrării _____________________________________________

Lucrarea de finalizare a studiilor este elaborată în vederea susȚinerii examenului de finalizare a studiilor organizat de către Facultatea _________________________________________ din cadrul UniversităȚii din Oradea, sesiunea_______________________ a anului universitar ______________.

Prin prezenta, subsemnatul (nume, prenume, CNP)_____________________

___________________________________________________________________

___________________________________________________________________,

declar pe proprie răspundere că această lucrare a fost scrisă de către mine, fără nici un ajutor neautorizat Și că nici o parte a lucrării nu conȚine aplicaȚii sau studii de caz publicate de alȚi autori.

Declar, de asemenea, că în lucrare nu există idei, tabele, grafice, hărȚi sau alte surse folosite fără respectarea legii române Și a convenȚiilor internaȚionale privind drepturile de autor.

Oradea,

Data Semnătura

Similar Posts