De la începutul lumii, omul era în continuă dezvoltare, în continuă cercetare și așa au apărut cele mai mari invenții cum ar fi: focul, roata și așa… [306331]

Universitatea “Spiru Haret” Bcuresti

Facultatea de Informatica

CATALOG AUTO

Coordonator Stiintific:

Dana Vilcu

Student: [anonimizat]2016-

[anonimizat], în continuă cercetare și așa au apărut cele mai mari invenții cum ar fi: focul, [anonimizat], avion. Mereu omul a [anonimizat].

În această lucrare este prezentat pe larg aspectele teoretice și practice precum și modul de implementare a acestei aplicații.

Capitolul 1-Introducerea este partea introductive prin care se prezintă structura aplicației și domeniul din care face parte.

Capitolul 2-Aspecte teoretice reprezintă prezentarea tuturor limbajelor folosite la crearea acestei aplicații. [anonimizat], PHP, Mysql.

Capitolul 3-Specificatiile aplicației prezintă lucrarea. [anonimizat] a dezvoltatorului dar și testarea aplicației.

Capitolul 4-Concluzii prezintă părerea mea despre aplicația realizată și despre posibilitatea de dezvoltare a acesteia.

Capitolul 1

Introducere

Traim intr-o lume care este dominata de calculatoare. [anonimizat], inclusiv in magazinul de la colt gasim un calculator. [anonimizat],[anonimizat]-o condica,catalog etc. [anonimizat],acestea se pierdeau. [anonimizat], o cautare in baza de date fiind mult mai simplu de facut.

In anii ’60 [anonimizat] o memorie foarte mare.

In trecut informatiile erau luate din ziare sau reviste. In aceasta lucrare de licenta o sa prezint o metoda mult mai simpla de aflarea informatiilor. Site-ul preentate este destinat fanilor de masini sport. Desigur ca aceste informatii pot fi luate si din reviste de specialitate dar este mult mai simplu dand o [anonimizat] a mai rasfoii o revista.

Proiectarea unui astfel de site web este facut in asa fel incat sa fie usor de utilizat si de a oferi detaliile necesare. [anonimizat] a [anonimizat]: culori, layout s.a.

In ceea ce priveste realizarea unei interfete grafice este nevoie de cunostinte din mai multe ramuri cum ar fi: HTML, CSS,PHP, JavaScript, Mysql. La inceput o pagina web este doar o [anonimizat] a [anonimizat], a unui site de socializare etc.

Principiul de baza al unui site este de a [anonimizat] a oferi utilizatorilor un design placut si de a le satisface nevoile si de a il face sa se intoarca si sa acceseze din nou acelasi site.

Capitolul 2

[anonimizat],[anonimizat]. [anonimizat]. Acest sistem se numeste „Internet”.

Termenul internet provine din împreunarea artificială și parțială a două cuvinte englezesti: interconnected = interconectat și network = rețea.

Acesul la internet pare un vis. In anii ’70,’80 chiar si ’90 nimeni nu se gandea la posibilitatea de a avea acces la internet de oriunde te-ai afla. Fie ca esti acasa sau esti la facultate sau chiar intr-o vacanta, internetul nu lipseste.

Prin internet intelegem o retea de calculatoare conectate intre ele fie printr-un cablu fie printr-o retea wireless, fiind bazate pe asa-numitele “protocoale de comunicatie” care permit transeferul de date intre retelele de pe tot globul.

In Romania internetul a intrat destul de greu din cauza costurilor mari al srvicilor telefonice. In ultimii ani acest lucru s-a schimbat. Astazi exista internet in aproape orice loc ai merge:in parcuri exista retea gratuita de internet, intr-un local unde mergi sa bei o cafea etc.

In internet exista doua categorii:prima categorie este server-ul este cel care stocheaza datele si informatiile iar cea de a doua categorie sunt clientii. Acestia sunt cei care beneficiaza si solicita accesul la aceste informatii.

2.1 Site-urile web si serverele

WWW(World Wide Web) este totalitatea site-urilor / documentelor și informaților de tip hipertext legate între ele, care pot fi accesate prin rețeaua mondială de Internet (net = retea ). Documentele, care rezidează în diferite locații pe diverse calculatoare server, pot fi regăsite cu ajutorul unui identificator univoc numit URL. Hipertextul inclusiv imagini etc. este afișat cu un ajutorul unui program de navigare în web numit browser, care descarcă paginile web de pe un server web și le afișează pe un terminal „client” la utilizator.

Tehnologia de baza a spațiului World Wide Web a fost creată de un institut de cercetări pentru fizica energiilor înalte din Elveția, CERN. Tim Berners-Lee și echipa sa de la CERN a creat în 1994 un Consorțiu Web, care se ocupa cu elaborarea și dezvoltarea standardelor pentru Web. Membrii consorțiului, atunci când au început să creeze un mecanism pentru identificarea unică a informației din spațiul de date, au înțeles necesitatea elaborării unei scheme de legături informaționale Web, care să includă o mare varietate de servicii internet, rezultând astfel adresele URL(Uniform Resource Locator -Descriptor Uniform de Resurse). Pentru a înțelege World Wide Web trebuie să înțelegem modul în care este organizată informația în mediile tipărite.

Web-ul este o multitudine de pagini de informatii care sunt stocate intr-un server.

Un server web este un program care, la cererea utilizatorului de la o anumita adresa IP care solicita un anumit fisier, incearca sa obtina acel fisier si sa il trimita inapoi utilizatorului care l-a solicitat.Acest fisier poate fi o imagine,un cod sursa HTML al unei pagini sau poate un fisier video.

De obicei paginile Web sunt salvate in memoria unui HDD al unui server iar atunci cand sunt solicitate, un soft special le gaseste si le afiseaza prin intermediun unui browser.

Un Site Web este alcatuit din mai multe pagini web. Acestea la randul lor sunt create cu ajutorul limbajului de programare HTML(Hypertext Markup Language) si este ajutat si de ale limbaje cum ar fi PHP,Java script etc.

Exista mai multe tipuri de site-uri cum ar fi:site-uri statice si dinamice, site-uri care utilizeaza o baza de date si magazine online.

2.1.1 Site-urile statice si dinamice

Site-ul static este cel mai simplu site dar si cel mai ieftin. El este de obicei creat pentru reclame sau panouri publicitare.

Site-ul dinamic este site-ul care are nevoie de administrare periodica a datelor de pe server.

2.1.2 Site-urile care utilizeaza o baza de date

Acest tip de site este destul de greu de administrat deoarece fiind bazate pe o baza de date(MySql)

2.1.3 Magazinele online

Acest tip de site este cel mai greu de utilizat. Trebuie avut in vedere mai multe aspecte. Salvarea datelor intr-o baza de date si sa permita clientilor sa aleaga si sa achizitioneze in siguranta produsul sau serviciul de care are nevoie cu ajutorul unui card de credit sau a banilor virtuali(Bitcoin).

Capitolul 3

Tehnologii folosite

3.1 Html(Hypertext Markup Language)

3.1.1 Notiuni generale

Este limbajul de formatare a documentelor utilizat în proiectarea majorității paginilor Web.

Limbajul HTML conține un set de coduri speciale care se inserează într-un text, pentru a adăuga informații despre formatare și legături. HTML are la bază limbajul Generalizat Standard de Marcare (Standard Generalized Markup Language – SGML).

Prin convenție, toate informațiile HTML încep cu o paranteză unghiulară deschisă, (“<”) și se termină cu o paranteză unghiulară închisă (“>”), de exemplu <HTML>. Simbolul “<…>” este cunoscut în literatura de specialitate sub numele de tag (etichetă) de control sau de marcaj. Marcajul comunică unui program de navigare (interpretor sau browser) că fișierul scris este formatat în limbajul HTML standard.

In interiorul tag-urilor <HTML> </HTML> se gasesc perechile de tag-uri<head>,</head> si <body>,</body>.

Table 3-1

Tag-ul<head> contine titlul paginii dar si elementele care nu sunt vizibile cum ar fi descrieri de tip <meta>,stiluri,scripturi dar si link-uri catre fisiere externe.

De obicei design-ul pagini este facut in CSS iar implementarea lui este facut printr-un link.

Table 3-2

3.1.2 Formatarea textului

Pentru a crea documente Web lizibile și utile se folosesc etichetele de trecere la paragraf nou sau linie nouă. Aceste etichete sunt <P> și <BR>.

Funcțiile pentru font sunt: size, color, forma (<b>, <strong> – îngroșat, <i> – înclinat, <u> – subliniat, etc.) familia textului.

Tagurile<div> și <span> au rolul de a delimita un bloc pentru formatare. Unul dintre atributele tag-ului <div> este alinierea:

– Left – paragraful este aliniat la stânga (implicit)

– Right – paragraful este aliniat la dreapta

– Center – paragraful este aliniat la centru

– Justify – paragraful este aliniat la ambele capete.

Table 3-3

3.1.3 Legăturile (link-uri)

În HTML link-urile se mai numesc și referințe sau hiperlegături. Acestea au rolul de a:

Permite trecerea de la o pagină la alta de pe Web și revenirea la pagină inițială prin apăsarea butonului Back al browser-ului

Permite trecerea de la o pagină la alta de pe calculatorul propriu

Permite trecerea la fișiere non HTML (.txt,.jpg).

<A atribute> conținut </A>. Conținutul dintre marcajele <A> și </A> poate fi text și/sau imagine și este afișat de browser sub formă de legătură (subliniat și colorat). Atributele marcajului <A> sunt: href, target, title, name.

Href-este obligatoriu pentru elementul legătură (src pentru elementul img) și indică adresa url care este adresa completă a paginii.

Target-când utilizatorul activează o legătură browser-ul înlocuiește fereastra care conține legătura cu o nouă fereastră, specificată de adresa URL din href. Atributul target face să se schimbe această operație implicită și el are sintaxa target=” nume”, unde “nume” definește fereastra în care va fi încărcată nouă pagină.

Title-când mouse-ul este deasupra conținutului elementului <A> conținut </A> se transformă într-o mână și va afișa valoarea atributului TITLE, într-o sugestie de instrument (într-un cadru galben).

Name-acest atribut este utilizat pentru a defini o ancoră în interiorul unei pagini.

3.1.4 Formulare

Formularul este unul dintre cele mai importante unelte folosite de un webmaster pentru a obține informații importante despre un internaut, informații precum email, nume, adressa, telefon sau orice alte informaii (Formulare).

Pentru a insera într-o pagină WEB un formular se folosește elementul <FORM> cu următoarea sintaxǎ:<FORM atribute>…</FORM>.

Atributele elementului FORM sunt: Action, Method, Enctype, Target.

Action-metioneaza adresa scriptului (aflat pe server) care va interpreta formularul. Aceste scripturi pot fi scrise în limbajele PHP sau Pearl.

Method-indica metoda folosita de browser pentru transmiterea formularului. Poate lua valorile get si post. Get-datele sunt trimise prin adaugarea la adresa indicata de action. Permite trimiterea unor mici cantitati de date. Post-datele sunt trimise separat si sunt permise cantitati mari de date.

Enctype -acest atribut definește metoda de codificare a datelor înainte ca ele sǎ fie transmise la server.

Target-Acest atribut se folosește în cazul în care se dorește ca formularul cu rezultate sa aparǎ într-o fereastrǎ nouǎ a browser-ului.

Eticheta <input> poate avea atributele:

Type – indica tipul datelor care vor fi introduse (text=text, submit=trimite, reset=sterge, password=parola, hidden=nu este vizibil, checkbox=caseta de validare, button=buton, radio=selectarea unui singur element dintr-un grup, file=fisier pentru upload, image=butonul va fi inlocuit cu o imagine).

Table 3-4

Table -5

Name – numele asociat câmpului respectiv. Este folosit la prelucrarea datelor de către scriptul menționat în action.

Size – numărul de caractere vizibile din câmp.

Maxlength – numărul maxim de caractere introduse în câmp.

Readonly – datele prezente în câmp nu pot fi modificate (Tutorials cap 9).

3.1.5 Tabele

Tabelele reprezintă în HTML un element important, evidențiindu-se prin tag-urile <TABLE> și </TABLE>. El are o formă dreptunghiulară și este alcătuit din linii și coloane la intersecția cărora se află celulele.

Tabelele oferă o mulțime de posibilități pentru a evidenția un text pe mai multe linii și coloane, pentru delimitarea spațiului unei pagini în vederea grupării într-o machetă a unor elemente (text, imagini, etc).

Un tabel poate fi formatat utilizând următoarele atribute: border, bordercolor, frame, rules, width, height, align, cellspacing, cellpadding, hspace, vspace, bgcolor.

3.1.6 Imaginile

Imaginile pot fi descărcate de la adrese absolute sau relative. Adresele URL (Uniform Resource Locator) reprezintă standarde de identificare a resurselor (de exemplu fișiere) și pot fi adrese URL absolute și relative.

Pentru a introduce o imagine într-un format HTML se folosește elementul <img>… </img> împreuna cu următoarele atribute:

– Src – Valoarea acestui atribut determină locația fișierului care conține imaginea.

– alt – La acest atribut se scrie textul care va aparea daca imaginea nu e afisata (de unele browsere) sau cand utilizatorul va pozitiona, in browser, mouse-ul peste imagine.

– align – Acest atribut permite asezarea imagini in locuri diferite pe pagina. Pot fi folosite urmatoarele optiuni:Bottom , Middle , Top , Left , Right , TextTop , ABSMiddle , Baseline , ABSBottom.

– width – Valoarea acestui atribut reprezinta lungimea imaginii, in pixeli. Daca nu este scris imaginea va fi prezentata cu lungimea originala.

– height – Valoarea acestui atribut reprezinta inaltimea (latimea) imaginii, in pixeli. Daca nu este scris imaginea va fi prezentata cu inaltimea originala.

– border – Prin adaugarea acestui atribut imaginea va aparea înconjurata de un chenar, valoarea acestui atribut reprezinta grosimea chenarului, in pixeli.

– hspace – Acest atribut este pentru spatiu orizontal pe ambele parti ale imaginii, specificat in pixeli

– vspace – Acest atribut este pentru spatiu vertical pe ambele parti ale imaginii, specificat in pixeli.

Div-urile

Tagul div este nu este altceva decat un suport pentru alte taguri. Iata cateva atribute ale acestui tag:id,title,style,height,width.

Restul atributelor nu se folosesc in general functiile lor fiind cedate CSS-ului.

Table 3-6

3.2 PHP

PHP (acronim recursiv pentru PHP: Hypertext Preprocessor) este un limbaj de scripting de uz general, cu cod-sursă deschis (open source), utilizat pe scară largă, și care este potrivit în special pentru dezvoltarea aplicațiilor web și poate fi integrat în HTML. (Manual PHP)

Popularitatea limbajului PHP este în continuă creștere. Realizatorii de pagini web nu mai sunt restrânși la manipularea paginilor web într-un browser, ci pot avea, cu ajutorul PHP-ului, acces la lucrul pe server, pentru a rezolva lucrurile inaccesibile dintr-un browser. Cu ajutorul acestui limbaj, se poate renunța la paginile web statice și invariabile realizate cu HTML și se pot crea pagini în funcție de ce se dorește a se vedea în timp real. De asemenea, în PHP se pot crea formulare, se pot interoga baze de date sau se pot desena interactiv elemente grafice.

Scripturile scrise în PHP se instalează pe un server web. Aceste scripturi au rolul de a prelucra datele pe care le trimite utilizatorul de pe calculatorul personal și de a trimite într-un browser rezultatele prelucrărilor. De asemenea, în PHP se pot crea fișiere (ceea ce în Java Script nu este permis) și se poate lucra cu baze de date MySQL.

În cazul în care serverul nu este găzduit pe calculatorul personal (local), pentru a accesa fișierele aflate pe site, trebuie să ne conectăm la FTP (File Transfer Protocol). În cazul în care se lucrează cu un server (de exemplu, server-ul local Apache), avem următoarea schemă de funcționare a PHP-ului.

3.2.1 Sintaxa PHP

Scripturile PHP sunt cuprinse între etichetele <?php și ?>. În aceeași pagină, se poate adăuga și cod HTML, cu condiția ca acesta să fie plasat în afara etichetelor <?php și ?>. Scripturile sunt formate din instrucțiuni scrise între etichetele menționate mai sus și care se termină cu caracterul obligatoriu ”;” (în alte limbaje de scriptare, acest caracter este opțional, ca de exemplu în JavaScript).

Echo este cea mai foslosită instrucțiune, nu este funcție, dar poate fi utilizată ca o funție. Cu ajutorul ei, afișăm text, rezultate ale unor operații, variabile, etc. Are sintaxa generală: echo “rezultate de afisat”;

Table 3-7

Sunt trei domenii principale, unde scripturile PHP sunt utilizate:

Scripting de partea serverului. Acesta este cel mai tradițional și de bază domeniu al PHP. Aveți nevoie de trei lucruri pentru ca aceasta să funcționeze. Analizatorul PHP (în calitate de CGI, sau modul pentru server), un server web și un navigator web. Trebuie să rulați serverul web cu o instalare PHP conectată la el. Puteți accesa ieșirile programului PHP cu navigatorul web, vizualizând pagina PHP prin server. Toate acestea pot rula pe computerul dumneavoastră de acasă, dacă doar experimentați cu programarea în PHP.

Scripting în linia de comandă. Puteți să faceți un script PHP să ruleze fără un server și navigator web. Aveți nevoie doar de analizatorul PHP pentru a-l utiliza în acest mod. Acest mod de utilizare este ideal pentru script-uri executate în mod regulat cu cron (pe *nix sau Linux) sau cu Task Scheduler (pe Windows). Aceste script-uri pot fi utilizate de asemenea pentru lucrări simple de procesare a textelor.

Scrierea aplicațiilor de birou. PHP probabil că nu este cel mai potrivit limbaj pentru a crea o aplicație de birou cu o interfață grafică a utilizatorului, dar dacă cunoașteți PHP foarte bine și doriți să utilizați unele facilități avansate ale PHP în aplicații de partea clientului, puteți să utilizați PHP-GTK pentru a scrie asemenea aplicații. De asemenea aveți posibilitatea să scrieți în acest mod aplicații ce vor rula pe mai multe platforme. PHP-GTK este o extensie a PHP, care nu este disponibilă în distributivul de bază.

PHP poate fi utilizat pe toate sistemele de operare majore, inclusiv Linux, multe variante Unix (inclusiv HP-UX, Solaris și OpenBSD), Microsoft Windows, Mac OS X, RISC OS și probabil altele. PHP de asemenea susține majoritatea server-elor web existente în prezent. Acestea includ Apache, IIS, și multe altele. De asemenea se includ și serverele ce pot utiliza binarul PHP FastCGI, cum ar fi lighttpd și nginx. PHP funcționează ca modul sau ca procesor CGI.

Deci cu PHP aveți libertatea alegerii sistemului de operare și a serverului web. Ba chiar mai mult, aveți posibilitatea să utilizați programarea procedurală sau programarea orientată pe obiecte (POO), sau o combinație a acestora.

Cu PHP nu sunteți limitat doar la afișarea HTML. Posibilitățile PHP permit de a afișa imagini, fișiere PDF și chiar filme Flash (utilizând libswf și Ming) generate "din zbor". Puteți de asemenea cu ușurință să afișați orice text, cum ar fi XHTML sau alt fișier XML. PHP poate genera automat aceste fișiere și le poate salva în sistemul de fișiere, în loc să le afișeze, formând astfel un sistem de cache al conținutului dinamic de partea server-ului.

Una dintre cele mai puternice și semnificative facilități ale PHP este susținerea unui larg domeniu de baze de date. Scrierea unei pagini web ce accesează o bază de date este incredibl de simplă utilizând una din extensiile de lucru cu baze de date (de ex. Pentru mysql), sau utilizând un nivel de abstractizare precum PDO, sau conectarea la orice bază de date ce susține standardul "Open Database Connection" cu ajutorul extensiei ODBC. Alte baze de date pot utiliza cURL sau socket-uri, cum ar fi CouchDB.

PHP de asemenea poate să "converseze" cu alte servicii utilizând protocoale cum ar fi LDAP, IMAP, SNMP, NNTP, POP3, HTTP, COM (pe Windows) și multe altele. Puteți de asemenea să deschideți socket-uri de rețea "crude" și să interacționați utilizând orice alt protocol. PHP susține WDDX – schimbul de date complexe între aproape toate limbajele de programare web. Vorbind despre interconectare, PHP susține instanțierea obiectelor Java și utilizarea lor transparentă ca obiecte PHP.

PHP posedă facilități de procesare a textului foarte utile, care includ expresii regulare compatibile cu Perl (PCRE) și multe extensii și instrumente pentru accesarea și interpretarea documentelor XML. PHP standardizează toate extensiile XML pe baza solidă a bibliotecii libxml2 și extinde setul de facilități adăugând susținerea SimpleXML, XMLReader și XMLWriter.

Există multe alte extensii interesante aranjate atât în ordine alfabetică cât și după categorii. De asemenea există extensii PECL suplimentare care pot fi, sau pot să nu fie documentate în cadrul manualului PHP, cum ar fi» XDebug (Manual PHP).

3.2.2 Variabilele

Ca în orice limbaj, și în PHP variabilele sunt folosite pentru a stoca date și a le face accesibile în timpul execuției scriptului care le conțin.

În PHP, variabilele încep cu simbolul dolar, $, urmat de numele variabilei. Numele trebuie să înceapă cu o literă sau cu o liniuță de subliniere urmate de oricâte litere, cifre sau liniuțe de subliniere.

Variabilelor li se pot atribui atât valori numerice, cât și șiruri de caractere (text).

Table 3-8

3.2.3 Tipuri de date

In PHP, in functie de valorile primite, variabilele au un anumit tip de date:

Boolean – stochează valorile adevarat/fals

Integer sau INT- stochează numere intregi

Float – stochează numere reale

String – stochează valori de tip text

Array – stochează matrice

Object – stochează obiecte de programare

Resource– stochează o anumită resursă de date

NULL – stochează o valoare nulă .

3.2.4 Operatori

Majoritatea operatorilor din PHP sunt deja cunoscuți din JavaScript sau din C++. Se vor prezenta operatorii pe tipuri, precum și particularitățile acestora specifie limbajului PHP.

3.2.4.1 Operatori matematici

Operatorii matematici sunt aceiași cu cei din C++, și anume:

Table 3-9

3.2.4.2 Operatori de atribuire

Operatorii de atribuire în PHP sunt:

=, +=, -=, *=, /=, %=, .= (concatenare de șiruri), &=, |=, ^=, <<=, >>=

Operatorul de atribuire principal este operatorul egal (=), care atribuie o valoare unei variabile. Se poate atribui aceeași valoare mai multor variabile, de exemlu $x=$y=$z=10.

Mai există operatori de atribuire combinați pentru, toate operațiile aritmetice și pentru operații cu șiruri de caractere. Acești operatori efectuează operația indicată în stânga semnului egal asupra unei variabile și îi atribuie, apoi, noua valoare, putând combina două operații, atribuirea și operația, într-una singură.

3.2.4.3 Operatori de incrementare si decrementare

Acești operatori sunt des folosiți în instrucțiunile de ciclere. Operatorul de incrementare este ++ și execută incrementarea valorii unei variabile, prin adăugarea unei unități. Operatorul de decrementare este – și execută decrementarea valorii unei variabile, prin scăderea unei unități. Operatorii pot fi folosiți prefix sau sufix. Dacă se folosesc operatorii prefix, de exemplu ++$x, valoarea variabilei $x este incrementată și apoi folosită în instrucțiuni, iar dacă se folosesc operatorii sufix, de exemplu, $y–, întâi este folosită variabila în instrucțiune și apoi este decrementată.

3.2.4.5 Operatori de comparare

Acești operatori permit să comparăm două valori și sunt des întâlniți în instrucțiunile de decizie if. După efectuarea unei operații cu un astfel de operator, se obține o valoare true sau false.

Table 3-10

3.2.4.6 Operatori pentru siruri de caractere

Există doar doi operatori pentru șiruri de caractere, și anume :

– Operatorul e concatenare șiruri, punctul ”.”

– Operatorul de concatenare și atribuire, ”.=” (prezentat la operatorii de atribuire)

3.2.4.7 Operatori logici

Operatorii logici sunt dați în tabelul de mai jos. Există câte doi operatori logici pentru ȘI, SAU și SAU exclusiv, dar cu priorități diferite.

Table 3-11

3.2.4.8Operatori pe biți

PHP, ca și JavaScript, include operatori care lucrează cu biții unui număr întreg. Lucru cu astfel de operatori presupune o bună experiență în programare, motiv pentru care nu vor fi tratați în acestă carte.

3.2.5 Instructiuni

În PHP ca și în alte limbaje, există trei mari categorii de instrucțiuni:

instrucțiuni expresie

instrucțiuni de decizie: if, if…else și switch

instrucțiuni repetitive: for, while și do…while.

3.2.5.1 Instructiuni de decizie

Instrucțiunile de decizie se folosesc atunci când trebuie să luăm o deczie în funcție de date.

Instrucțiunea IF are mai multe forme (ca în majoritatea limbajelor de nivel înalt).

3.2.5.2 Instrucțiunea IF simplă

Instrucțiunea IF simplă execută o anumită instrucțiune (poate fi și un grup de instrucțiuni) atunci când o condiție este îndeplinită.

Table 3-12

În cazul în care trebuie executate mai multe instrucțiuni dacă condiția este adevărată, grupul de instrucțiuni va fi inclus între acolade, {}, sau între : și endif.

3.2.5.3 Instrucțiunea IF …ELSE

Instrucțiunea IF ..ELSE ne ajută să luăm o decizie, în cazul în care condiția din instrucțiunea IF simplă nu este adevărată.

3.2.5.4 Instrucțiunea IF … ELSEIF

Instrucțiunea IF poate fi folosită imbricată, în cazul în care avem mai multe condiții de testat asupra datelor.

3.2.5.5 Instrucțiunea compusă SWITCH

Instrucțiunea switch este utilizată în cazul în care avem mai multe condiții de testat.

Instrucțiunea switch funcționează astfel: se evaluează “expresie”. Dacă aceasta are o valoare egală cu cea a expi, atunci se execută secvența instructiunii și se trece la instrucțiunea care urmează după swich, altfel se execută secvența instructiunin+1. Parantezele drepte, [], au un caracter opțional, adică alternativa default este opțională. Dacă unei instrucțiuni dorim să-i corespundă mai multe valori, atunci se trece instrucțiunea la ultima valoare dorită a expi și se omite instrucțiunea de salt break.

3.2.5.6 Instrucțiunea compusă SWITCH

Instrucțiunea switch este utilizată în cazul în care avem mai multe condiții de testat.

Instrucțiunea switch funcționează astfel: se evaluează “expresie”. Dacă aceasta are o valoare egală cu cea a expi, atunci se execută secvența instructiunii și se trece la instrucțiunea care urmează după swich, altfel se execută secvența instructiunin+1. Parantezele drepte, [], au un caracter opțional, adică alternativa default este opțională. Dacă unei instrucțiuni dorim să-i corespundă mai multe valori, atunci se trece instrucțiunea la ultima valoare dorită a expi și se omite instrucțiunea de salt break.

3.2.5.7 Instrucțiunea FOR

Cea mai cunoscută instrucțiune repetitivă este instrucțiunea FOR, care execută o instrucțiune sau o instrucțiune compuse în mod repetat de un număr de ori.

Table 3-13

3.2.5.8 Instrucțiunea WHILE

Instrucțiunea de ciclare WHILE execută o instrucțiune repetat atât timp cât o condiție este adevărată.

Table 3-14

3.2.5.9 Instrucțiunea DO..WHILE

Instrucțiunea repetitivă do…while execută o instrucțiune până când o condiție este adevărată.

Table 3-15

3.3 Baze de date

Baza de date este un ansamblu structurat de date coerente, fără redondanță inutilă, astfel încât acestea pot fi prelucrate eficient de mai mulți utilizatori într-un mod concurent.

Baza de date este o colecție de date persistente, care sunt folosite de către sistemele de aplicații ale unei anumite „întreprinderi “. Datele din baza de date persistă deoarece, după ce au fost acceptate de către sistemul de gestiune pentru introducerea în baza de date, ele pot fi șterse din bază numai printr-o cerere explicită adresată sistemului de gestiune.

Aici, termenul de „întreprindere “este un cuvânt generic, utilizat pentru a desemna orice organizație independentă, de natură tehnică, comercială, științifică sau de alt tip. Întreprinderea poate fi, de exemplu, un spital, o bancă, o facultate, o fabrică, un aeroport etc. Fiecare întreprindere are regulile proprii de funcționare și conține o mulțime de date referitoare la modul său de operare.

Datele din baza de date pot fi atât integrate, cât și partajate. Noțiunea de integrat se referă la faptul că baza de date poate fi considerată ca o unificare a mai multor fișiere, iar prin partajare se înțelege că baza de date poate fi partajată concurent între diferiți utilizatori.

Un sistem de gestiune a bazelor de date (SGBD – sau DBMS Data Base Management System) este un produs software care asigură interacțiunea cu o bază de date, permițând definirea, consultarea și actualizarea datelor din baza de date. Toate cererile de acces la baza de date sunt tratate și controlate de către SGBD. Organizarea datelor în baze de date constituie o formă de centralizare a acestora. Aceasta implică existența unui administrator al bazei de date (DBA – Data Base Administrator) care este o persoană sau un grup de persoane ce răspund de ansamblul activităților (analiză, proiectare, implementare, exploatare, întreținere etc.) legate de baza de date.

Noțiuni generale

3.3.1 SQL

SQL (Structured Query Language) este în prezent, unul din cele mai puternice limbaje structurate pentru interogarea bazelor de date relaționale. Este un limbaj neprocedural și declarativ, deoarece utilizatorul descrie ce date vrea să obțină, fără a fi nevoie să stabilească modalitățile de a ajunge la datele respective. Nu poate fi considerat un limbaj de programare sau unul de sistem, ci mai degrabă face parte din categoria limbajelor de aplicații, fiind orientat pe mulțimi. Foarte frecvent, este utilizat în administrarea bazelor de date client/server, aplicația client fiind cea care generează instrucțiunile SQL. Lansat inițial de IBM. Standardizat prima dată de ANSI, apoi ISO. Actualmente, ISO 92. Pentru că există o standardizare a limbajului SQL, multe SGBD (Oracle, Access, Sybase) recunosc principalele instrucțiuni ale acestuia (Curs Baze de date).

3.3.1.1 Caracteristisci generale

În funcție de tipul acțiunii pe care o realizează, instrucțiunile SQL se împart în mai multe categorii. Datorită importanței pe care o au comenzile componente, unele dintre aceste categorii sunt evidențiate ca limbaje în cadrul SQL, și anume:

limbajul de definire a datelor (LDD);

limbajul de interogare a datelor (LQD);

limbajul de prelucrare a datelor (LMD);

limbajul de control al datelor (LCD).

Pe lângă comenzile care alcătuiesc aceste limbaje, SQL cuprinde:

instrucțiuni pentru controlul sesiunii;

instrucțiuni pentru controlul sistemului;

instrucțiuni SQL încapsulate.

3.3.1.2 Limbajul de prelucrare a datelor

SQL furnizează comenzi ce permit consultarea (SELECT) și actualizarea (INSERT, UPDATE, DELETE, MERGE) conținutului bazei de date. Aceste comenzi definesc limbajul de prelucrare a datelor (LMD).

Comenzile limbajului LMD pot fi:

formulate direct, utilizând interfața SQL*PLUS sau alt utilitar;

utilizate în utilitare ale sistemului ORACLE;

încapsulate într-un program PL/SQL;

încapsulate într-un program scris în limbaj gazdă.

3.3.1.3 Setul de comenzi SQL

SELECT-este comanda cea mai utilizată; este folosită pentru obținerea datelor din bazele de date.

INSERT-aceste trei comenzi sunt utilizate pentru a introduce noi.

UPDATE-rinduri, pentru a schimba rândurile existente și ștergerea.

DELETE-rindurilor nedorite din tabelele bazelor de date respective. (Ele sunt cunoscute în ansamblu ca DML sau comenzi ale limbajului de manipulare a datelor.).

CREATE-aceste trei comenzi sunt utilizate dinamic pentru a crea.

ALTER-utiliza și șterge orice structură de date, de exemplu, tabele.

DROP-expuneri ,indecsi.(Ele sunt cunoscute sub numele colectiv DDL sau comenzi ale limbajelor de definire a datelor).

GRANT-aceste doua comenzi sunt utilizate pentru a da sau a lua

REVOKE-drepturile de acces pentru bazele de date si structurile din Oracle.

3.3.1.4 Operatorii

Operatorii si conditiile sunt utilizate pentru a efectua operatii, cum ar fi adunarea si scaderea, sau comparatii ale datelor individuale într-o instructiune SQL. Operatorii sunt reprezentati de un singur caracter sau de cuvinte rezervate.

O conditie este o expresie compusa din mai multi operatori sau expresii care prin evaluare dau rezultatul True, False sau Unknown.

Exista doua tipuri de operatori: binari si unari. Operatorii unari opereaza asupra unui singur operand. Operatorii binari opereaza asupra a doi operanzi.

Operatorii pot fi:  aritmetici, caracter, de comparatie, logici, pe multimi si alte tipuri.

Operatori aritmetici

Operatorii aritmetici sunt utilizati în expresii SQL pentru adunarea, scaderea, înmultirea, împartirea si negarea valorilor datelor. Rezultatul acestor expresii este o valoare numerica.

Table 3-16

Operatori caracter

Sirurile de caractere sunt manipulate cu operatori caracter. Cel mai comun operator caracter este operatorul de concatenare „||“.

Operatori de comparatie

Operatorii de comparatie sunt folositi pentru compararea unei expresii cu alta expresie. Rezultatul comparatiei este True, False sau Unknown.

Table 3-17

Operatori logici

Un operator logic este utilizat pentru a produce un singur rezultat prin combinarea a doua conditii distincte.

Table 3-18

3.3.2 MySql

MySQL este un sistem de gestiune a bazelor de date relațional, produs de compania suedeză MySQL AB și distribuit sub Licența Publică Generală GNU. Este cel mai popular SGBD open-source la ora actuală, fiind o componentă cheie a stivei LAMP (Linux, Apache, MySQL, PHP).

Deși este folosit foarte des împreună cu limbajul de programare PHP, cu MySQL se pot construi aplicații în orice limbaj major. Există multe scheme API disponibile pentru MySQL ce permit scrierea aplicațiilor în numeroase limbaje de programare pentru accesarea bazelor de date MySQL, cum are fi: C, C++, C#, Borland Delphi, Java, Perl, PHP, Python, FreeBasic, etc., fiecare dintre acestea folosind un tip spefic API. O interfață de tip ODBC denumită MyODBC permite altor limbaje de programare ce folosesc această interfață, să interacționeze cu bazele de date MySQL cum ar fi ASP sau Visual Basic. În sprijinul acestor limbaje de programare, unele companii produc componente de tip COM/COM+ sau.NET (pentru Windows) prin intermediul cărora respetivele limbaje să poată folosi acest SGBD mult mai ușor decât prin intermediul sistemului ODBC. Aceste componente pot fi gratuite (ca de exemplu MyVBQL) sau comerciale.

MySQL este componentă integrată a platformelor LAMP sau WAMP (Linux/Windows-Apache-MySQL-PHP/Perl/Python). Popularitatea sa ca aplicație web este strâns legată de cea a PHP-ului care este adesea combinat cu MySQL și denumit Duo-ul Dinamic. În multe cărți de specialitate este precizat faptul că MySQL este mult mai ușor de învățat și folosit decât multe din aplicațiile de gestiune a bazelor de date, ca exemplu comnda de ieșire fiind una simplă și evidentă: „exit” sau „quit”.

Pentru a administra bazele de date MySQL se poate folosi modul linie de comandă sau prin descărcare de pe internet o interfață grafică a acestui mod: MySQL Administrator și MySQL Query Browser. Un alt instrumenmt de management al acestor baze de date este aplicația gratuită, scrisă în PHP, phpMyAdmin.

MySQL poate fi rulat pe multe dintre platformele software existențe: AIX, FreeBSD, GNU/Linux, Mac OS X, NetBSD, Solaris, SunOS, Windows 9x/NT/2000/XP/Vista. (Webfactor)

3.4 CSS

CSS este un limbaj (style language) care definește "layout-ul" pentru documentele HTML. CSS acoperă culori, font-uri, margini (borders), linii, înălțime, lățime, imagini de fundal, poziții avansate și multe alte opțiuni. (CSS)

3.5 JavaScript

Este un limbaj de programare care face posibil ca paginile web să fie mai interactive. Este mai des recunoscut ca făcând parte din categoria "Scripting Languages". A fost lansat sub numele de "LiveScript", schimbarea numelui în JavaScript fiind o chestie legată de strategia de marketing.
        Scripturile Javascript sunt introduse în pagina HTML și sunt interpretate și executate de browser. Javascript poate fi considerat o unealtă foarte bună dacă doriți să controlați conținutul paginilor în funcție de dată, ora, sistemul de operare sau browserul utilizatorilor, să faceți site-uri interactive, care să comunice cu vizitatorii, site-uri dinamice, să validați datele primite din formulare, dar nu numai atât, acestea fiind doar câteva din posibilitățile pe care le oferă acest limbaj. (JavaScript)

Capitolul 4

Specificațiile aplicației

4.1 Structura bazei de date

În ultimii ani, dezvoltarea sistemelor de baze de date reprezintă unul dintre cele mai importante aspecte în domeniul tehnologiei informației, având un impact decisiv asupra modului de organizare și funcționare a numeroaselor instituții și servicii. Acestea sunt companiile de comunicație, întreprinderile de comerț, serviciile bancare, serviciile de transport, asigurările, universitățile etc. Acestea sunt dependente de funcționarea corectă și neîntreruptă a sistemelor de baze de date.

Sistemele de baze de date sunt o componentă importantă a vieții de zi cu zi în societatea modernă. Zilnic, majoritatea persoanelor desfășoară activități care implică interacțiunea cu o bază de date: depunerea sau extragerea unei sume de bani din bancă, rezervarea biletelor de tren sau de avion, căutarea unei cărți într-o bibliotecă computerizată, gestiunea angajaților dintr-o firmă, cumpărarea unor produse etc.

Bazele de date pot avea mărimi (număr de înregistrări) și complexități extrem de variate, de la câteva zeci de înregistrări (de exemplu, baza de date pentru o agendă de telefon a unei persoane) sau pot ajunge la milioane de înregistrări (de exemplu, baza de date pentru cărțile dintr-o bibliotecă, baza de date cu stocarea angajaților unei firme sau baza de date unde se păstrează informații despre situația studenților etc).

În acesasta aplicație, pentru stocarea datelor într-o baza de date am folosit un program numit XAMPP. Acest program este un pachet de programe free software, open source și cross-platform web server, care constă în Apache HTTP Server, MySQL database și interpretoare pentru scripturile scrise în limbajele de programare PHP și Perl.

Acest program este lansat sub termenii licenței GNU și acționează ca un web server capabil de a servi pagini dinamice. XAMPP este disponibil pentru Microsoft Windows, Linux, Solaris, și Mac OS X, și este utilizat în principal pentru dezvoltarea proiectelor web. Acest software este util pentru crearea paginilor dinamice, utilizând limbaje de programare ca PHP, JSP, Servlets. (wikipedia)

XAMPP (https://www.apachefriends.org/download.html), după instalare, pentru a putea face serverul să devină funcțional, trebuie să lansăm în execuție câteva aplicații care sunt esențiale oentru testarea site-urilor: Apache și MySql.

Pentru lansarea aplicațiilor se va apăsa Start din dreptul lor. Aceasta aplicație va rula până în momentul în care decidem să o oprim prin apăsarea butonului Stop.

4.2 Crearea bazei de date

Crearea bazei de date folosită la această aplicație a fost făcută cu ajutorului programului XAMPP folosind phpMyAdmin.

PhpMyAdmin folosește ca browser Internet Explorer. Pentru lansarea phpMyAdmin trebuie să ne asigurăm că aplicațiile Apache și MySql rulează. Al doilea pas este acel de a tastă în bară de căutare din browser adresa http://localhost/phpmyadmin/.

Acest link ne va trimite spre pagina de autentificare al site-ului unde va trebui să inserăm numele de utilizator și parola.

Crearea unei baze de date se face in aceasta fereastra.

După crearea unei baze de date phpMyAdmin cu numele mașini toate tabelele și comenzile pe care le vom face, se vor adresa în mod direct acesteia.

În partea din dreapta a paginii, vom avea toate baele noastre de date iar la următoarea autentificare în phpMyAdmin vom alege baza noastră de date cu numele mașini..

Crearea unui tabel se face prin funcția Creare Tabel în care vom defini numele tabelului, în cazul meu Agera RS și prin alegerea numărului de coloane de care avem nevoie.

Tabelul Agera RS va avea 8 coloane și se va intoduce numele fiecăreia și tipul acesteia.

Câmpurile acestui tabel sunt ID (INT-valoare întreagă), Cylinder capacity (VARCHAR-lungime maximă de 50 de caractere), Power Output (VARCHAR-lungime maximă de 50 de caractere), Max. Torque (VARCHAR-lungime maximă de 50 de caractere), Top speed (VARCHAR-lungime maximă de 50 de caractere), 0-100 km/h (VARCHAR-lungime maximă de 50 de caractere), Gearbox (VARCHAR-lungime maximă de 50 de caractere), CO2-EMISSION Combined (VARCHAR-lungime maximă de 50 de caractere).

Câmpul ID este Cheie Primară. Cheia primară este câmpul său combinația de mai multe câmpuri dintr-o tabelă, care permite identificarea unică a fiecărei înregistrări din acea tabelă. O cheie primară nu poate avea valoarea NULL.O tabelă poate avea o singură cheie primară. (techit)

Crearea tabelului se face prin apăsarea butonului Save iar phpMyAdmin va trimite comandă către MySql.

Inserea datelor în tabelul creat se face prin comanda Inserare care se află în partea de sus a paginii.

În tabelul Agera RS am completat câmpurile cu datele de care aveam nevoie.

În prima pagină a aplicației sunt prezentate cele mai noi informații. În partea stâng sus avem logo-ul site-ului. Sub logo avem meniul, pentru fiecare buton din meniu avem și un submeniu. În prima pagină este folosit un script care schimbă automat sau manual imaginea.

În prima pagină este folosit un script care schimbă automat sau manual imaginea.

În meniul Models utilizatorul poate observa patru dintre cele mai importante mașini existente la ora actuală pe piața: Lamborghini, Păgâni, Bugatti și Koenigsegg. Fiecare marcă are și câteva modele. Dacă utilizatorul intra în acest meniu, este întâmpinat cu o pagină foarte primitoare care este ușor de utilizat.

În partea dreaptă se poate observa o imagine cu modelul de mașină ales iar în partea stângă avem cele patru mărci de mașină cu cele mai importante modele.

În acest exemplu am ales un model dintre cele prezentate mai sus. Am ales modelul Bugatti Veyron. La fel ca și în prima pagină, avem un script care schimbă imaginile iar peste fiecare imagine este prezentată o scurtă descriere despre modelul ales.

În pagina Heritage suntem întâmpinați de mesajul WELCOME TO SANT'AGATA BOLOGNESE. În această pagină este prezentat o istorie al firmei Lamborghini, de la început până în prezent.

La fel ca și în pagina Models în dreapta avem o imagine cu mașinile prezentate și în stânga un meniu în care este prezentată câte o perioadă de timp în care a fost fabricat acel model.

Spre exemplu dacă utilizatorul alege 1963-1964, este întâmpinat de o imagine cu un model fabricat între anii 1963-1964 dar și o scurtă istorie despre acest model.

Pagina Mastepiece prezintacele mai importante modele din toate timpurile al firmei Lamborghini. Aceste modele sunt Gallardo, Murcielago, Diablo, Veneno, Reventon.

Alegem să prezentăm modelul Gallardo care este cel mai bine vândut model.

În această aplicație am folosit un script care schimbă imaginile autom at la un intreval ales de mine. Aceste imagini au și o scurtă descriere dar și un link spre pagina principală.

Introducerea scriptului se face în secțiunea HEAD al aplicației.

Am ales cele mai importante patru imagini pentru pe pagina principală pentru o scurtă descriere și un link spre pagina principală pentru prezentarea mai multor detalii.

Imaginile se schimbă automat după 4 secunde sau manual prin folosirea mouse-ului. Acest lucru a fost implementat în linia de cod al scriptului.

Aceste linii de cod ne ajută la schimbarea imaginilor la numărul de secunde stabilite dar și atribuie ficarei imagini un link spre pagina respectivă. În acest script ste folosită o matrice care conține link-urile din imagini spre paginile pe care le descrie pe scurt.

În liniile de cod de mai sus am folosit funcția style pentru a poziționa imaginea după cum să arate bine.

Aceste imagini sunt redimensionate manual de mine în programul Paint prin folosirea comenzii resize.

Acest script este preluat de pe internet și era folosit pentru prezentarea unor imagini cu diferite feluri de mâncare dar l-am modificat astefl încât să îmi fie de ajutor și să incrementez un timer care să îmi schimbe imaginile automat după o anumită perioadă de timp aleasă de mine și am reușit să pun acest script în aplicația mea astfel încât să funcționeze perfect și să mă ajute la ceea ce doream să realizez. Menționez că acest script este free și nu deține drepturi de autor.

Template-ul folosit

În această aplicație am folosit un template pentru toate paginile. Este un template inserat în HEAD-ul ficarei pagini.

Un template conține Header, partea de Body și Footer.

Crearea unui tempalate este primul pas în crearea unei pagini web. Pentru crearea unui template nu este o muncă grea dar este o muncă meticuloasă care ține și de atenție dar și de stil de a „desena” un șablon care să fie folosit pe paginile aplicației create.

În liniile de cod care le voi prezenta mai jos arată cum a fost făcut meniu drop-down din site-u meu. Primul lucru pentru crearea unui meniu este crearea unui „bloc” care să îl conțină. În momentul când ajungi cu cursourl mouse-ului pe un buton, acesta deschide un submeniu.

În acest template este inclus și logo-ul paginii care se află în partea din sus și dreapta a paginii. Acesta se află în meniul Header.

CONCLUZII

Importanța internetului în zilele noastre este deja cunoscută și este utilizat în așa fel încât să ușureze munca fiecăruia dintre noi. Este mult mai ușor să cauți informații pe internet decât să mergi până la un magazin să cumperi o revistă sau să mergi până la bibliotecă să cauți o carte și după aia să o răsfoiești până găsești informația căutată.

La baza aplicației descrisă mai sus stau mai multe limbaje de programare din ce în ce mai folosite cum ar fi HTML, CSS, PHP, MySql s.a. Un avantaj al acestor programe dar mai ales al PHP este acela că este gratuit și că poate fi folosit de către orice persoană cu cunoștințe minime sau care nu deține cunostinde în domeniul de programare web dar care este dornic să învețe.

După cum spuneam, lumea este în continuă dezvoltare, zi de zi apar noi programe software și tehnologii din ce în ce mai avansate care vor face din această lume, o lume computerizată iar limbajul PHP va fi mereu în frunte și va fi utilizat pentru crearea paginilor web.

Posibilitatea de dezvoltare a aplicației

La fel ca orice aplicație creată vreodată, aceata aplicație nu este una finală. Este prima versiune și are nevoie de imbunatari adăugând noi facilități. Câteva idei de îmbunătățire ar putea fi:

în meniu ar putea să mai fie un buton care să ne ducă pe o altă pagină unde să găsim două tabele. În fiecare din aceste tabele să alegem un model de mașină și să facem o comparație între ele în funcție de cai putere, capacitate cilindrică, top speed etc.

această aplicație să conțină mai multe mașini și mai accesibile, să fie inclus și prețul lor.

În aplicație ar putea apărea inclusiv videoclipuri pentru fiecare mașină cu un test-drive și cu recenzii făcute de către cumpărătorii care au achizitioat deja acel model.

În partea de Footer ar putea să apară un meniu cu site-urile de socializare în care să poată fi apreciată pagina sau site-ul.

Acetea sunt doar câteva idei despre cum ar putea fi îmbunătățită această aplicație dar cu siguranță vor apărea mai multe în cea de a doua versiune.

Similar Posts