Aplicatie Web Sistem de Pnalngeri In Domeniul Fashion
UNIVERSITATEA DIN BUCUREȘTI
FACULTATEA DE MATEMATICĂ ȘI INFORMATICĂ
SPECIALIZAREA CALCULATOARE SI TEHNOLOGIA INFORMAȚIEI
LUCRARE DE LICENȚĂ
COORDONATOR ȘTIINȚIFIC:
Lect. Dr. Mihail Cherciu
STUDENT
Valentina – Florina Stancu
BUCUREȘTI
2016
UNIVERSITATEA DIN BUCUREȘTI
FACULTATEA DE MATEMATICĂ SI INFORMATICĂ
SPECIALIZAREA CALCULATOARE SI TEHNOLOGIA INFORMAȚIEI
LUCRARE DE LICENȚĂ
APLICAȚIE WEB –SISTEM DE PLĂNGERI IN MATERIE DE FASHION
COORDONATOR ȘTIINȚIFIC:
Lect. Dr. Mihail Cherciu
STUDENT
Valentina – Florina Stancu
BUCUREȘTI
2016
CUPRINS
1. Capitolul 1 – Introducere
1.1. Scurtă introducere …..4
1.2. Ideea și scopul lucrarii 4
1.3. Noțiuni de programare web………………………………………………………………………..5
2. Capitolul II – Tehnologii Web
2.1. Site-ul web și Serverul web 6
2.2. Front – end 8
2.2.1. HTML5 8
2.2.1.1. Introducere 8
2.2.1.2. Sintaxa 9
2.2.2. JavaScript 10
2.2.2.1. Introducere 10
2.2.2.2. Sintaxa 12
2.2.3. CSS3 18
2.2.3.1. Introducere 18
2.2.3.2. Sintaxa 19
2.2.3.3. Cross-browser 23
2.3.Back-end 23
2.3.1. PHP 24
2.2.3.1. Introducere 24
2.2.3.2. Sintaxa 25
2.3.2. Baze de date 33
2.3.2.1. Introducere 33
2.3.2.2. MySQL 34
2.3.2.3.Conectarea la o baza de date prin PHP 36
3. Capitolul III –Despre aplicatie
3.1. Descriere 40
3.2. Implementarea Aplicatiei 45
4. Capitolul IV – Concluzii 54
5. Bibliografie 55
CAPITOLUL I – INTRODUCERE
1.1 Scurtă introducere
Tehnologia este un aspect de baza a ceea ce ne caracterizeaza pe noi ,oamenii. Fie că vorbim despre plata facturilor, folosirea unui automat de cafea ,ghișeele de la diverse instituții ale statului până la marile multinaționale , tehnologia este pretudindeni.Indiferent de domeniul de activitate ,putem spune că lumea în care trăim s-a 'tehnologizat'.Telefoanele inteligente,internetul, setea de cunoaștere și de socializare face parte din viată de zi cu zi.
Stilul de viață al oamenilor a fost schimbat radical în momentul în care s-a făcut tranziția de la documente fizice (papetărie) la documente virtuale(fișiere) ,schimbarea aducând posibilitatea de a facilita de securitate,portabilitate și ușurință în administrarea documentelor .Indiferent de domeniul de activitate al unei companii sau mărimea acesteia,cu cât dispozitivele cu care angajații lucreză sunt mai noi și mai dezvoltate, cu atât muncă acestora va fi ușurată iar productivitatea va fi în creștere.
Programarea web se constituie astăzi,în contextul exploziei informaționale și a extinderii de neimaginat acum câțiva ani a rețelei Internet,că unul dintre domeniile dezvoltării de aplicații software cu un trend permanent ascendent,într-o continuă evoluție,atât calitativă,cât și cantitativă.Practic,un important segment al dezvoltărilor informatice este acaparat de proiectarea și dezvoltarea de aplicații destinate Internetului,categoria Web fiind predominantă în acest sens.
1.2 Ideea și scopul lucrării
Comerțul electronic este în continuă expansiune iar magazinele online se tranforma treptat în adevărate mall-uri online,categoria "Fashion" fiind una dintre cele mai promițătoare în prezent . Ideea sistemului de plângeri în materie de Fashion este de a realiza o platformă unde cei care au avut diverse probleme sau neplăceri în timpul unei achiziții online din categoria Fashion, să poată depune plângere .Categoria Fashion reprezintă tot ce ține de înfățișare,de la îmbrăcăminte,încălțăminte,până la accesorii,genți,etc.Această platforma este benefică nu numai utilizatorilor care au avut probleme în achiziționarea unui bun online,dar și celor care doresc să achiziționeze în prezent sau viitor produse de la aceste magazine online .Aceștia au acces la părerile celorlalți ,putându-se face o idee despre calitatea serviciilor sau produselor magazinului online de care sunt interesați. Scopul acestui tip de proiect este îmbunătățirea caliatii comerțului online ,nu numai prin semnalarea consumatorilor cât și prin semnalarea magazinelor online care au întâmpinat probleme în a livra consumatorului produsul așteptat .
1.3 Noțiuni de programare web
Internetul este, în principiu, o rețea de calculatoare care este răspândită în cea mai mare parte din lume.Rețelele de calculatoare face posibilă comunicarea între calculatoare,permițând trimiterea de mesaje între ele.Teoretic,un calculator denumit derver ,așteaptă alte calculatoare să înceapă comunicarea.Odată ce alt calculator denumit client începe să comunice cu serverul ei vor interschimba date folosind un limbaj specific,un protocol.
Programarea este procesul de selectare a unui algoritm de codificare și transformându-l într-un limbaj de programare astfel încât să poată fi executat de un calculator.Cu toate că există mai multe limbaje d eprogramare și mai multe tipuri diferite de calculatoare,primul pas important este necesitatea de a avea soluția.Fără un algoritm nu poate există nici un program.
Specializarea Calculatoare și Tehnologia informației nu face studiul programării.Programarea,cu toate acestea,este o parte importantă a ceea ce face un inginer.Programarea este adesea modul în care vom crea o reprezentare pentru soluțiile noastre.
Algoritmii descriu soluția la o problema în ceea ce privește datele necesare pentru a reprezenta problema și setul de pași necesari pentru a produce rezultatul dorit . Limbajele de programare trebuie să furnizeze o modalitate de notație care să reprezinte atât procesul cât și datele . În acest scop , limbajele furnizează constructori de control și tipuri de date .
Constructorii de control permit pașilor algoritmici să fie reprezentanți într-o maneră convenabilă și lipsită de ambiguitate.La un nivel minim,algoritmii necesită costructori care să efectueze prelucrarea secvențial și selectarea pentru luarea deciziilor.Atât timp cât limbajul furnizează acetse declarații de baza,poate fi utilizat pentru reprezentarea algoritmului.
Prin programare web înțelegem dezvoltarea unor aplicații web prentru Internet-World Wide Web sau pentru intranet(o rețea privată).Reprezintă puterea de a îi spune unui calculator ce să facă ,de a-i da instrucțiuni pe care acesta le înțelege.Calculatorul primește o serie de instrucțiuni pe care acesta o parcurge și o execută pas cu pas.Modul în care un limbaj de progamare trebuie scris pentru a fi funcțional este denumit sintaxa.
CAPITOLUL II – TEHNOLOGII WEB
2.1. Site-ul web și Serverul web
Programarea web poate fi clasificată în categoriile client și server .Partea de client are nevoie de programarea referitoare la accesarea datelor de la utilizatori și furnizarea de informații.De asemenea,trebuie să se asigure că sunt suficiente plug-în-uri pentru a îmbogăți experientă utilizatorului în interfață grafică,incluzând bineînțeles și măsuri de siguranță.Pentru a îmbunătății experiență userului pe partea de client,este folosit în general JavaScript .Acesta platformă client este excelentă pentru proiectarea și implementarea de aplicații Web. De asemenea HTML5 și CSS3 suportă cele mai multe funcționalități din partea de client furnizate de alte framework-uri de aplicații.
O pagină web este un document scris de obicei în limbajul Hypertext Markup Language ( HTML) ,care poate fi accesat prin Internet sau altă rețea folosind un browser web.O pagină web este accesată prin introducerea unei adrese URL și poate conține de exemplu : text,imagini,hyperlink-uri către alte pagini web,fișiere,etc.
Tipuri de pagini web :
Pagini web statice :
Așa cum este și denumirea,o pagină web statică înseamnă o pagină web în care toate informațiile și materialele sunt prezentate utilizatorilor exact în forma în care au fost stocate.O pagină de web statică prezintă aceleași informații și date pentru toți utilizatorii. În IT ,HTML a fost primul limbaj sau canal prin care oamenii au început să creeze pagini web statice. HTML oferă crearea stilul textului,a paragrafelor și a pauzei de linie,Cea mai importantă funcție și caracteristică a HTML-ului este opțiunea de creare a link-ului. Paginile web statice sunt utile pentru materialele și conținuturile care trebuie revizuite sau actualizate foarte rar.Sunt multe avantaje ale paginilor web statice în sensul că sunt rapide și ieftine de dezvolat și întreținut,de asemenea găzduirea nu costă foarte mult.
Pagini web dinamice :
Paginile web dinamice sunt acel tip de pagini web care arată de fiecare dată conținut diferit utilizatorului indiferent când este vizitat.Se schimbă în mod aleatoriu în funcție de timp,accesare și de interctionarea cu utilizatorii.Scriptul clientului și scriptul serverului sunt două tipuri de pagini web dinamice.La client scriptul paginii web se schimbă în funcție de acțiunile utilizatorului pe această pagină.În acest sistem utilizatorul poate descarcă și modifică conținutul. În partea de server scriptul paginii se schimbă de fiecare dată când se încarcă o pagină web.Exemplele pot include pagini de login și sing-up ,aplicații de submitere formuri,coșuri de cumpărături sau favorite.Paginile web dinamice sunt create cu ajutorul unor limbaje diferite ,cum ar fi PHP, ASP, .NET și JSP.
Diferența dintre o pagină web și un website este accea că un site web se referă la o locație centrală,care conține o colecție de pagini web. Așadar un Website este o colecție de fișiere WWW (World Wide Web),acesta include o pagină de început numită pagină principala.De pe pagină principala putem ajunge la alte pagini de pe website.Fiecare site web are propria adresa web acre este și unică,această putând fi accesată dacă utilizatorul are conexiune la internet.
Din moment ce cuvântul "site" presupune un loc geografic,un site web poate fi confundat cu un server web .Un server este un computer care deține dosarele pentru una sau mai multe site-uri.Un site web foarte mare poate fi răspândit pe un număr mai mare de servere în diferite locații geografice.
Un server web este un sistem care găzduiește site-uri web .Serverul rulează un soft de web server cum ar fi Apache sau Microsoft IIS ,care îi oferă acces la paginile web de pe Internet.Majoritatea serverelor web sunt conectate la internet printr-o conexiune de doarte mare viteză oferind OX-3 sau transmisiuni de date foarte rapide.O conexiune rapidă la internet le permite serverelor web să suporte mai multe conexiuni în același timp fără să încetinească.Serverele web sunt proiectate să aibă un anumit set de obiective de baza.Acestea sunt :
-acceptarea de conexiuni de rețea de la browsere
-preluarea conținutului de pe disk
-de a rula local programele CGI
-de a transmite datele înapoi la clienți
-de a fi cât mai rapid posibil
Orice calculator poate fi folosit că și server web atâta timp cât este conectat la Internet și are software-ul necesar instalat.Însă majoritatea serverelor sunt sisteme de tip 1U rack-mounted.Serverele web găzduiesc de obicei mi multe site-uri web .Unele găzduiesc câteva,în timp ce altele pot găzdui câteva sute.Serverele web care găzduiesc site-uri web pentru mai mulți useri se numesc "shared hosts".Acesta este cel mai comun tip de sulutie de găzduire și este folosit pentru site-uri personale sau site-uri ale companiilor mici .Serverele web care găzduiesc siteuri web doar pentru o singură persoană sau companie se numesc gazde dedicate "dedicated hosts".Aceste tipuri de servere sunt potrivite pentru site-uri cu trafic mare și cîte-uri care au nevoie de modificare de personalizate.Gazdele dedicate sunt,de asemenea,mult mai fiabile decât gazdele comune,din moment ce există mai puține site-uri care pot provoca blocaje sau alte probleme cu serverul .
Să spunem că vrem să accesăm "http://www.website.com/web-server.htm".Browser-ul web sparge url-ul în 3 părți.Aceste sunt: protocolul ("http"),numele serverului("www.website.com") și numele fișierului ("web-server.htm").Broswserul comunica cu numele serverului pentru a traduce serverului numele "www.website.com" într-o adresa IP pe care îl folosește pentru a se conecta la server.Astfel browserul a format o conexiune cu serverul pe acea adresa IP. Continuând cu protocolul ,browserul trimite o cerere către server ,întrebând de fișierul "http://www.website.com/web-server.htm" .Serverul trimite către browser textul HTML pentru pagină web.Browserul citește și formatează pachetul primit de la server și afiseză pagină pe ecranul nostru.
2.2 FRONT-END
Dezvoltarea web front-end (client-side) este acea parte a site-ului sau a aplicației web care se folosește de HTML,CSS,JavaScript pentru a face mai ușoară interactionarea directă cu utilizaorii, fiind vizibilă acestuia.Provocarea este aceea că tehnicile utilizate pentru a creea front-endul unui site web se schimbă constant și de aceea dezvoltatorul trebuie să avanseze o dată cu tehnologia .
Obiectivul proiectării unui site este acela de a asigura că,atunci când utilizatorii deschid site-ul ,să vadă informația într-un format care este relevant și ușor de citit. Acest lucru este complicat dotorita faptului că utilizatorii folosesc acum o mare valietate de dispozitive cu diferite dimensiuni și rezoluții,obligând astfel proiectantul să ia în considerare aceste aspecte atunci când proiectează site-ul .Dezvoltatorii trebuie să se asigure că site-ul lor va arăta bine în diferite browsere,sisteme de operare și dispozitive .
2.2.1 HTML5
2.2.1.2. Introducere
HTML (HyperText Markup Language) este limbajul utilizat în World Wide Web pentru descrierea hipertextelor.Fiind un limbaj de descriere ce conține seturi de simboluri de marcare sau coduri inserate într-un fișier care are că scop afișarea pe o pagină a World Wide Web .Markup-ul spune browser-ului web cum să afișeze cuvintele și imaginile pentru utilizator. Fiecare cod de marcaj este menționat că fiind un element sau că fiind o eticheta.Anumite elemente vin în perechi care indică atunci când un anumit efect de afișare începe și când se încheie.
HTML5 este a cincea revizuire și cea mai nouă versiune a standardului HTML.Această oferă caracteristici noi care oferă nu numai un suport media mai bogat dar,de asemenea sporește suportul pentru crearea aplicațiilor web care pot interacționa cu utilizatorul,cu datele locale ale acestuia și cu serverele într-un mod mult mai eficient și mai ușor decât era posibil înainte se apariția lui,
HTML5 reprezintă două concepte diferite.În primul rând este o versiune nouă a limbajului HTML,cu elemente,atribute și comportamente noi .În al doilea rând conține un set mai mare de tehnologii care permite site-uri web și aplicații mult mai puternice și mai diverse. Browserele care susțin HTML5 o fac nativ,fără necesitatea de a instala plugin-uri suplimentare.
Îmbunătățiri aduse de HTML5:
2.2.1.2 Sintaxa
Cei care au creat standardul au dorit să ușureze muncă dezvoltatorilor,păstrând lucrurile cât mai simple:
-pentru că un document HTML5 să fie valid are nevoie de un doctype mult simplificat față de HTML4 sau XHTML (<!DOCTYPE html>)
-unele atribute nu mai sunt obligatorii (type pentru <script> si <!DOCTYPE html> )
-dezvoltatorilor li se permite să omită împrejmuirea atributelor cu ghilimele
Câteva elemente noi în HTML5:
Offline aplicatii chache
Aplicațiile HTML5 pot rula și offline,această fiind una din noile funcții.Funcția de stocare offline este numită un chache al cererii pentru stocarea de fișiere.Indiferent că resursele necesare pentru a vizualiza pagină de web offline sunt HTML,CSS sau JavaScript,browserul încă mai are acces la fișierele necesare,astfel utilizatorul are acces la aceste fișiere chiar și în mod offline.
Drag și Drop
HTML5 oferă o funcție încorporată care permite dezvoltarea de aplicații interactive ,aceasta este denumită Drag & Drop .Cu această funcție avem posibilitatea de a muta orice element în locul dorit.
Geolocation
Geolocation Api este o funcție care permite utilizatorului dacă dorește ,să își partajeze locația cu site-uri de încredere .Confidențialitatea fiind importantă pentru această funcție,utilizatorul îi este cerută permisiunea de a partaja locația deoarece browserele nu au voie să trimită informații despre locație la site-uri web fără această permisiune.
Audio și video
Pentru punerea în aplicare a fișierelor multimedia ,acestea se incudeau în HTML folosind diferite plugin-uri.Odată cu apariția HTML5 acest lucru poate fi foarte ușor de făcut cu ajutorul elementelor audio și video,fără utilizarea plugin-urilor.
Formulare de introducere
HTML5 introduce mai multe elemente noi de intrare,cum ar fi calendare pop-up,selectoare de culori și multe altele.Folosind aceste funcții se poate crea o formă foarte eficientă cu un control mai bun al intrarii și verificării.
JavaScript APIs
Datorită acestei funcții lucrul cu grafică de pe partea de client a devenit mult mai ușor deoarece în HTML5 s-a adăugat elementul canvas și un APOI special pe JavaScript pentru a funcționa cu el.Canvas este o suprafață dinamică peste care se poate coda desenarea obiectelor.Introducerea tag-ului svg ne permite introducerea graficii vectoriale,descrierea standardelor web relevante precum SVG,Scalable Vector Graphics.Au fost schimbate și o serie de mici detalii precum posibilitatea de a face conținutul direct editabil în locația curentă cu ajutorul atributului Content Editable.
2.2.2 JavaScript
2.2.2.1 Introducere
JavaScript este un limbaj de scripting ,un limbaj de programare care este interpretat de browser atunci când pagină web se încarcă.JavaScript a fost creat de BrendanEich în cadrul companiei Netscape ,fiind introdus în decembrie 1995 sub numele de LiveScript.Însă a fost redenumit foarte repede în JavaScript.
Faptul că programul de interpretare JavaScript este motorul browserului în sine ,poate prezenta unele neconcordanțe în modul cum pagină rulată cu JavaScript poate să se comporte în diferite browsere. Dar tehnici bine stabilite și librăriile JavaScript ,cum ar fi jQuery au că scop să ne ușureze munca.
JavaScript se execută pe partea de client,în browser. Dacă utilizăm un browser mai vechi ,fără suport de JavaScript ,sau dacă alegem pur și simplu să dezactivăm JavaScript în browser-ul nostru ,atunci scripturile JavaScript nu vor merge .Spre deosebire de alte limbaje precum PHP care se execută pe server, când este vorba de JavaScript nu știm niciodată complet sigur care va fi impactul pe care îl va avea pe diferite browsere,depinzând și de faptul dacă utilizatorul oprește suportul JavaScript.
Un avantaj al JavaScript este acela că nu putem accesa sau afecta resulsele dintr-un alt domeniu de internet prin folosirea lui. Acest lucru se numește "Politica aceeași origini " ,JavaScript având acces numai la resursele de pe site-ul nostru.De asemenea cu JavaScript nu se pot accesa resursele serverului ,cum ar fi baze de date,pentru că acesta este un limbaj pe partea de client,este limitat la ceea ce se poate face în client,care este de obicei mediul de browser.
Funcționalități ale JavaScript:
Pune text într-o pagină on-the-fly HTML
Acesta funcționalitate vine în ajutorul nostru în situația în care să zicem un utilizator tocmai a completat un chectionar pe pagină noastră iar noi dorim să îi afișăm un mesaj de mulțumire. Am putea să lăsăm serverul să facă asta dar în cazul în care site-ul web este foarte ocupat iar serverul procesează sute de chestionare ,ar dura ceva timp pentru că acest mesaj de mulțumire să îi fie afișat utilizatorului.Astfel JavaScript poate să ne salveze pentru că acesta rulează în browser-ul utilizatorului ,unde putem adaugă note de mulțumire care vor fi afișate pe pagină aproape instantaneu.
Face paginile web receptive
Mediile web sunt dinamice,mereu se întâmplă ceva de exemplu atunci când pagină web este încărcată în browser,utilizatorul face clic pe un buton sau mută mouse-ul peste un link,etc.Acestea sunt numite evenimente .Cu ajutorul JavaScript putem face că pagină să reacționeze imediat la aceste evenimente în modul în care ne dorim.De exemplu, prin afișarea sau ascunderea elementelor specifice pe pagină ,prin schimbarea culorii de fundal,etc.
Detectează vizitatorii browser-ului
Prin utilizarea JavaScript avem posibilitatea de a detecta vizitatotii browser-ului sau, și mai mult, putem detecta ce caracteristici acceptă sau nu acceptă un anumit browser.În funcție de browser și de capacitățile sale,putem alege să încărcăm o pagină adaptată în mod specific la acest tip de browser.
Creează cookie-uri
Cookie-urile reprezintă în general o cantitate mică de date ce este transmisă de la un expeditor la un destinatar,fiind creat și interpretat de expeditor și păstrat de destinatar pentru că apoi să îl trimită înapoi dacă expeditorul o cere.Astfel un script JavaScript este foarte bun în cazul în care doriți să creați cookie-uri deoarece vizitatorii se pot bucură de o experiență personalizată dată următoare când vor accesa site-ul dumneavoastră.
Validează datele formularelor web
Avem posibilitatea de a utiliza un script JavaScript pentru a valida datele din formular înainte de trimiterea formularului către server.Acest lucru salvează serverul de la procesarea suplimentară.
Și multe alte funcționalitați
Învățând JavaScript ne va pormite să adăugăm efecte de animație paginilor web fără să folosin plugin-uri externe Flash ,folosind cele mai noi actualizări ale HTML5 cum ar fi canvas (pentru a desena direct pe pagină web )și funcția drag și drop ,să integrăm pe site-ul web servicii web externe precum Facebook,Twitter,etc.
2.2.2.2 Sintaxa
Iată câteva exemple de sintaxa :
var x; // declararea unei variabile
x = 3 + y; // asignarea unei valori variabilei `x`
moo(x, y); // apelarea funcției moo care are parametrii `x` și `y`
obj.bar(3); // apelarea metodei `bar` a obiectului `obj`
// O declarație condiționată:
if (x === 0) { // Este `x` egal cu zero?
x = 123;
}
// definirea funcției `baz` cu parametrii `a` și `b`
function baz(a, b) {
return a + b;
}
//Un singur semn de egal ( = ) este folosit pentru a atribui o valoare unei variabile .
//Un semn triplu este egal cu ( === ) este folosit pentru a compară două valori .
Declarații versus Expresii :
Pentru a înțelege sintaxa JavaScript trebuie să știm că include două categorii majore: declarații și expresii.
-Declarațiile "fac lucruri".Un program este o secvență de declarații. Iată un exemplu de declarație,unde se declara(creează) variabilă moo:
var moo;
-Expresiile produc valori,Ele sunt argumente funcționale .Iată un exemplu de expresie:
2 * 5
Diferența dintre declarații și expresii este cel mai bine ilustrat de faptul că JavaScript are două moduri diferite de a face o declarație if-then-else .
Primul mod este ca o declarație :
var x;
if (y >= 0) {
x = y;
} else {
x = -y;
}
Iar cel de-al doilea este ca o expresie:
var x = y >= 0 ? y : -y;
De fiecare dată când JavaScript așteaptă o declarație putem să folosim și o expresie ,de exemplu : moo(7, 1); întreagă linie fiind o declarație dar funcția apelată este o expresie .
Comentariile:
JavaScript are două tipuri de comentarii :
-comentarii pe o singură linie care încep cu // și se termină la sfârșitul liniei:
x++; // comentariu pe o singură linie
-comentarii pe mai multe linii delimitate de /* și */ :
/* Acesta
este
un comentariu
pe mai multe linii
*/
Variabile și asignări :
În JavaScript variablele sunt declarate înainte să fie folosite:
var moo ; // declararea variabilei "moo"
Putem declara o variabilă și îi putem asigna o valoare în același timp:
var moo = 6 ;
De asemenea putem asigna o valoare unei variabile existente :
moo = 4 ; // schimbă variabilă moo
Operatori de atribuire compuși
Există operatori de atriburire compuși că de exemplu +=.Următoarele două atribuiri sunt echivalente:
x += 1;
x = x + 1;
Identificatori și numele variabilelor
Identificatorii sunt nume care joacă diferite roluri sintactice în JavaScript .De exemplu numele unei variabile este un identificator.Identificatorii sunt case-sensitive.În mare parte primul caracter al unui identificator poate să fie orice litera Unicode,un semn dolar($) , sau o subliniere(_). De exemplu:
arg0
_tmp
$elem
π
Următorii identificatori sunt cuvinte rezervate-ele fac parte din sintaxa și nu pot fi folosite că și nume de variabile (sunt incluse și nume de funcții și nume de parametrii) :
Următorii trei identificatori nu sunt cuvinte rezervate dar trebuie tratate că și cum ar fi :
Funcțiile:
O modalitate de definire a funcțiilor este folosint declararea funcțiilor.
function add(param1, param2) {
return param1 + parăm2;
}
Codul de precedent definește o funcție, de adăugare, care are doi parametri , param1 și param2 , și returnează suma parametrilor . Acesta este modul în care funcția trebuie apelată :
> add(6, 1)
7
> add('a', 'b')
'ab'
Un alt mod de a defini add() este prin asignarea unei funcții de expresie variabilei add:
var add = function (param1, param2) {
return param1 + param2;
};
O expresie a unei funcții produce o valoare și poate fi folosită pentru a trece direct de funcții ca argumente ale altor funcții:
someOtherFunction(function (p1, p2) { … });
Declarațiile de funcții sunt arborate :
Declarațiile de funcții sunt arborate – deplasate în întregime la începutul domeniului de aplicare curent.Asta permite să ne referim la funcții care sunt declarare ulterior:
function moo() {
bar(); // în regulă , bar este arborat
function bar() {
…
}
În timp ce declarațiile var sunt arborate,sarcinile îndeplinite de acestea nu sunt:
function moo() {
bar(); // nu este în regulă, bar este încă nedefinit
var bar = function () {
// …
};
}
Argumente de variabile speciale :
Putem apela orice funcție din JavaScript cu o valoare arbitrară de argumente,limbajul nu se va plânge niciodată.Insă va face toți parametrii disponibili cu ajutorul argumentelor de variabile speciale.Argumentele arată că o matrice dar nu are nici una dintre metodele de matrice :
> function f() { return arguments }
> var args = f('a', 'b', 'c');
> args.length
3
> args[0] // citește elemetul la index 0
'a'
Prea multe sau prea puține argumente :
Să folosim următoarea funcție pentru a explora modul în care prea multe sau prea puține argumente sunt manipulate în JavaScript:
function f(x, y) {
console.log(x, y);
return toArray(arguments);
}
Parametrii aditionali vor fii ignorați(cu excepția argumentelor)
> f('a', 'b', 'c')
a b
[ 'a', 'b', 'c' ]
Parametrii care lipsesc vor primi valoarea undefined:
> f('a')
a undefined
[ 'a' ]
> f()
undefined undefined
[ ]
Convertirea argumentelor într-un Array :
arguments nu este un array ,seamănă că un array dar are o lungime de proprietate și putem accesa elementele prin indici între paranteze drepte.Nu putem să eliminăm elementele sau să invocăm vreo metodă de Array în ea.Uneori avem nevoie să convertim argumentele într-un array,asta este exact ce face și funcția următoare:
function toArray(arrayLikeObject) {
return Array.prototype.slice.call(arrayLikeObject);
}
2.2.3. CSS3
2.2.3.1 Introducere
În timp ce HTML-ul este folosit pentru a structura conținutul unui fișier,este nevoie de un instrument care să îl formateze,acest instrument este CSS(Cascading style Sheet) . CSS este un limbaj de stil care definește "layout-ul" pentru documente HTML. Unele din beneficiile concrete ale acestui limbaj sunt:
-abilitatea de a controla layout-ul documentelor pe o singură pagină de stiluri
-abilitatea de a aplică layouturi diferite pentru tipuri de media diferite precum ecran,printrare,etc.
-proceduri numeroase și sofisticate
CSS oferă mai mult control al aspectului unei pagini web ,celui care o creează decât designer-ului de browser sau celui care o vizionează.Cu CSS,sursele de definire a stilului peru un document dat sunt în următoarea ordine de prioritate:
-atributul stil este pe un element tag individual
-elementul de stil care definește o foaie de stil conține declarații de stil sau elemente de tip link care se leagă la un document separat,care conține elementul de stil; într-o pagină web elementul stil este plasat între instructiunea titlu și instructiunea corp.
-o foaie de stil importată,folosind notația CSS@import pentru a importă automat și pentru a uni o pagină de stil externă cu pagină de stil curentă
-atributele de stile specificate de utilizator browserului
-foaia de stil implicită asumată de către browser
În general creatorul paginii de stil are prioritate dar este rcomandat că browserele să ofere modalități utilizatorului să treacă peste atributele de stil în anumite momente.Creatorul web trebuie să testeze pagină în diferite browsere .
2.2.3.2 Sintaxa
Un CSS cuprinde reguli de stil care sunt interpretate de browser și apoi aplicate la elementele corespunzătoare din document.O regulă de stil este formată din trei părți :
-selectorul ( Un selector este o eticheta HTML la care va fi aplicat un stil.Acest lucru poate fi orice eticheta ,de exemplu: <h1 > sau < table> etc)
-proprietate ( O proprietate este un tip de atribut al tag-ului HTML.Toate atributele HTML sunt transformate în proprietăți CSS.Ele pot fi de culoare,de frontieră,etc.)
-valoare(Valorile sunt atribuite proprietăților.De exemplu, proprietatea de culoare poate avea o valoare sau poate fi roșu sau poate fi # F1F1F1. )
Putem pune sintaxa de stil CSS Rule dupa cum urmeaza:
Selector { property : value }
Putem defini table border după cum urmează:
table{ border :1px solid #C00; }
Aici table este un selector și border este o proprietate ,are valoarea dată de 1 px solid #C00 ,această fiind valoarea acestei proprietăți.
Tipuri de selectori :
Acesta este același selector pe care l-am văzut mai sus.Încă o dată un exemplu prin care dăm o culoare fiecărei rublici:
h1 {
color: #36CFFF; }
Selectori Universali
Decât să selecteze elementele de un anumit tip,selectorul universal potrivește într-un mod simplu numele fiecărui tip de element.
* {
color: #000000;
}
Această regulă face conținutul fiecărui element din documentul nostru să fie negru.
Selectoare descendente
Să presupunem să vrem să aplicăm o regulă de stil la un anumit element numai atunci când acesta se află în interiorul unui anumit element.Așa cum veți putea observă în exemplul urmatot ,regulă de stil se va aplica elementului doar când acesta se află înăuntrul tag-ului :
ul em {
color: #000000;
}
Selectoare de clasă
Putem defini reguli de stil bazate pe atributul de clasă al elementelor.Toate elementele care au această clasă vor fi formatate în conformitate cu regula.
.black {
color: #000000;
}
Această regulă transformă conținutul în negru pentru fiecare element cu atribut de clasă setat la negru din document.Putem face un exemplu mai special:
h1.black {
color: #000000;
}
Această regulă transformă conținutul în negru numai pentru elementele
cu atribut de clasă setat pe culoarea negru.
Putem aplica mai mult decât un selector de clasa pentru elementul dat .De exemplu:
<p class="center bold">
Acest paragraf va fi stilizat de clasele center si bold.
</p>
Selectoare ID
Putem defini reguli de stil bazate pe atributul id al elementelor.Toate elementele care au acel id vor fi formatate în conformitate cu regula definită:
#black {
color: #000000;
}
Următoarea regulă transformă conținutul în negru pentru fiecare element cu atribut id setat la negru,regăsit în document.
h1#black {
color: #000000;
}
Această regulă transformă conținutul în negru numai pentru elementele care au atributul id setat la negru .
Adevărată putere a selectorilor de id este atunci când acestea sunt folosite ca fundament pentru selectorii de descendența ,de exemplu:
#black h2 {
color: #000000;
}
Reguli de stil multiple
Este posibil să trebuiască să definim reguli de stil multiple pentru un singur element. Putem defini aceste reguli pentru a combina mai multe proprietăți și valori corespunzătoare într-un singur bloc definit ca în exemplul următor :
h1 {
color: #36C;
font-weight: normal;
letter-spacing: .4em;
margin-bottom: 1em;
text-transform: lowercase;
}
Aici toate proprietățile și perechile de valori sunt separate de ";" . Avem posibilitatea de a le păstra într-o singură linie sau pe mai multe linii. Pentru o mai bună lizibilitate este indicat să le mentinem în linii separate.
Gruparea selectorilor
Avem posibilitatea să aplicăm un stil mai multor selectori dacă dorim.Tot ce trebuie să facem este să separăm selectorii cu virgulă așa cum puteți observa și în exemplul următor :
h1, h2, h3 {
color: #36C;
font-weight: normal;
letter-spacing: .4em;
margin-bottom: 1em;
text-transform: lowercase;
}
Această regulă va defini stilul aplicabil elementelor h1,h2 și h3.Ordinea listei este irelevantă.Toate elementele din selector vor avea declarațiile corespunzătoare aplicate acestora .
Putem combina împreună diferite clase de selectori așa cum se regăsește în exemplul de mai jos:
#content, #footer, #supplement {
position: absolute;
left: 510px;
width: 200px;
}
2.2.3.1 Cross-browser
Un browser web este o aplicație utilizată pentru a accesa și vizualiza site-uri web.Browserele web comune includ Microsoft Internet Explorer, Google Chrome, Mozilla Firefox și Apple Safari.
Funcția principala a unui browser web este de transformă HTML,codul folosit pentru a proiecta paginile web.De fiecare dată când un browser încarcă o pagină web, acesta procesează codul HTML care poate include text,link-uri și referințe către imagini sau alte elemente cum ar fi paginile CCS sau funcțiile JavaScript. Browser-ul procesează aceste elemente apoi le afișează în fereastră browser-ului.
Primele browsere precum Mosaic și Navigatorul Netscape ,erau simple aplicații care transformau codul HTML,prelucrate sub formă de intrare și cu semne de carte acceptate.În timp ce site-urile web au evoluat,și browserele trebuiau să evolueze pentru a le îndeplini cerințele. Browserele din prezent sunt mult mai avansate, suportând mai multe tipuri de HTML(cum ar fi HTML5 și XHTML),JavaScript dinamic și criptare folosită de site-uri web securizate.
Capacitățile browsere-lor web moderne permit dezvoltatorilor web să creeze site-uri web foarte interactive. De exemplu , Ajax permite unui browser să actualizeze infirmații în mod dinamic pe o pagină web fără să mai fie nevoia de a reîncarcă pagină. Progresele în CSS permit browserelor afișarea unui layout pentru documentele HTML conținând o gama largă de efecte vizuale.Cookie-urile le permite browserelor saisi amintească setările specifice ale fiecărui utilizator pe fiecare site web.
În timp ce tehnologia browser-ului web a parcurs un drum lung de la Netscape, problemele de compatibilitate ale browserelor rămân o problema.Din moment ce browserele folosesc motoare diferite de afișare,un site-urile web pot să nu fie afișate la fel pe browsere diferite.În unele cazuri un website poate funcționa bine pe un browser dar pe altul nu. Prin urmare este un lucru intelizent să instalăm mai multe browsere pe calculatorul nostru pentru a folosi un browser alternativ dacă este nevoie.
2.3 Back-end
Back-end-ul este format de obicei din trei părți: un server,o aplicație și o baza de date.În cazul în care dorim să rezervăm un bilet de avion sau să cumbaram bilete la un concert,deschidem de obicei un website și interacționăm cu partea de front-end. După ce am introdus informația,aplicația o stochează într-o baza de date care a fost creată pe server. Toată această informație rămâne în server,astfel încât atunci când ne conectăm din nou în aplicație pentru a inprima biletele ,toate informațiile sunt încă acolo,în contul nostru.
Persoana care construiește toate aceste tehnologii și le face să lucreze împreună se numește dezvoltator back-end. Tehnologiile back-end constă,de obcei,în limbaje precum PHP, Ruby, Python, etc. Pentru a face aceste limbaje mai ușor de utilizat ,de obicei ,acestea sunt îmbunătățite de framework-uri că Ruby on Rails, PHP Cake, și Codul Igniter,toate acestea fac că dezvoltarea să fie mai rapidă și mai ușoară de realizat.
Mulți profesioniști web care sunt începători în domeniu au auzit de WordPress.WordPress este un exemplu bun care arată cum partea de front-end și cea de back-end lucrează împreună,deoarece WordPress este un framework open source construit în limbajul PHP pe care trebuie să îl instalăm pe server împreună cu baza de date. Designerii apoi personalizează aspectul și functionaltatea site-urilor WordPress folosind CSS,jQuery și JavaScript.
2.3.1. PHP
2.3.1.1 Introducere
PHP (PHP: Hypertext Preprocesor) este, probabil, cel mai popular limbaj de scripting de pe internet permițând modificarea paginilor web înainte că acestea să fie transmise de server către browserele utilizatorilor. Cu PHP putem crea pagini de utilizator și parole de conectare , putem verifică detaliile unui form,crea formulare ,galerii de imagini ,și multe altele.Dacă ați ajuns pe o pagină web care se termină în PHP ,atunci autorul a scris un cod de programare pentru a îi da viață codului HTML.
PHP se folosește prin inserarea de cod PHP în interiorul HTML ,formând un site web. Atunci când un client (oricine pe web) accesează o pagină web care conține acest cod , serverul îl execută .De accea , pentru a testa PHP la nivel local trebuie să instalăm propriul server deoarece server-ul este creierul,nu browser-ul.Utilizatorii nu au nevoie de plugin-uri speciale sau altceva pentru a vedea codul PHP în acțiune,ajungând la utilizator cu ajutorul HTML.
PHP este un limbaj de scripting că și HTML.Asta înseamnă că codul nu necesită compilare înainte să fie folosit fiind procesar în zbor în funcție de necesități. Caracteristicile limbajului PHP sunt : simplitatea,eficientă,securitatea,flexibilitaea și familiaritatea.
Utilizări comune ale PHP :
– PHP îndeplinește funcții de sistem adică poate crea,deschide,citi,scrie și închide fișiere de pe un sistem
– PHP poate manipula formulare,adică poate adună date din fișiere ,salva datele într-un fișier, printr-un email poate trimite date și poate de asemenea să returneze datele către utilizator
– adăugare ,ștergere sau modificare a elementelor din baza de date prin intermediul PHP
– accesarea variabilelor cookies și setarea lor
– restricționarea urilizatorilor pentru că aceștia să aibă acces la anumite pagini de pe site.
– poate cripta date
Pentru a putea dezvoltă și rula pagini web PHP trebuie că trei componente vitale să fie instalate :
Serverul Web- PHP va lucra cu aproape toate software-urile de web server ,inclusiv Microsoft Information Server (IIS),dar cel mai des polosit este Apache Server.
Baza de date- PHP va lucra cu aproape toate softurile de baze de date inclusiv Oracle și Sybase,dar cel mai frecvent utilizat este MySQL.
PHP Parser – Pentru a procesa instrucțiuni de script PHP ,un parser trebuie să fie instalat pentru a genera output-ul HTML care poate fi apoi trimis către browser.
PHP acționează că o extensie a serverului web apelată ori de câte ori o pagină PHP este accesată.Această extensie procesează codul sursă din pagină iar apoi trimite rezultatul înapoi la serverul web,ajungând în final la browserele utilizatorilor .
2.3.1.2 Sintaxa:
Sintaxa PHP de baza -un script PHP poate fi plasat oriunde în document și este de forma:
<?php
// cod PHP
?>
Extensia fișierelor PHP este ".php".Un document PHP conține de obicei tag-uri HTML și scripturi PHP. Mai jos avem un exemplu de fișier php ,cu un script php care folosește o funcție integrată php pentru a afișa textul " Bună ziua ! "
<!DOCTYPE html>
<html>
<body>
<h1>o pagina PHP</h1>
<?php
echo "Buna ziua!";
?>
</body>
</html>
Comentarii:
Un comentariu este porțiunea din progam care nu este citită/executată că parte din program.Singurul scop al acestor linii este de a fii citite de persoana care se uită la cod.În PHP sunt două formate de comentarii :
Comentarii pe o singură linie -folosite în general pentru explicații sau note scurte relevante .Iată un exemplu:
<?
# Acesta este un comentariu
# Aceasta este a doua linie de comentariu
// Si acesta este un comentariu
print "Exemplu cu comentarii pe o singura linie";
?>
Comentarii pe mai multe linii -folosite în general pentru a scrie algoritmi în pseudocod și explicații mulți mai detaliate .Iată un exemplu :
/* Acesta este un comentariu pe mai multe linii
Autor : Valentina Florina Stancu
Scop: exemplu de comentariu pe mai multe linii
Subiect: PHP
*/
print "Un exemplu de comentariu pe mai multe linii";
?>
PHP nu este sensibil la spațiile goale:
Spațiile goale sunt lucrurile pe care le tastăm ,care de obicei sunt invizibile pe ecran,inclusiv spațiile și tab-urile.
PHP nu este sensibil la spațiile goale ,asta înseamnă că nu conetaza cât de multe caractere goale avem într-un rând ,de exemplu fiecare din următoarele afirmații PHP care atribuie suma de 2 + 2 variabilei $patru este echimvalent":
$patru = 2 + 2; // spații singulare
$patru=+2 ; // spații și tab-uri
$patru =
2+
2; // linii multiple
Declarațiile sunt expresii terminate în ";"
O declarație în PHP este orice expresie care este urmată de ";".Orice secvență de declarații PHP vaide care este închisă de tag-uri PHP ,este un program PHP valid. Iată o declarație tipică în PHP care ,în acest caz,atribuie un șir de caractere unri variabile numită $salut :
$salut = "Bine ai venit, PHP!";
Tipuri de variabile PHP
Principala modalitate de a stoca informații în mijlocul unui program PHP este prin utilizarea unei variabile.Iată câteva lucruri importante despre variabile:
-toate variabilele din PHP sunt notate cu semnul " $ "
-valoarea unei variabile este valoare celei mai recente atribuiri a să
-variabilele pot fi declarate înainte de a fi alocate ,dar nu este neapărat necesar
-variabilele în PHP nu tipuri intrinsic ,o variabilă nu știe dinainte dacă va fi utilizată oentru a stoca un număr sau un șir de caractere
-variabilele folosite înainte să fie asignate au valori default
-atunci când este necesar ,PHP poate converti tipurile de variabile
PHP are un total de opt tipuri de date folosite pentru a construi variabilele ,acestea sunt:
Integer , sunt numerele întregi fără zecimale ,că 12345 .Sunt cel mai simplu tip,curespunde cu numere întregi atât negative cât și pozitive putând fi în decimal,octal, și hexazecimal .Integer pot fi asignate variabilelor sau pot fi folosite în expresii că :
$int_var = 12345;
$alt_int = -12345 + 12345;
Double , sunt numerele cu zecimale , că 12,345. Că standard,doubles afișează numărul minim de zecimale necesar ,de exemplu:
$multe= 2.2888800;
$multe_2 = 2.2111200;
$putine = $multe + $multe_2;
print("$multe + $multe= $putine
");
?>
Output-ul va fi : 2.28888 + 2.21112 = 4.5
Boolean , au doar două valori posibile ,adevărat sau fals.PHP oferă două constante folosite special pentru acest tip : TRUE și FALSE ,care pot fi folosite astfel :
if (TRUE)
print("Asta se va afișa
");
else
print("Asta nu se va afișa niciodată
");
NULL ,este un tip special care are doar o valoare NULL.
$a_var = NULL;
Stringuri , sunt secvențe de caractere ,de exemplu " PHP suportă operatori string.Iată exemple valide pentru acesta:
$string_1 = "Ana are mere";
$string_2 = "Ana are mere, pere și gutui";
$string_39 = "Ana are treiceci și nouă de fructe";
$string_0 = ""; // un sting cu zero caractere
Array , este compus din mai multe elemente ,fiecare element este o pereche formată dintr-o cheie și o valoare ( cheile pot fi întregi sau stringuri,în timp ce valorile pot avea orice tip de date).
Obiectele sunt o colecție de variabile și funcții.
Resursele, sunt variabile speciale care păstrează referințe ale resurselor externe ale PHP-ului ,de exemplu conexiunile cu baza de date.
În php , variabilele pot fi declarate oriunde în script.Scopul unei variabile este în partea de script unde variabilă va fi folosită.De aceea PHP are trei tipuri de variabile diferite : locale , globale și statice.
O variabilă declarată în afară unei funcții are un scop GLOBAL și poate fi accesată numai din afară funcției.
<?php
$x = 5; // global
function myTest() {
// folosind x in interiorul acestei functii ,o eroare va fi generata
echo "<p> Variabila x din functie este: $x</p>";
}
test();
echo "<p>Variabila x din afara functiei este: $x</p>";
?>
O variabilă declarată în interiorul funcției are scop local și poate fi accesată în acea funcție.
<?php
function test() {
$x = 5; // local
echo "<p>Variabila x din interiorul functiei este: $x</p>";
}
test();
// folosirea variabilei x in afara functiei va genera o eroare
echo "<p>Variabila x din exteriorul functiei este: $x</p>";
?>
Operatori PHP
Operatorii sunt folosiți pentru a efectua operații asupra variabilelor și a valorilor. Limbajul PHP suportă următoarele tipuri de operatori :
-operatori aritmetici
-operatori de comparație
-operatori logici
-operatori de atribuire
-operator ternar
Operatori aritmetici :
adunare $a + $b
scădere $a – $b
înmulțire $a * $b
împărțire $a / $b
modulo $a % $b
operator de incrementare cu 1 $a ++
operator de decrementare cu 1 $a–
Operatori de comparație:
Egalitate $a==$b adevărat dacă $a este egal cu $b
Identic $a===$b adevărat dacă $a este egal cu $b și sunt de același tip
Inegalitate $a!=$b adevărat dacă $a este diferit de $b
inegalitate $a<>$b adevărat dacă $a este diferit de $b
neidentic $a!==$b adevărat dacă $a este diferit de $b și nu sunt de același tip
mai mic $a<$b adevărat dacă $a este mai mic decât $b
mai mare $a>$b adevărat dacă $a este mai mare decât $b
mai mic sau egal $a<=$b adevărat dacă $a este mai mic sau egal cu $b
mai mare sau egal $a>=$b adevărat dacă $a este mai mare sau egal cu $b
Operatori logici:
NOT !$a adevărat dacă $a nu este adevărat
AND $a && $b adevărat dacă și $a și $b sunt adevărat
AND $a and $b adevărat dacă și $a și $b sunt adevărate
OR $a || $b adevărat dacă ori $a ori $b sunt adevărate
OR $a or $b adevărat dacă ori $a ori $b sunt adevărate
XOR $a xor $b adevărat dacă ori $a ori $b sunt adevărate dar nu amândouă
Operatori de atribuire:
Operatorul principal de atribuire este " = " ,acesta înseamnă asocierea operatorului din stânga cu valoarea expresiei din dreapta . De exemplu:
$a=5;
$a+=4; //atribuie lui $a valoarea 9, acelasi lucru cu $a=$a+4
$b="Buna ";
$b.="seara"; // atribuie lui $b valoarea "Buna seara", acelasi lucru cu $b=$b."seara";
Operator ternar
Acesta evaluează o expresie pentru a vedea dacă este adevărat sau fals apoi execută una din cele două instrucțiuni în funcție de rezultatul evaluării.Acest operator are sintaxa " ? : "
Functii PHP
O funcție este o parte autonima din cod ,care realizează o anumită sarcina.Beneficiul principal al folosirii funcțiilor este acela că ele sunt reutilizabile;Dacă trebuie trebuie să efectuăm un task de mai multe ori,o funcție este soluția ideală.Funcțiile pot fi definide de noi sau de PHP(PHP are o colecție bogată de funcții integrate).
Definirea unei funcții :
Iată un exemplu :
function addNumere($num1, $num2) {
$result = $num1 + $num2;
return $rezultat;
}
Cuvântul cheie , function, îi spune limbajului PHP despre ceea ce urmază adică definirea unei funcții. Numele funcției este addNumere .În interiorul parantezelor se află argumentele (parametrii),valorile pe care i le vom da funcției atunci and o apelăm.Funcțiile nu trebuie să accepte argumente,în acest caz parantezele ar fi goale.Aici variabilele $num1 și $num2 sunt nume arbritrare și sunt folosite înăuntrul funcției.Trebuie reținut că cele două instrucțiuni dinăuntrul funcției sunt delimitate de paranteze. Declarațiile sunt foarte simple,prima ia valoarea funcției că $num1 și $num2, le însumează și păstrează rezultatul în $result.
În ceea ce primește argumentele,funcțiile de asemenea nu trebuie să returneze valori.Ele pot fi folosite pentru un calcul care va fi de printat.Însă este important să înțelegem conceptul de returnare a unei valori de la o funcție din moment ce este un aspect de baza.
Funcțiile nu vor fi executate până când nu scriem un cod care să îi spună să facă asta.Pentru a apela o funcție simplă putem folosi o instrucțiune că aceasta:
$total = addNumbers($imprumutSuma, $dobandaSuma);
Asta înseamnă că,codul de după = apelează funcția și că și consecință codul rulează. Valorile date funcitiei sunt pătrate în cele două variabile $imprumutSuma și $dobandaSuma.Aceste nume nu corespund cu numele argumentelor folosite atunci când definim funcția($num1 și $num2).Din moment ce în funcție a fost folosit return mtotalul păstrat în $result va fi trimis înapoi la instructiunea care execută funcția.În acest caz, valoarea va fi atribuită lui $total.
Atunci când denumim o funcție ,numele ar trebui să fie unic.Poate fi format din litere,numere și (_) dar nu poate începe cu o cifra (aceleași reguli se aplică și la denumirea unei variabile).De exemplu addNumere și add_numere sunt nume de funcții valide,add numere nu este ,nici 12add_numere nu este deoarece începe cu o cifra. Denumirea unei funcții abs123 este din punct de vedere al sintaxei corect dar numele ar trebui să aibă și sens.
Conceptele cheie ale funcțiilor :
Ușor de întreținut- utilizăm funcții pentru a nu fi nevoie să repetăm codul pentru niște task-uri comune.
Refolosibile- funcțiile pot fi folosite atât în scripturi indiviuale cât și în scripturi multiple.
Flexibile-funcțiile sunt flexibile,acceptând un număr specific de argumente sau o variabilă argumente de numere cu func_num_args() și func_get_arg().
Lizibilitate îmbunătățită -separarea funcționalității în funcții îmbunătățește lizibiltatea.
2.3.2 Baze de date
2.3.2.1 Introducere
O baza de date este o colecție de informații organizate pentru a asigura o recuperare eficientă.Informația colectată poate fi în tot felul de formate(electroni,printat,grafic,audio,statistic,etc.) . Există baze de date fizice și cele electronice.
O baza de date ar putea fi la fel de simplă că o aranjarea numelor dintr-o agenda telefonică în ordine alfabetică sau complexă că o baza de date care furnizează informații într-o combinație de formate.
Baze de date în programarea web
O baza de date web este un termen larg pentru gestionarea datelor în mediul online.Această ne oferă posibilitatea de a construi propia noastră baza de date fără să fim o persoană cu background tehnic.Baza de date web este folosită pentru sondaje,formuri de păreri,pagină de contact,conectie de DVD-uri,invitații la petrecerei,etc.
2.3.2.2 MySQL
MySQL este un sistem open source de management al bazelor de date relaționale (SGBDR) bazat pe Structurat Query Language (SQL).
MySQL rulează pe aproape toate platformele inclusiv Linux, UNIX și Windows. Cu toate că poate fi utilizat într-o gama largă de aplicații, MySQL este cel mai des asociat cu aplicații web și esteo componentă importantă a stack-ului open source LAMP. LAMP este o platforma de dezvoltare web care folosește Linux că și sistem de operare, Apache că și Web server , MySQL că sistem de baze de date relațional și PHP că și limbaj de script orientat pe obiecte(uneori se poate folosi Perl sau Python în locul PHP)
MySQL este un sistem de management al bazelor de date
Așa cum am spus și mai devreme,o baza de date este o colecție structurată de date.O baza e date poae fi orice de la o simplă lista de cumpărături până la o galerie de imagini su la cantități mari de informații ale unei rețele de companii.Pendru a adaugă,accesa și procesa datele păstrate într-o baza de date a calculatorului,este nevoie de un sistem dede management al bazelor de date precum MySQL Server. Din moment ce computerele sunt foarte bune la manevrarea unor cantități mari de date, sistemele de managent al bazelor de date joacă un rol principal în această ecuație ,că un instrument de sine stătător dar și că parte din alte aplicații.
Bazele de date MySQL sunt relaționale
O baza de date relaționale stochează date în tabele separate,în loc să o stocheze într-un camera de stocare mai mare. Structurile bazei de date sunt organizate în fișiere fizice optimizate pentru viteză. Modelul logic,cu obiecte că și bazele de date,tabele,rânduri și coloane,acestea oferă un mediu se programare flexibil .Putem seta reguli ale relațiilor dintre diferite tipuri de date ,că și unu-la-unu,unu -la-mulți, unice,necesare sau opționale și pointeri între diferite tabele. Baza de date impune aceste reguli ,astfel încât cu o baza de date bine concepută,aplicația noastră nu va întâlni date inconsistente,duplicate sau chiar lipsa acestora.
Partea SQL din "mySQL" reprezintă "Structured Query Language" . SQL este cel mai folosit și standardizat limbaj folosit pentru a accesa bazele de date. În funcție de mediul de programare,putem folosi SQL direct (de exemplu pentru a genera rapoarte) ,încorpora instrucțiuni SQL într-un cod scris în alt limbaj sau într-un limbaj specific API care ascunde sintaxa SQL.
SQL este definit de standardul ANSI / ISO .Standardul SQL a evoluat din 1986 și există deja câteva versiuni ale sale.
Software-ul MySQL este Open Source
Open Source înseamnă că este posibil că oricine să folosească și să modifice software-ul. Oricine poate descarcă software-ul MySQL de oe internet fără să plătească ceva.Dacă doriți puteți studia codul sursă și să îl modificați pentru a se potrivi nevoilor dumneavoastră. Software-ul MySQL folosește GPL(GNU General Public License) pentru a defini ceea ce putem sau nu putem să facem cu software-ul în diverse situații.
Serverul de baze de dare MySQL este voarte rapid,de încredere,scalabil și ușor de utilizat
MySQL poate rula confortabil pe un computer desktop sau pe un laotio,alături de alte aplicații,servere web,acesta necesitând puțină atenție.Dacă ați dedică o întreagă mașinărie lui MySQL, îi puteți ajusta setările pentru a beneficia de toată memoria,de puterea CPU și de capacitatea I/O disponibilă. MySQL se poate folosi bineînțeles și într-o rețea de mașinării.
My SQL Server a fost inițial dezvoltat pentru a gestiona baze de date mari,mult mai rapid decât soluțiile existente și a fost folosit cu succes în medii de producție foarte solicitante. Astăzi, după o dezvoltare constanța, MySQL server oferă un set de funcții foarte bogat și util.
MySQL Server lucrează în sisteme embedded client/server
Software-ul de baze de date MySQL este un sistem client/server care constă într-un server SQL mulți-threaded care suportă partea de back-end ,diverse programe și librării client,unelte administrative ,și o gama variată de interfețe de programare a aplicațiilor(API).
Caracteristici ale MySQL :
-este scris în limbajele de programare C și C++
-este testat pe o varietate mare de compilatoare
-se poate utiliza pe diferite platforme de exemplu Oracle Linux, Solaris ,Ubuntu,etc.
-folosește motoare de stocare tranzacționale și nontranzactionale
-implementează funcții SQL folosind o librărie de clase foarte bine optimizată fiind foarte rapida
2.3.2.3 Conectarea la o baza de date prin PHP
Pentru a realiza conectarea la o baza de date trebuie să stabilim conexiunea către MySQL dintr-un script PHP.Funcția cu care ne conectăm la MySQL se numește mysql_connect .Această funcție returnează o resursă care este un pointer pentru coneziunea cu baza de date.
<?php
$username = "numele_tau";
$password = "parola_ta";
$hostname = "localhost";
//conexiunea la baza de date
$dbhandle = mysql_connect($hostname, $username, $password)
or die("Conectarea la MySQL a esuat");
echo "Conectat la MySQL<br>";
?>
Daca totul merge bine ar trebui sa vedem mesajul "Conectat la MySQL" atunci cand rulam scriptul. Odata ce ne-am conectat , trebuie sa selectam o baza de data cu care vrem sa lucram .Sa spunem ca baza de date se numeste "exemple" .Pentru a putea incepe lucrul cu baza de date avem nevoie de functia mysql_select_db() :
<?php
//selecteaza baza de date cu care vrei sa lucrezi
$selected = mysql_select_db("exemple",$dbhandle)
or die("Nu s-a putut selecta baza de date exemple");
?>
Acum fiind conectați vom rula câteva interogări. Funcția folosită pentru a interoga se numește mysql_query(). Funcția returnează o resursă care conține rezultatele interogării,numite set de rezultate. Pentru a examina rezultatul vom folosi funcția mysql_fetch_array care returnează rezultatele rând cu rând. În cazul în care o interogare nu returnează un rezultat ,resursa pe care funcția o returnează va fii o valoare de true sau false.
<?php
//executa interogarile SQL si returneaza rezultatele
$result = mysql_query("SELECT id, model, year FROM masini");
//preia datele din baza de date
while ($row = mysql_fetch_array($result)) {
echo "ID:".$row{'id'}." Name:".$row{'model'}."
".$row{'an'}."<br>";
}
?>
În final,închidem conexiunea.Chiar dacă acest lucru nu este neapărat necesar deoarece PHP va închide automat conexiunea atunci când script-ul se va termina.
<?php
//inchiderea conexiunii
mysql_close($dbhandle);
?>
Iata codul complet :
<?php
$username = "numele_tau";
$password = "parola_ta";
$hostname = "localhost";
//conexiunea la baza de date
$dbhandle = mysql_connect($hostname, $username, $password)
or die("Conectarea la MySQL a esuat");
echo "Conectat la MySQL<br>";
?>
<?php
//selecteaza baza de date cu care vrei sa lucrezi
$selected = mysql_select_db("exemple",$dbhandle)
or die("Nu s-a putut selecta baza de date exemple");
?>
<?php
//executa interogarile SQL si returneaza rezultatele
$result = mysql_query("SELECT id, model, year FROM masini");
//preia datele din baza de date
while ($row = mysql_fetch_array($result)) {
echo "ID:".$row{'id'}." Name:".$row{'model'}."
".$row{'an'}."<br>";
}
?>
<?php
//inchiderea conexiunii
mysql_close($dbhandle);
?>
Pentru a crea baza de date " exemple " pe un server MySQL trebuie să rulăm următorul script :
CREATE DATABASE `exemple`;
USE `exemple`;
CREATE TABLE `masini` (
`id` int UNIQUE NOT NULL,
`name` varchar(40),
`an` varchar(50),
PRIMARY KEY(id)
);
INSERT INTO masini VALUES(1,'Mercedes','2002');
INSERT INTO masini VALUES(2,'BMW','2005');
INSERT INTO masini VALUES(3,'Audi','2003');
CAPITOLUL III – DESPRE APLICATIE
3.1 Descrierea aplicatiei
Analiză de oportunitate :
Ideea sistemului de plângeri în materie de Fashion este de a realiza o platforma unde cei care au avut diverse probleme sau neplăceri în timpul unei achiziții online din categoria Fashion, să poată depune plângere .Categoria Fashion reprezintă tot ce ține de înfățișare,de la îmbrăcăminte,încălțăminte,până la accesorii,genți,etc.Această platforma este benefică nu numai utilizatorilor care au avut probleme în achiziționarea unui bun online,dar și celor care doresc să achiziționeze în prezent sau viitor produse de la aceste magazine online .Aceștia au acces la părerile celorlalți ,putându-se face o idee despre calitatea serviciilor sau produselor magazinului online de care sunt interesați.
Scopul acestui tip de proiect este îmbunătățirea caliatii comerțului online ,nu numai prin semnalarea consumatorilor cât și prin semnalarea magazinelor online care au întâmpinat probleme în a livra consumatorului produsul așteptat .
Utilizatorii vizați sunt aceia care fac cumpărături online. Media vârstei fiind cuprinsă între 14-60 ani. Aplicația este divizată în 2 părți: una adresată vizitatorilor și cealaltă adresată utilizatorilor logați.Un vizitator are acces la aplicație, poate vedea ultimele plângeri postate, dar nu are acces la secțiunea creare a plângerilor pentru un anume magazin online. Vizitatorul are posibilitatea de a-și crea cont în cadrul aplicației, lucru care îi oferă acces la secțiunea de “ Creează plângere” .
Că și caracteristici principale, interfață este foarte prietenoasă și intuitivă,vizitatorul are posibilitatea de a-su creea cont ceea ce îi oferă accesul la secțiunea" Creează Plângere". Pe lângă secțiunea "Creează Plângere",avem și secțiunea "Vezi plângeri recente" care se adresează tuturor utilizatorilor,mai ales persoanelor pasionate de cumpărături online.Această secțiune va fi updatată constant.
Contrar proverbului “Nu haina îl face pe om.” ,în zilele noastre toată lumea pune accent pe felul în care arată, ținută vestimentară fiind cartea de vizită a fiecăruia și modul prin care îți faci prima impresie. În prezent magazinele online de fashion s-au înmulțit ,acestea existând cu scopul de a face viață oamenilor mai confortabilă,putând face cumpărături oriunde ,oricând. În momentul în care acest proces nu mai este unul confortabil și devine o povara datorită timpului pierdut ,atunci este o problema. Această aplicație îi ajută pe cei care fac cumpărături online în materie de fashion să depună plângeri dacă au avut probleme sau să vadă ce probleme au avut alte persoane.
Analiză Non-Funcțională (tehnică):
Tehnologia folosită în dezvoltarea aplicației.
Tehnologia principala folosită în dezvoltarea aplicației este PHP. PHP este un acronim care provine din „Hypertext Preprocessor” și este un limbaj de scripting, realizat și distribuit în sistem Open Source, special realizat pentru a dezvoltă aplicații web, prin integrarea codului PHP în documente HTML. Sintaxa să provine din C, Java și Perl și este ușor de învățat. Scopul principal al limbajului este acela de a scrie rapid pagini web dinamice și oferă suport pentru manipularea bazelor de date de tip SQL (dBase, Informix, MySQL, mSQL, Oracle, PostgreSQL, Solid, Sybase, ODBC, etc) cât și acces la sisteme hipermedia. De asemenea, PHP suportă încărcarea fișierelor de pe calculatorul client, operație cunoscută sub numele de upload și oferă suport pentru cookies.
Așteptări de la aplicație:
Posibilități de scădere a timpului de execuție:
-AJAX: Încărcarea informației în aceeași pagină (fără refresh)
-codului (CSS și javascript(jQuery)) online
-Adăugarea scriptului la sfârșitul paginii
-Optimizarea codului php
Securitatea aplicației
Securitatea aplicației pentru început, va fi constituită dintr-un număr minim de 6 caractere pentru parolă utilizatorului, confirmarea prin e-mail al contului creat, eliminarea din pagină a elementelor la care utilizatorii nu au drepturi și ascunderea informațiilor despre baza de date din URL-uri. Securitatea parolei poate fi îmbunătățită prin restricții de litera mare, cifre și caractere speciale.
Disponibilitatea aplicației
Aplicația va fi disponibilă tot timpul. Actualizările se vor face în timpul nopții când activiteatea de pe site este redusă. Cauzele posibile în care aplicația nu mai funcționează sunt: lipsa conexiunii la internet, hostul unde este postată aplicația nu mai funcționează și un număr mare de
utilizatori. Timpul în care aplicația este nefuncțională poate varia în funcție de natură problemei. Timpul minim poate fi de 2 minute iar cel maxim poate ajunge și la 3 zile.
Tehnologii folosite :
Tehnologiile HTML5 & CSS3
-Foarte simple și nu necesită mult efort .
-Oferă controlul absolut asupra realizării paginii web .
-Pot fi folosite în cadrul paginilor pe care le vom realiza folosind secvențe de cod HTML "împrumutate" de la alte pagini web .
Tehnologiile jQuery
Accesează părți din pagină, jQuery oferă mecanisme foarte elegante de traversare a elementelor unei pagini. . Modifică aspectul unei pagini.Cu jQuery puterile cresc, existând atât avantaje la clasică problema a afișării identice de la un navigator la altul, dar și posibilitatea de a schimbă unele proprietăți dinamic, după ce pagină s-a încărcat deja!
.Modifică conținutul unei pagini. jQuery nu se limitează la a ne oferi doar schimbări cosmetice, ci poate să modifice chiar conținutul documentului. Poate fi schimbat un text, modificată o imagine, reordonată o lista.
Răspunde la interacțiunea utilizatorului cu pagină. Oricât de impresionante ar fi comportamentele ce le asigura o librărie (ex: fadeIn, slideIn) ele devin zero dacă nu pot fi atașate unor evenimente. jQuery are definite o serie de evenimente care interceptează acțiunile vizitatorului într-o pagină web (click, mouseOver ori mouse-ului și altele).
Adaugă animație paginilor. Am văzut deja unele mici animații, dar cu ajutorul unor pluginuri aceste animații pot fi mult mai complexe și mai arătoase .
Primește informație de la server fără încărcarea paginii. Cu jQuery este chiar ușor să realizezi aplicații web care trimit sau primesc date de la server chiar din pagină curentă. Simplifică muncă cu JavaScript. Prin ceea ce librăria include de-a gata (inclusiv la capitolul iteratie și array-uri), jQuery ușurează munca web developerilor.
Pe pagina urmatoare puteti vedea diagramele UML:
Diagrama cazurilor de utilizare:
Diagrama de activitati:
3.2 Implementarea Aplicatiei
Exemple de bucăți de cod comentate :
1.Funcția de verificare a utilizatorului
2. Logare în funcție de rolul utilizatorul. Un utilizator poate avea unul din rolurile client, angajat sau admin, iar pentru fiecare se face o logare cu parametrii și date diferite.
-prin post, se iau valorile completate de utilizatorul ce doreste sa se autentifice
– se verifica corectitudinea datelor
3. Crearea unui cont nou – se poate face doar pentru rolul de client și angajat. Prima validare se face pe câmpurile ce trebuie completate de către utilizatori. acești nu își pot crea cont dacă lasă unul din câmpuri necompletat. A doua validare se face pentru duplicate, nu pot exista doi useri cu acelaș nume de user.
5. Funcția de delogare. Atât timp cât un utilizator se poate loga în aplicație (începe sesiunea) acesta trebuie să aibe posibilitatea să se și deloghete( sesiunea se oprește).După apăsarea butonului de delogare, sesiunea se încheie, acțiunile nu mai sunt înregistrate, iar acesta întoarce la pagină de login.
6. Statusurile unei plângeri. Din momentul creării și până la închiderea ei, o plângere trece prin mai multe statusuri, pe care în limbaj de programare le numim cazuri. Această se deschide de către un utilizator, este asignată unui responsabil, poate fi comentată , apoi închisă.
7. Functia de creare si salvare a plangerii
In momentul in care o plangere este creta de un utilizator, pentru a fi asgnata si rezolvata, aceasta trebuie memorata in baza de date.
8. Funcția de asignare a unei plângeri
După ce o plângere a fost făcută, următorul pas este că această să fie asignată unui responsabil. Adminul are posibilitatea de a asigna plângeri, iar el face acest lucru prin selectarea unui inginer dintr-o lista în dreptul plângerii respective. Procesul din PHP este următorul : Se reține id-ulplangerii, iar la asignare se face o asociere între id-ul plângerii și id-ul responsabilului. După ce acest lucru este făcut, responsabilul va vedea o lista cu toate plângerile ce i-au fost asignate.
9. Tabelul de plângeri vizibil doa pentru rolul de admin
Adminul are cele mai multe drepturi în aplicație, și inacelas timp și cea mai mare vizibilitate.Spre deosebire de responsabil, care vede doar plângerile asignate lui,adminul poate vedea absolut toate plângerile, indiferent de client, responsabil sau statu. Toată această informație este structurată într-un tabel, cu capetele definite, iar informația din coloane se extrage din baza de date. În fișierul de mai jos se poate observă îmbinarea între 2 limbaje de programare diferite, PHP și HTML, ce comunica și se îmbină perfect petru a oferii utilizatorului rezultatul dorit.
10.Conexiunea la baza de date
Pentru a se face o conexiune standar la o baza de date, este necesar să fie specificate date de logare și cel mai important aspect, denumirea baei de date, care în cazul nostru este complain-db. Următorul pas este să se stabilească rutele pentru a nu fi nevoiți să dăm cai locale, acest lucru nu este favorabil dacă aplicația urmează să fie urcată pe un domeniu.
CAPITOLUL IV – CONCLUZII
Programarea web se constituie astăzi,în contextul exploziei informaționale și a extinderii de neimaginat acum câțiva ani a rețelei Internet,că unul dintre domeniile dezvoltării de aplicații software cu un trend permanent ascendent,într-o continuă evoluție,atât calitativă,cât și cantitativă.Practic,un important segment al dezvoltărilor informatice este acaparat de proiectarea și dezvoltarea de aplicații destinate Internetului,categoria Web fiind predominantă în acest sens.
Comerțul electronic este în continuă expansiune iar magazinele online se tranforma treptat în adevărate mall-uri online,categoria "Fashion" fiind una dintre cele mai promițătoare în prezent .
Ideea sistemului de plângeri în materie de Fashion este de a realiza o platforma unde cei care au avut diverse probleme sau neplăceri în timpul unei achiziții online din categoria Fashion, să poată depune plângere .Categoria Fashion reprezintă tot ce ține de înfățișare,de la îmbrăcăminte,încălțăminte,până la accesorii,genți,etc.Această platforma este benefică nu numai utilizatorilor care au avut probleme în achiziționarea unui bun online,dar și celor care doresc să achiziționeze în prezent sau viitor produse de la aceste magazine online .Aceștia au acces la părerile celorlalți ,putându-se face o idee despre calitatea serviciilor sau produselor magazinului online de care sunt interesați. Scopul acestui tip de proiect este îmbunătățirea caliatii comerțului online ,nu numai prin semnalarea consumatorilor cât și prin semnalarea magazinelor online care au întâmpinat probleme în a livra consumatorului produsul așteptat .
Principalul motiv pentru care am ales să îmi dezvolt aplicația în PHP este acela că PHP este un limbaj foarte puternic fiind o soluție convenabilă pentru clienții cu buget redus .Părerea mea este că PHP are un loc foarte important în rândul limbajelor de programare fiind un limbaj dinamic și în continuă dezvoltare.
CAPITOLUL IV – BIBLIOGRAFIE
1.Learning PHP, MySQL & JavaScript: With jQuery, CSS & HTML5 – Robin Nixon
2. Murach's PHP and MySQL – Joel Murach
3. HTML pentru World Wide Web cu XHTML si CSS – Elizabeth Castro
4. PHP Object – Oriented Solutions – David Powers
5. http://php.net/
6. http://www.w3schools.com
7. http://html.net/tutorials.php
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: Aplicatie Web Sistem de Pnalngeri In Domeniul Fashion (ID: 109959)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
