Aplicatie Web

APLICATIE WEB:

INCHIRIERE AUTOTURISME

Cuprins

1.Introducere

2.Tehnologii folosite

2.1.HTML

2.2.CSS

2.3. JAVASCRIPT

2.4.PHP

2.5.MySQL

3.Prezentarea aplicatiei

1. Introducere

2. Tehnologii folosite

Pentru acesta aplicație am folosit limbajul HTML pentru crearea interfeței de lucru și afișarea interogarilor, limbajul CSS si JavaScript pentru realizarea design-ului și aranjarea diferitelor obiecte ce urmeaza a fi afișate, limbajul PHP pentru a crea legatura intre aplicație și baza de date, și nu in ultimul rând sistemul de baze de date MySQL pentru un control mult mai eficient al aplicației.

2.1. Limbajul HTML

HTML(Hyper Text Mark-up Language) este codul care stă la baza paginilor web, precum și modul în care un document este văzut într-un browser . Acest limbaj a fost dezvoltat inițial de Tim Berners-Lee la CERN in 1989, in pincipiu, fiind vazut ca o metoda mult mai rapida de transmitere a datelor(documentelor) între persoanele ce utilizează diferite computere. Paginile web(HTML) sunt formate din etichete sau tag-uri și au extensia .html sau .htm. În marea lor majoritate aceste etichete sunt pereche, una de deschidere <eticheta> și alta de închidere </eticheta>, mai există și cazuri în care nu se închid, atunci se folosește <eticheta />, browserul interpretează aceste etichete afișând rezultatul pe ecran. HTML-ul nu este un limbaj case sensitiv (nu face deosebirea între litere mici și mari).

HTML este o formă de marcare orientată către prezentarea documentelor text pe o singura pagină, utilizând un software de redare specializat, numit agent utilizator HTML, cel mai bun exemplu de astfel de software fiind browserul web. HTML furnizează mijloacele prin care conținutul unui document poate fi adnotat cu diverse tipuri de metadate și indicații de redare. Indicațiile de redare pot varia de la decorațiuni minore ale textului, cum ar fi specificarea faptului că un anumit cuvânt trebuie subliniat sau că o imagine trebuie introdusă, până la scripturi sofisticate, hărți de imagini și formulare. Metadatele pot include informații despre titlul și autorul documentului, informații structurale despre cum este împărțit documentul în diferite segmente, paragrafe, liste, titluri etc. și informații cruciale care permit ca documentul să poată fi legat de alte documente pentru a forma astfel link-urile.

Proprietatile acestui limbaj:

Independența de platforma: o pagina web va fi afișata la fel pe diferite tipuri de computere;

Hipertext: orice element al pagini web(imagine, fraza, cuvânt, etc.) poate fi lgatură(link) catre altă pagina web.

2.2. Limbajul CSS

Cascading Style Sheets (CSS) este o metode de design web ce formatează conținutul unei pagini web conform unui stil de prezentare specificat de autor. Este mai avantajos să utilizăm acest limbaj, pentru formatarea unei pagini web, decat să folosim comenzile din HTML, ce pot îngreuna întelegerea codului și pot necesita mai mult timp de lucru. Permite manipularea aspectului unui Website fără a afecta structura HTML. CSS separă conținutul documentului, de modul in care este prezentat, permițând o mai buna tranziție intre diferitele tipuri de browser-re. Ofera, de asemenea, și un control mai precis asupra spațierii, alinierii și poziționarii de conținut, fara a se baza pe folosirea tabelelor și a cadrelor. Stilul, culoarea și dimensiunea fontului sunt, de asemenea, mult mai usor de ales cu ajutorul limbajului CSS.

Obiective:

Controlarea aspectului unui site web prin crearea foilor de stil;

Putem oferi tuturor paginilor ce aparțin unui Website același stil, folosind aceeași foaie de stil;

Folosirea atributului clasa(class) pentru a aplica același stil mai multor obiecte;

Putem specifica precis fontul, culoarea, dimensiunea și alte proprietăți, unui text ce trebuie afisat;

Specificarea elementelor de fundal si culoare;

Înțelegerea și controlarea marginilor, bordurilor si padding-ului;

Utilizarea foilor de stil pentru a separa prezentarea de conținut.

2.3. Limbajul JavaScript

Originea:

Limbajul JavaScript a fost lansat in anul 1995 de către Netscape și Sun Microsystem. Cu toate acestea, JavaScript nu este același lucru ca și Java.

Ce este JavaScript:

Este un limbaj de programare;

Este un limbaj interpretat;

Este bazat pe programarea obiectelor;

Este susținut si utilizat pe scara larga;

Este accesibil pentru începatori.

Utilizări:

Este folosit pentru adăugarea elementelor multimedia:

Cu JavaScript putem afișa, ascunde, schimba, redimensiona imagini si crearea de rollover image. Poate fi creat text ce defilează pe bara de stare.

Crearea paginilor dinamice:

Bazat pe alegerile utilizatorului, datele scrise sau alte date externe, JavaScript poate produce pagini ce sunt personalizate dupa utilizator.

Interacționarea cu utilizatorul:

Când un utilizator trimite(submit) un formular, acest limbaj procesează datele, iar apoi le validează. Verifică să nu se fi introdus date eronate sau să se fi lasat câmpuri vide.

Scrierea in JavaScript:

Codul JavaScript este încorporat în HTML, pentru a fi interpretat si rulat de browser. Trebuie să ținem cont de anumite sfaturi când scriem comenzi în JavaScript:

Acest limbaj este case sinsitive;

Spațiile goale dintre cuvinte si tag-uri sunt ignorate;

Sfârșiturile de linie sunt ignorate, cu excepția celor aflate într-o declarație;

Declarațiile din JavaScript se termina cu punct si virgula( ; ).

Tagul SCRIPT:

Acest tag avertizează un browser că în codul HTML se găsesc și instrucțiuni din limbajul JavaScript.

<SCRIPT limbaj = “JavaScript”>

Declaratie

</SCRIPT>

2.4. Limbajul PHP

PHP (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, insă poate fi integrat și în HTML. Codul PHP este interpretat pe serverul WEB și generează un cod HTML care va fi vazut de Uilizator(browser) fiindu-i transmis numai cod interpretat ca si HTML. PHP a fost conceput in anul 1994 si a fost initial munca unui singur om, Rasmus Lerdorf.

PHP este axat în principal pe scripting de partea server-ului, deci puteți realiza cu el orice poate realiza un alt program CGI(Common Gateway Interface), cum ar fi colectarea datelor din forme, generarea conținutului dinamic al paginilor sau trimiterea și primirea cookies. Dar PHP poate face mult mai multe.

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.

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. 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ă, 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.

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 incredibil de simplă, utilizând una din extensiile de lucru cu baze de date (de ex. pentru mysql).

Sistemul de baze de date MySQL

Mysql este un sistem de gestiune a bazelor de date, foarte rapid si robust. O baza de date vă permite să stocați, să căutați, să sortați și să vă regăsiți datele in mod eficient. Serverul MySQL controlează accesul la datele dumneavoastră pentru a garanta că mai mulți utilizatori pot

lucra simultan cu acestea. Deci, MySQL este un server multi-user (mai mulți utilizatori) si multi-thread (mai multe fire de execuție).

Utilizează SQL (Structured Query Language), limbajul standard de interogare a bazelor de date din intreaga lume. MySQL este disponibil in mod public din 1996, dar istoria dezvoltării sale incepe in 1979.

O bază de date este o colectie structurata de date. Aceasta poate gestiona orice, de la o listă simplă de cumpărături la o galerie de artă sau mari cantități de informații dintr-o mare corporație. Pentru a adăuga, accesa și prelucra datele dintr-o bază de date, ai nevoie de un sistem de management al bazelor de date cum ar fi MySQL server. Deoarece cu ajutorul computerelor gestionăm cantități mari de date, sistemele de management de baze de date constituie un rol important, ca și utilizare independentă sau ca parte ale altor aplicații.

Bazele de date MySQL sunt relaționale, stochează datele in tabele separate, structurile de baze de date sunt organizate în dosare fizice optimizate pentru viteză. Modelul logic, cu obiecte, cum ar fi baza de date, tabelele, vizualizările, rândurile și coloanele, oferă un mediu de programare flexibil. Pot fi configurate norme ce reglementează relațiile dintre câmpuri de date diferite, cum ar fi unu-la-unu, unu-la-mai-mulți, unic, necesar sau optimal, precum și indicii dintre diferite tabele. Baza de date impune aceste reguli, deoarece, cu o bază de date bine proiectată, aplicația nu va fi niciodata în contradicție, duplicat sau sa aibă lipsă de date.

Serverul de baze de date MySQL este rapid, fiabil, scalabil și ușor de utilizat. Poate rula confortabil pe un desktop sau laptop, alături de alte aplicații, servere de web, care necesită puțin atenție. Pentru a rula, pe un computer, doar un sistem de management al bazelor de date putem ajusta setările ce țin de memoria RAM, puterea procesorului și capacitatea de intrare/iesire, pentru o mai bună și mai rapidă funcționare a acestuia.

Software-ul de date MySQL este un sistem client / server alcătuit dintr-un SQL server multi-threaded(mai multe fire de execuție) care acceptă diferite backend-uri, mai multe programe client diferite și biblioteci, instrumente administrative, precum și o gamă largă de interfețe de programare a aplicațiilor.

3.Prezentarea aplicatieidate, ai nevoie de un sistem de management al bazelor de date cum ar fi MySQL server. Deoarece cu ajutorul computerelor gestionăm cantități mari de date, sistemele de management de baze de date constituie un rol important, ca și utilizare independentă sau ca parte ale altor aplicații.

Bazele de date MySQL sunt relaționale, stochează datele in tabele separate, structurile de baze de date sunt organizate în dosare fizice optimizate pentru viteză. Modelul logic, cu obiecte, cum ar fi baza de date, tabelele, vizualizările, rândurile și coloanele, oferă un mediu de programare flexibil. Pot fi configurate norme ce reglementează relațiile dintre câmpuri de date diferite, cum ar fi unu-la-unu, unu-la-mai-mulți, unic, necesar sau optimal, precum și indicii dintre diferite tabele. Baza de date impune aceste reguli, deoarece, cu o bază de date bine proiectată, aplicația nu va fi niciodata în contradicție, duplicat sau sa aibă lipsă de date.

Serverul de baze de date MySQL este rapid, fiabil, scalabil și ușor de utilizat. Poate rula confortabil pe un desktop sau laptop, alături de alte aplicații, servere de web, care necesită puțin atenție. Pentru a rula, pe un computer, doar un sistem de management al bazelor de date putem ajusta setările ce țin de memoria RAM, puterea procesorului și capacitatea de intrare/iesire, pentru o mai bună și mai rapidă funcționare a acestuia.

Software-ul de date MySQL este un sistem client / server alcătuit dintr-un SQL server multi-threaded(mai multe fire de execuție) care acceptă diferite backend-uri, mai multe programe client diferite și biblioteci, instrumente administrative, precum și o gamă largă de interfețe de programare a aplicațiilor.

3.Prezentarea aplicatiei

=== Lucrare finala ===

APLICATIE WEB:

INCHIRIERE AUTOTURISME

Cuprins

1.Introducere………………………………………………………………………………………………………..4

2.Tehnologii folosite……………………………………………………………………………………………..6

2.1. HTML………………………………………………………………………………………………6

2.2. CSS………………………………………………………………………………………………….7

2.3. JAVASCRIPT…………………………………………………………………………………..8

2.4. PHP………………………………………………………………………………………………….9

2.5. MySQL…………………………………………………………………………………………..10

3.Prezentarea aplicației………………………………………………………………………………………..12

3.1. Interfața de lucru……………………………………………………………………………..12

3.2. Formulare……………………………………………………………………………………….32

3.3. Tabele…………………………………………………………………………………………….44

4. Stocarea datelor………………………………………………………………………………………………51

Prezentarea Server-ului…………………………………………………………………………51

Crearea bazei de date…………………………………………………………………………..52

1.Introducere

Motivul care a stat la baza alegerii mele în ceea ce privește această aplicație a fost faptul că am dorit să aprofundez tehnologiile în ceea ce privește website-urile și aplicațiile web.

Referitor la tema aleasă pentru aplicație, am simțit nevoia să o construiesc pe aceasta, întrucât reprezintă una dintre cele mai căutate necesitați, dar neaccesibile, deoarece potențialii clienți nu sunt îndeajuns de informații referitor la existența acestor genuri de aplicații. În acest sens, am considerat că este folositoare o astfel de aplicație.

Pe parcursul evoluției omului, acesta a început să aibă mai multe nevoi personale, implicit nevoia de a dispune, în orice moment, de un autovehicul cu care să se deplaseze rapid, comod și eficient. Însa evoluția presupune și crearea de facilități pentru a avea acces la ea, de aceea am venit în ajutorul persoanelor ce au domiciliul într-un anumit oraș și sunt nevoiți, datorită locului de muncă sau chiar a plăcerii de a vizita anumite locuri, să dispună de un autovehicul pentru deplasare.

Aplicația ce urmează a fi prezentată se adresează mai multor categorii de utilizatori. În primul rând, este extrem de folositoare pentru cei care dețin o firmă de închirieri de automobile, întrucât au un control asupra clienților și asupra comenzilor active de autovehicule. În al doilea rând, aplicația ar putea fi dezvoltată și pentru utilizarea ei online, adică aceasta are potențial de a deveni un website informativ, cu scopul de a îndruma potențialii clienți în alegerea unui automobil.

Astfel, aceasta se poate adresa persoanelor care consideră că o calatorie cu autovehiculul personal ar putea fi prea costisitoare sau străinilor care doresc să viziteze țara noastră și aleg o altă modaliatate de a călători, dar care nu sunt încântați de faptul că, în momentul ajungerii lor la destinație, nu dispun de un mijloc de transport personal, cu scopul de a le facilita nevoia să ajungă într-o anumită locație(conferinte, atractii turistice, etc.) , într-un timp scurt.

În aceste momente, cea mai eficientă soluție este o agenție de închirieri autoturisme, motiv pentru care am creat această aplicație, ajutând firmele în domeniu să gestioneze mai rapid și mai eficient parcul auto(numarul de mașini, precum și modelele pe care acestea le dețin).

Lucrarea ce urmează a fi prezentată se structurează în patru capitole, și anume Introducerea, Tehnologiile folosite, Prezentarea aplicației și Stocarea datelor.

La rândul lor, aceste capitole se împart în subcapitole, pentru o mai bună vizualizare și înțelegere a lucrării.

Capitolul 1, Introducerea, se ocupă cu includerea globală în cadrul ideilor cuprinse în lucrare.

Capitolul 2, Tehnologiile folosite, este format din:

Supcapitolul limbajul HTML, care ajută la realizarea interfeței de lucru și la afișarea interogărilor, fiind codul prin care se creează paginile web și reprezentând modul prin care documentele sunt vizualizate într-un browser.

Supcapitolul limbajul CSS are ca întrebuințare principală design-ul paginilor web. Spre deosebire de HTML, acest tip de limbaj are drept avantaj formatarea unui grup de obiecte, folosind o singură comandă.

Subcapitolul limbajul JavaScript este utilizat pentru adăugarea elementelor dinamice, realizează paginile ce pot fi personalizate după utilizator, fiind accesibil începatorilor, întrucât este folosit pe scară largă.

Supcapitolul limbajul PHP are rolul de a crea legătura dintre paginile web și baza de date cu care lucrează aplicația și poate fi încorporat într-un cod HTML. Cu ajutorul acestuia, putem insera date în baza de date și realiza interogări

Ultimul subcapitol, numindu-se Sistemul de baze de date MySQL este un sistem de gestiune al bazelor de date, permițându-ne să stocăm, să căutăm și să sortăm datele ce se găsesc la un moment dat în baza de date.

Capitolul 3 este format din Prezentarea interfeței de lucru, a Formularelor și a Tabelelor de interogare. Interfața de lucru este realizată prin utilizarea tehnologiilor prezentate mai sus. Cu ajutorul acesteia, interacționăm cu întreaga aplicație, reprezentând una dintre cele mai importante părți ale acesteia. Prin intermediul interfeței de lucru avem acces și la formulare, cu ajutorul cărora putem introduce noi date în baza de date actuală, și la tabelele ce reprezintă interogările pe care le generăm pentru a vizualiza informațiile mai vechi din baza de date.

Capitolul 4, Stocarea datelor, este compus din supcapitolele Prezentarea server-ului și Crearea bazei de date. În primul subcapitol, prezint în mod succint server-ul local folosit, fiind utilizat pentru a testa aplicațiile web. În ceea ce privește subcapitolul 2, se prezintă crearea unui tabel într-o bază de date, precum și structura acestuia.

2. Tehnologii folosite

Pentru această aplicație, am folosit limbajul HTML pentru crearea interfeței de lucru și afișarea interogărilor, limbajul CSS și JavaScript pentru realizarea design-ului și aranjarea diferitelor obiecte ce urmează a fi afișate, limbajul PHP pentru a crea legatura între aplicație și baza de date și, nu în ultimul rând , sistemul de baze de date MySQL pentru un control mult mai eficient al aplicației.

2.1. Limbajul HTML

HTML(Hyper Text Mark-up Language) este codul care stă la baza paginilor web, precum și modul în care un document este văzut într-un browser . Acest limbaj a fost dezvoltat inițial de Tim Berners-Lee la CERN în 1989, în principiu, fiind văzut ca o metodă mult mai rapidă de transmitere a datelor(documentelor) între persoanele ce utilizează diferite computere. Paginile web(HTML) sunt formate din etichete sau tag-uri și au extensia .html sau .htm. De obicei, aceste etichete sunt pereche, una de deschidere <tag> și alta de închidere </tag>, însă există și cazuri în care nu se închid, când se folosește eticheta<tag/>, browserul interpretând aceste etichete și afișând rezultatul pe ecran. HTML-ul nu este un limbaj case sensitiv (nu face deosebirea între litere mici și mari).

HTML este o formă de marcare orientată către prezentarea documentelor text pe o singură pagină, utilizând un software de redare specializat, numit agent utilizator HTML, cel mai bun exemplu de astfel de software fiind browserul web. HTML furnizează mijloacele prin care conținutul unui document poate fi adnotat cu diverse tipuri de metadate și indicații de redare. Indicațiile de redare pot varia de la decorațiuni minore ale textului, cum ar fi specificarea faptului că un anumit cuvânt trebuie subliniat sau că o imagine trebuie introdusă, până la scripturi sofisticate, hărți de imagini și formulare. Metadatele pot include informații despre titlul și autorul documentului, informații structurale despre cum este împărțit documentul în diferite segmente, paragrafe, liste, titluri etc. și informații cruciale care permit ca documentul să poată fi legat de alte documente pentru a forma astfel link-urile.

Proprietațile acestui limbaj:

Independența de platformă: o pagină web va fi afișată la fel pe diferite tipuri de computere;

Hipertext: orice element al paginii web(imagine, frază, cuvânt, etc.) poate fi legatură(link) către altă pagină web.

2.2. Limbajul CSS

Cascading Style Sheets (CSS) este o metodă de design web ce formatează conținutul unei pagini web conform unui stil de prezentare specificat de autor. Este mai avantajos să utilizăm acest limbaj, pentru formatarea unei pagini web, decât să folosim comenzile din HTML, ce pot îngreuna înțelegerea codului și pot necesita mai mult timp de lucru. Permite manipularea aspectului unui Website fără a afecta structura HTML. CSS separă conținutul documentului, de modul în care este prezentat, permițând o mai buna tranziție între diferitele tipuri de browser-re. Oferă, de asemenea, un control precis asupra spațierii, alinierii și poziționării de conținut, fără a se baza pe folosirea tabelelor și a cadrelor. Stilul, culoarea și dimensiunea fontului sunt, de asemenea, mult mai ușor de ales cu ajutorul limbajului CSS.

Obiective:

Controlarea aspectului unui site web prin crearea foilor de stil;

Putem oferi tuturor paginilor ce aparțin unui Website același design, folosind aceeași foaie de stil;

Folosirea atributului clasă(class) pentru a aplica același stil mai multor obiecte;

Putem specifica precis fontul, culoarea, dimensiunea și alte proprietăți ale unui text ce trebuie afișat;

Specificarea elementelor de fundal și de culoare;

Înțelegerea și controlarea marginilor, bordurilor și padding-ului;

Utilizarea foilor de stil pentru a separa prezentarea de conținut.

2.3. Limbajul JavaScript

Originea:

Limbajul JavaScript a fost lansat în anul 1995 de către Netscape și Sun Microsystem. Cu toate acestea, JavaScript nu este același lucru ca și Java.

Ce este JavaScript:

Este un limbaj de programare;

Este un limbaj interpretat;

Este bazat pe programarea obiectelor;

Este susținut și utilizat pe scară largă;

Este accesibil pentru începători.

Utilizări:

Este folosit pentru adăugarea elementelor multimedia: Cu JavaScript putem afișa, ascunde, schimba, redimensiona imagini și crea rollover image. Poate fi creat text ce defilează pe bara de stare.

Crearea paginilor dinamice: Bazat pe alegerile utilizatorului, datele scrise sau alte date externe, JavaScript poate produce pagini ce sunt personalizate după utilizator.

Interacționarea cu utilizatorul: Când un utilizator trimite(submit) un formular, acest limbaj procesează datele, iar apoi le validează. Verifică să nu se fi introdus date eronate sau să se fi lasat câmpuri vide.

Scrierea în JavaScript:

Codul JavaScript este încorporat în HTML, pentru a fi interpretat și rulat de browser. Trebuie să ținem cont de anumite sfaturi când scriem comenzi în JavaScript:

Acest limbaj este case sensitive;

Spațiile goale dintre cuvinte și tag-uri sunt ignorate;

Sfârșiturile de linie sunt ignorate, cu excepția celor aflate într-o declarație;

Declarațiile din JavaScript se termină cu punct și cu virgulă( ; ).

Tagul SCRIPT: Acest tag avertizează un browser că în codul HTML se găsesc și instrucțiuni din limbajul JavaScript.

<SCRIPT limbaj = “JavaScript”>

Declarație

</SCRIPT>

2.4. Limbajul PHP

PHP (PHP: Hypertext Preprocessor) este un limbaj de scripting de uz general, cu cod-sursă deschis (open source), utilizat pe scară largă, care este potrivit în special pentru dezvoltarea aplicațiilor web, însă poate fi integrat și în HTML. Codul PHP este interpretat pe serverul WEB și generează un cod HTML care va fi văzut de Utilizator(browser) fiindu-i transmis numai cod interpretat ca și HTML. PHP a fost conceput în anul 1994 și a fost inițial munca unui singur om, Rasmus Lerdorf.

PHP este axat în principal pe scripting de partea server-ului, deci puteți realiza cu el orice poate realiza un alt program CGI(Common Gateway Interface), cum ar fi colectarea datelor din forme, generarea conținutului dinamic al paginilor sau trimiterea și primirea de cookies. Dar PHP poate face mult mai multe.

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.

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. 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ă, dar în cazul în care 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.

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 incredibil de simplă, utilizând una din extensiile de lucru cu baze de date (de ex. pentru mysql).

2.5. Sistemul de baze de date MySQL

Mysql este un sistem de gestiune al bazelor de date, foarte rapid și robust. O bază de date vă permite să stocați, să căutați, să sortați și să vă regăsiți datele în mod eficient. Serverul MySQL controlează accesul la datele dumneavoastră pentru a garanta că mai mulți utilizatori pot lucra simultan cu acestea. Deci, MySQL este un server multi-user (mai mulți utilizatori) si multi-thread (mai multe fire de execuție).

Utilizează SQL (Structured Query Language), limbajul standard de interogare al bazelor de date din întreaga lume. MySQL este disponibil în mod public din 1996, dar istoria dezvoltării sale începe în 1979.

O bază de date este o colecție structurată de date. Aceasta poate gestiona orice, de la o listă simplă de cumpărături până la o galerie de artă, sau mari cantități de informații dintr-o mare corporație. Pentru a adăuga, accesa și prelucra datele dintr-o bază de date, ai nevoie de un sistem de management al bazelor de date cum ar fi MySQL server. Deoarece cu ajutorul computerelor gestionăm cantități mari de date, sistemele de management de baze de date constituie un rol important, ca și utilizare independentă sau ca parte ale altor aplicații.

Bazele de date MySQL sunt relaționale, stochează datele în tabele separate, structurile de baze de date sunt organizate în dosare fizice optimizate pentru viteză. Modelul logic, cu obiecte, cum ar fi baza de date, tabelele, vizualizările, rândurile și coloanele, oferă un mediu de programare flexibil.

Pot fi configurate norme ce reglementează relațiile dintre câmpuri de date diferite, cum ar fi unu-la-unu, unu-la-mai-mulți, unic, necesar sau optimal, precum și indicii dintre diferite tabele. Baza de date impune aceste reguli, deoarece, cu o bază de date bine proiectată, aplicația nu va fi niciodata în contradicție, duplicată sau să aibă lipsă de date.

Serverul de baze de date MySQL este rapid, fiabil, scalabil și ușor de utilizat. Poate rula confortabil pe un desktop sau laptop, alături de alte aplicații, servere de web, care necesită puțină atenție. Pentru a rula pe un computer doar un sistem de management al bazelor de date, putem ajusta setările ce țin de memoria RAM, puterea procesorului și capacitatea de intrare/ieșire, pentru o mai bună și mai rapidă funcționare a acestuia.

Software-ul de date MySQL este un sistem client/server alcătuit dintr-un SQL server multi-threaded(mai multe fire de execuție) care acceptă diferite backend-uri, mai multe programe client diferite și biblioteci, instrumente administrative, precum și o gamă largă de interfețe de programare a aplicațiilor.

3. Prezentarea aplicației

3.1. Prezentarea interfeței de lucru

Am creat această aplicație cu ajutorul unui server local (Wamp Server), fișierul rent.php reprezentând sursa aplicației, iar pentru deschiderea acesteia scriem în bara de adrese a unui browser comanda http://localhost/licenta/rent.php.

Serverul va trimite browser-ului datele aflate în fișierul de bază, rent.php, implicit ne va afișa prima pagină a aplicației(fig. 3.1.1). Totodată, pentru a ține evidența clienților și a comenzilor făcute, aceasta lucrează în paralel cu un sistem de baze de date MySQL și a unui server local(Wampserver), legătura dintre cele două fiind posibilă datorită folosirii limbajului PHP.

Această primă pagină este concepută să fie ușor de utilizat de către administrator. Prin intermediul ei, administratorul îi poate prezenta unui potențial client mașinile deținute, precum și alte detalii referitoare la preț, motorizare și clasă din care face parte autoturismul.

Am construit această pagină cu ajutorul etichetelor din limbajul HTML, designe-ul fiind prelucrat mult mai simplu și rapid folosind instrucțiunile din limbajul CSS.

În continuare voi prezenta codul(HTML) ce a fost folosit la crearea paginii principale (fig. 3.1.1):

<html><head> <title> Rent </title>

-prin această comandă se face legătura către foaia de stil scrisă în CSS.

<link rel="stylesheet" type="text/css" href="rentc.css">

-prin această comandă se face legătura catre un scripturile scrise in JavaScript.

<script type="text/javascript" src="javascript.js"></script>

</head>

<body>

<div id="container">

<div id="header">

<div id="titlu">

<span id="title"> Inchirieri autoturisme </span>

</div>

<div id="button">

<a href="inregistrare.php"><div class="buton1">

<span class="b"> Adaugare client </span></div></a>

<a href="comanda.php"><div class="buton">

<span class="b"> Preluare comanda </span></div></a>

<a href="comenzi.php"><div class="buton">

<span class="b"> Rezervari </span></div></a>

<a href="clienti.php"><div class="buton">

<span class="b"> Clienti </span></div></a>

</div>

</div>

<div id="body">

<div id="stanga">

<div id="box">

<ul>

<li><a href="#Chevrolet Spark">Chevrolet Spark</a></li>

<li><a href="#Hyundai i10">Hyundai i10</a></li>

<li><a href="#Kia Picanto">Kia Picanto</a></li>

<li><a href="#Dacia Sandero">Dacia Sandero</a></li>

<li><a href="#Renault Symbol">Renault Symbol</a></li>

<li><a href="#Ford Fiesta">Ford Fiesta</a></li>

<li><a href="#Renault Megane CC">Renault Megane CC</a></li>

<li><a href="#Dacia Logan 1.4">Dacia Logan 1.4</a></li>

<li><a href="#Dacia Logan 1.6">Dacia Logan 1.6</a></li>

<li><a href="#Renault Megane">Renault Megane</a></li>

<li><a href="#Skoda Octavia">Skoda Octavia</a></li>

<li><a href="#Seat Leon">Seat Leon</a></li>

<li><a href="#Opel Insignia">Opel Insignia</a></li>

<li><a href="#Renault Trafic">Renault Trafic</a></li>

<li><a href="#Dacia Logan MCV">Dacia Logan MCV</a></li>

<li><a href="#Chevrolet Lacetti">Chevrolet Lacetti</a></li>

<li><a href="#Renault Megane Estate">Renault Megane Estate</a></li>

<li><a href="#Dacia Lodgy(7 locuri)">Dacia Lodgy(7 locuri)</a></li>

<li><a href="#Ford Transit">Ford Transit</a></li>

<li><a href="#Dacia Duster">Dacia Duster</a></li>

<li><a href="#Chevrolet Captiva">Chevrolet Captiva</a></li>

</ul>

</div>

</div>

<div id="centru">

<div class="pack">

<h4><a name="Chevrolet Spark"> Chevrolet Spark</h4>

<div><a href="detalii-chevrolet-spark.html">

<img class="img" src="chevrolet-spark.jpg"></a>

<p class="txt">Incepand de la 13 euro/zi</p>

<p class="txt">Benzina | Motor: 1.0 | Mini</p></div>

</div>

<div class="pack">

<h4><a name="Hyundai i10"> Hyundai i10</h4> <div><a href="detalii-hyundai-i10.html">

<img class="img" src="hyundai-i10.jpg" ></a>

<p class="txt">Incepand de la 15 euro/zi </p>

<p class="txt">Benzina | Motor: 1.1 | Mini </p></div>

</div>

<div class="pack">

<h4><a name="Kia Picanto"> Kia Picanto </h4>

<div><a href="detalii-kia-picanto.html">

<img class="img" src="kia-picanto.jpg" ></a>

<p class="txt">Incepand de la 23 euro/zi </p>

<p class="txt">Diesel | Motor: 1.1 | Mini </p></div>

</div>

<div class="pack">

<h4><a name="Dacia Sandero"> Dacia Sandero</h4>

<div><a href="detalii-dacia-sandero.html"> <img class="img" src="dacia-sandero.jpg" ></a>

<p class="txt">Incepand de la 17 euro/zi</p>

<p class="txt">Benzina | Motor: 1.2 | Medie</p></div>

</div>

<div class="pack">

<h4><a name="Renault Symbol">Renault Symbol</h4>

<div><a href="detalii-renault-symbol.html">

<img class="img" src="renault-symbol-1.5.jpg" ></a>

<p class="txt">Incepand de la 19 euro/zi</p>

<p class="txt">Diesel | Motor: 1.5 | Medie</p></div>

</div>

<div class="pack">

<h4><a name="Ford Fiesta">Ford Fiesta</h4>

<div> <a href="detalii-ford-fiesta.html">

<img class="img" src="ford-fiesta.jpg"></a>

<p class="txt">Incepand de la 21 euro/zi</p>

<p class="txt">Benzina | Motor: 1.2 | Medie</p></div>

</div>

<div class="pack">

<h4><a name="Renault Megane CC">Renault Megane CC</h4>

<div> <a href="detalii-renault-megane-cc.html"> <img class="img" src="renault-megane-cc.jpg"></a>

<p class="txt">Incepand de la 59 euro/zi</p>

<p class="txt">Benzina | Motor: 2.0 | Cabrio</p></div>

</div>

<div class="pack">

<h4><a name="Dacia Logan 1.4">Dacia Logan 1.4</h4>

<div> <a href="detalii-dacia-logan-1.4.html">

<img class="img" src="dacia-logan-1.4.jpg"></a>

<p class="txt">Incepand de la 17 euro/zi</p>

<p class="txt">Benzina | Motor: 1.4 | Economy</p> </div>

</div>

<div class="pack">

<h4><a name="Dacia Logan 1.6"> Dacia Logan 1.6</h4>

<div> <a href="detalii-dacia-logan-1.6.html">

<img class="img" src="dacia-logan-1.6.jpg"></a>

<p class="txt">Incepand de la 20 euro/zi</p> <p class="txt">Benzina | Motor: 1.6 | Economy</p> </div>

</div>

<div class="pack">

<h4><a name="Renault Megane"> Renault Megane</h4>

<div> <a href="detalii-renault-megane.html"> <img class="img" src="renault-megane-sedan.jpg"></a>

<p class="txt">Incepand de la 17 euro/zi</p> <p class="txt">Benzina | Motor: 1.4 | Economy</p></div>

</div>

<div class="pack">

<h4><a name="Skoda Octavia"> Skoda Octavia</h4>

<div> <a href="detalii-skoda-octavia.html">

<img class="img" src="skoda-octavia.jpg"></a>

<p class="txt">Incepand de la 23 euro/zi</p>

<p class="txt">Benzina | Motor: 1.6 | Sedan</p></div>

</div>

<div class="pack">

<h4><a name="Seat Leon"> Seat Leon</h4>

<div> <a href="detalii-seat-leon.html">

<img class="img" src="seat-leon.jpg"></a>

<p class="txt">Incepand de la 35 euro/zi</p> <p class="txt">Diesel | Motor: 1.9 | Seda</p></div>

</div>

<div class="pack">

<h4><a name="Opel Insignia">Opel Insignia</h4>

<div> <a href="detalii-opel-insignia.html">

<img class="img" src="opel-insignia.jpg"></a>

<p class="txt">Incepand de la 45 euro/zi</p> <p class="txt">Diesel | Motor: 2.0 | Sedan</p></div>

</div>

<div class="pack">

<h4><a name="Renault Trafic">Renault Trafic</h4>

<div> <a href="detalii-renault-trafic.html">

<img class="img" src="renault-trafic.jpg"></a>

<p class="txt">Incepand de la 49 euro/zi</p>

<p class="txt">Diesel | Motor: 1.9 | Minibus</p></div>

</div>

<div class="pack">

<h4><a name="Dacia Logan MCV">Dacia Logan MCV</h4>

<div> <a href="detalii-dacia-logan-mcv.html">

<img class="img" src="dacia-logan-mcv.jpg"></a>

<p class="txt">Incepand de la 29 euro/zi</p> <p class="txt">Benzina | Motor: 1.6 | Break/SW</p></div>

</div>

<div class="pack">

<h4><a name="Chevrolet Lacetti">Chevrolet Lacetti</h4>

<div> <a href="detalii-chevrolet-lacetti.html">

<img class="img" src="chevrolet-lacetti.jpg"></a>

<p class="txt">Incepand de la 29 euro/zi</p> <p class="txt">Benzina | Motor: 1.6 | Break/SW</p></div>

</div>

<div class="pack">

<h4><a name="Renault Megane Estate">Renault Megane Estate</h4>

<div> <a href="detalii-renault-megane-estate.html">

<img class="img" src="renault-megane-estate.jpg"></a>

<p class="txt">Incepand de la 29 euro/zi</p> <p class="txt">Diesel | Motor: 1.9 | Break/SW</p></div>

</div>

<div class="pack">

<h4><a name="Dacia Lodgy(7 locuri)"> Dacia Lodgy(7 locuri)</h4>

<div> <a href="detalii-dacia-lodgy.html">

<img class="img" src="dacia-lodgy.jpg"></a>

<p class="txt">Incepand de la 35 euro/zi</p> <p class="txt">Benzina | Motor: 1.6 | Monovolum</p></div>

</div>

<div class="pack">

<h4><a name="Ford Transit">Ford Transit</h4>

<div> <a href="detalii-ford-transit.html">

<img class="img" src="ford-transit.jpg"></a>

<p class="txt">ncepand de la 35 euro/zi</p> <p class="txt">Diesel | Motor: 2.2 | Monovolum</p></div>

</div>

<div class="pack">

<h4><a name="Dacia Duster"> Dacia Duster</h4>

<div> <a href="detalii-dacia-duster.html">

<img class="img" src="dacia-duster.jpg"></a>

<p class="txt">Incepand de la 39 euro/zi </p> <p class="txt">Diesel | Motor: 1.5 | SUV 4×4</p>

</div>

</div>

<div class="pack">

<h4><a name="Chevrolet Captiva">Chevrolet Captiva</h4>

<div> <a href="detalii-chevrolet-captiva.html">

<img class="img" src="chevrolet-captiva.jpg"></a>

<p class="txt">Incepand de la 49 euro/zi</p> <p class="txt">Diesel | Motor: 2.0 | SUV 4×4</p>

</div>

</div>

</div>

</div>

</body>

</html>

Urmatorul cod este folosit pentru realizarea designe-ului paginii principale:

body{

margin:0;

padding:0;

background-color:#FFFFCC;

background-size:100% 100%;

background-repeat:no-repeat;

background-attachment:fixed;

}

#title{

font-family:'Aharoni';

font-size:50px;

color:#8A5C00;

margin-left:25%;

}

.img{

width:200px;

height:150px;

}

ul{

margin-top:50px;

list-style-type:none;

}

a{

color:#8A5C00;

text-decoration:none;

}

.txt{

color:#8A5C00;

}

#container{

width:950px;

margin:0 auto;

border-left-style:solid;

border-right-style:solid;

border-color:#FFF;

border-width:0px;

}

.pack{

float:left;

width:33%;

height:300px

}

#header{

width:100%;

height:150px;

border-bottom-style:solid;

border-width:0px;

border-color:#FFF;

padding-top:50px;

}

#titlu{

width:100%;

height:50%;

float:left;

}

#button{

width:100%;

height:50%;

float:left;

margin-top:50px;

}

#stanga{

width:20%;

float:left;

}

#tpr{

background-color:#647456;

height:50px;

}

#centru{

width:79%;

float:left;

margin-left:21%;

}

.buton1 , .buton{

width:20%;

background-color:#FFFFCC;

background-imageebkit-gradient(linear,left top, left bottom,from(#FFFFCC),(#B88A00));

background-imageebkit-linear-gradient(top, #FFFFCC, #B88A00);

background-image:-moz-linear-gradient(top, #FFFFCC, #B88A00);

background-image:-ms-linear-gradient(top, #FFFFCC, #B88A00);

background-image-linear-gradient(top, #FFFFCC, #B88A00);

background-image:linear-gradient(to bottom, #FFFFCC, #B88A00);

filter:progidXImageTransform.Microsoft.gradient(startColorstr='#FFFFCC',

endColorstr='#B88A00');

float:left;

height:50px;

text-align:center;

font-size:20px;

text-transform:uppercase; /*text-transform:lowercase / capitalize */

}

.buton1{

margin-left:9%;

}

.buton{

margin-left:0.5%;

}

.buton, .buton1{

margin-top:10px;

}

.buton:hover, .buton1:hover{

background-color:#B88A00;

background-imageebkit-gradient(linear, left top, left bottom, from(#B88A00),(#FFFFCC));

background-imageebkit-linear-gradient(top, #B88A00, #FFFFCC);

background-image:-moz-linear-gradient(top, #B88A00, #FFFFCC);

background-image:-ms-linear-gradient(top, #B88A00, #FFFFCC);

background-image-linear-gradient(top, #B88A00, #FFFFCC);

background-image:linear-gradient(to bottom, #B88A00, #FFFFCC);

filter:progidXImageTransform.Microsoft.gradient(startColorstr='#B88A00',

endColorstr='#FFFFCC');

}

.b{

color:#8A5C00;

}

#box {

position: absolute;

top:250px;

float:left;

}

Fig 3.1.1 Prima pagină a aplicației.

Datorită acestui limbaj, grupurile ce conțin numele, imaginea și scurtele informații despre autoturism(fig. 3.1.2), au putut fi formatate toate doar cu o singură instrucțiune, nemaifiind nevoie să îngreunăm codul HTML prin formatarea fiecărui text și fiecarei imagini separate.

Acest lucru duce la o mai bună și rapidă funcționare a site-ului, precum și la o mai ușoară înțelegere a codului. Cu ajutorul codului următor, pachetul de date din figura(fig. 3.1.2) este interpretat de browser.

<div class="pack">

<h4><a name="Chevrolet Spark"> Chevrolet Spark</h4>

<div><a href="detalii-chevrolet-spark.html">

<img class="img" src="chevrolet-spark.jpg"></a>

<p class="txt">Incepand de la 13 euro/zi</p>

<p class="txt">Benzina | Motor: 1.0 | Mini</p></div>

</div>

Fig. 3.1.2 Grupul ce conține detalii

succinte despre autoturism

După cum se poate observa(fig. 3.1.2) în această pagină se găsesc mașinile deținute în parcul auto, o imagine a fiecărui model, precum și tipul automobilului, tipul de carburant folosit, capacitatea cilindrică a motorului și prețul de pornire.

Pe această pagină se mai găsesc butoanele ce duc la diferite interogări ale bazei de date, tabelul cu clienții și datele de contact ale acestora și tabelul cu rezervările active, precum și la formularul de înregistrare a clienților și formularul de rezervare a unui automobil(fig. 3.1.3).

Prin codul următor sunt reprezentate butoanele din figura(fig 3.1.3):

<div id="button">

<a href="inregistrare.php"><div class="buton1">

<span class="b"> Adaugare client </span>

</div></a>

<a href="comanda.php"><div class="buton">

<span class="b"> Preluare comanda </span>

</div></a>

<a href="comenzi.php"><div class="buton">

<span class="b"> Rezervari </span>

</div></a>

<a href="clienti.php"><div class="buton">

<span class="b"> Clienti </span>

</div></a>

</div>

Fig. 3.1.3 Grupul de butoane

Pentru o navigare mai eficientă, lista din stânga paginii reprezintă o listă de ancore (fig. 3.1.4), către numele autoturismelor, pentru ca utilizatorul aplicației să nu fie nevoit să scroll-eze și astfel găsirea unui autovehicul să necesite mai mult timp. În acest mod, căutarea autovehiculelor se poate realiza într-un mod mult mai rapid.

Fig 3.1.4 Lista de ancore

Aceasta listă(fig. 3.1.4) este creată cu ajutorul limbajului HTML, prin setul următor de etichete:

<div id="box">

<ul>

<li><a href="#Chevrolet Spark">Chevrolet Spark</a></li>

<li><a href="#Hyundai i10">Hyundai i10</a></li>

<li><a href="#Kia Picanto">Kia Picanto</a></li>

<li><a href="#Dacia Sandero">Dacia Sandero</a></li>

<li><a href="#Renault Symbol">Renault Symbol</a></li>

<li><a href="#Ford Fiesta">Ford Fiesta</a></li>

<li><a href="#Renault Megane CC">Renault Megane CC</a></li>

<li><a href="#Dacia Logan 1.4">Dacia Logan 1.4</a></li>

<li><a href="#Dacia Logan 1.6">Dacia Logan 1.6</a></li>

<li><a href="#Renault Megane">Renault Megane</a></li>

<li><a href="#Skoda Octavia">Skoda Octavia</a></li>

<li><a href="#Seat Leon">Seat Leon</a></li>

<li><a href="#Opel Insignia">Opel Insignia</a></li>

<li><a href="#Renault Trafic">Renault Trafic</a></li>

<li><a href="#Dacia Logan MCV">Dacia Logan MCV</a></li>

<li><a href="#Chevrolet Lacetti">Chevrolet Lacetti</a></li>

<li><a href="#Renault Megane Estate">Renault Megane Estate</a></li>

<li><a href="#Dacia Lodgy(7 locuri)">Dacia Lodgy(7 locuri)</a></li>

<li><a href="#Ford Transit">Ford Transit</a></li>

<li><a href="#Dacia Duster">Dacia Duster</a></li>

<li><a href="#Chevrolet Captiva">Chevrolet Captiva</a></li>

</ul>

</div>

Pentru a vizualiza mai bine lista de mașini(fig 3.1.4), cu ajutorul comezilor de fixare ce aparțin limbajului JavaScript, aceasta este fixată, apărând la începutul paginii(fig.3.1), dar și în momentul în care cursorul se afla la mijlocul sau la sfarșitul paginii(fig. 3.1.5). În continuare v-om prezenta codul aferent acestei comenzi:

window.onload = function() {

function getScrollTop() {

if (typeof window.pageYOffset !== 'undefined' ) {

// Most browsers

return window.pageYOffset;

}

var d = document.documentElement;

if (d.clientHeight) {

return d.scrollTop;

}

return document.body.scrollTop;

}

window.onscroll = function() {

var box = document.getElementById('box'),

scroll = getScrollTop();

if (scroll <= 250) {

box.style.top = "250px";

}

else {

box.style.top = (scroll + 1) + "px";

}

};

};

Fig. 3.1.5 Lista de ancore fixată

Fiecare imagine(fig. 3.1.6) a unui autoturism este o legatură(link) către o altă pagină(fig. 3.1.7), ce conține mai multe date tehnice și detalii despre preț.

Fig. 3.1.6 Legătura(link-ul) către

detaliile autoturismului

Fig. 3.1.7 Pagina ce conține detalii amănunțite

despre autoturism

Designe-ul paginilor cu detaliile fiecarui autoturism(fig. 3.1.7) este, de asemenea, configurat cu clase(class) si id-uri(id), elemente ce aparțin limbajului CSS.

Atribuindu-i fiecarei pagini aceleași clase si id-uri, designe-ul a fost realizat doar cu o singură foaie de stil(style sheet), folosind astfel mai puțin spațiu de stocare și un cod mai simplu.

În continuare, am atașat codul foii de stil(style sheet) comun tuturor paginilor care dețin detalii despre autovehicule.

body{ margin:0; padding:0;

background-color:#FFFFCC; background-size:100% 100%;

background-repeat:no-repeat; background-attachment:fixed;}

a{color:#8A5C00; text-decoration:none;}

#container{width:950px; margin:0 auto; border-left-style:solid;

border-right-style:solid; border-color:#FFF; border-width:0px;}

ul{color:#8A5C00; padding-top:50px; list-style-type:none;}

#header{width:100%; height:125; border-bottom-style:solid;

border-width:0px; border-color:#FFF; padding-top:50px;}

#title{width:50%; height:100px; float:left;}

#titlu{font-family:'Aharoni'; font-size:35px; color:#8A5C00;

margin-left:30px; float:left; padding-top:25px;}

#butoane{width:50%;height:35px;

float:left; padding-top:90px;}

.buton{background-color:#FFFFCC; width:25%; text-align:center;

font-size:25px; text-transform: capitalize; margin-left:350px;}

.b{color:#000; color:#8A5C00;}

3.2 Formulare

Pentru adăugarea clienților și realizarea comenzilor am folosit formulare(fig 3.2.1, fig. 3.2.2). Propriu-zis, acestea au fost create folosind limbajul HTML, însă legătura dintre acestea și baza de date este făcută cu ajutorul limbajului PHP. Deoarece limbajul PHP poate fi integrat in limbajul HTML, comenzile de creare al formularului si cele de introducere a datelor în baza de date, au fost scrise în același fișier. Codul pentru formularul de înregistrare al clienților(fig.3.2.1) este următorul:

<?php

mysql_connect("localhost" , "root") or die(mysql_error());

mysql_select_db("licenta") or die(mysql_error());

if (isset($_POST['home'])) {

header("Location: rent.php");

}

if (isset($_POST['submit'])) {

if (!$_POST['nume'] | !$_POST['prenume'] |

!$_POST['cnp'] | !$_POST['domiciliu'] |

!$_POST['telefon'] | !$_POST['email']) {

die('You did not complete all of the required fields');

}

if (!get_magic_quotes_gpc()) {

$_POST['nume'] = addslashes($_POST['nume']);

$_POST['prenume'] = addslashes($_POST['prenume']);

$_POST['cnp'] = addslashes($_POST['cnp']);

$_POST['domiciliu'] = addslashes($_POST['domiciliu']);

$_POST['telefon'] = addslashes($_POST['telefon']);

$_POST['email'] = addslashes($_POST['email']);

}

$insert = "INSERT INTO clienti ( nume, prenume, cnp, domiciliu, telefon, email )

VALUES('".$_POST['nume']."','".$_POST['prenume']."',

'".$_POST['cnp']."','".$_POST['domiciliu']."',

'".$_POST['telefon']."','".$_POST['email']."' )";

$add_member = mysql_query($insert);

header("Location: rent.php");

}

else

{

?>

<link rel="stylesheet" type="text/css" href="formulare.css">

<body>

<div id="container">

<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">

<div id="title">

<h1 id="tit">Formular inregistrare clienti</h1>

</div>

<div id="tabel">

<table border="0">

<div id="tab">

<tr><td class="cell">Nume:</td>

<td><input type="text" name="nume" axlength="60"></td>

</tr>

<tr><td class="cell">Prenume:</td>

<td><input type="text" name="prenume" maxlength="60"></td>

</tr>

<tr><td class="cell">Cod numeric personal:</td>

<td><input type="text" name="cnp"maxlength="60"></td>

</tr>

<tr><td class="cell">Domiciliu:</td>

<td><input type="text" name="domiciliu" maxlength="60"></td>

/tr>

<tr><td class="cell">Numar de telefon:</td>

<td><input type="tel" name="telefon" maxlength="60"></td>

</tr>

<tr><td class="cell">Email:</td>

<td><input type="email" name="email" maxlength="60"></td>

</tr>

<tr><th colspan=2><input type="submit" name="submit"value="Register"></th>

</tr>

<tr><th colspan=2><input type="submit" name="home"value="Home"></th>

</tr>

</div>

</table>

</div>

</form>

</div>

</body>

<?php

}

?>

Codul pentru crearea formularului prin care sunt preluate comenzile este:

<?php

mysql_connect("localhost" , "root") or die(mysql_error());

mysql_select_db("licenta") or die(mysql_error());

if (isset($_POST['home'])) {

header("Location: rent.php");

}

if (isset($_POST['submit'])) {

if(!$_POST['nume'] | !$_POST['prenume'] | !$_POST['telefon'] |

!$_POST['preluare'] | !$_POST['predare'] | !$_POST['masina']) {

die('You did not complete all of the required fields');}

if (!get_magic_quotes_gpc()) {

$_POST['nume'] = addslashes($_POST['nume']);

$_POST['prenume'] = addslashes($_POST['prenume']);

$_POST['telefon'] = addslashes($_POST['telefon']);

$_POST['preluare'] = addslashes($_POST['preluare']);

$_POST['predare'] = addslashes($_POST['predare']);

$_POST['masina'] = addslashes($_POST['masina']);

}

$preluare = $_POST['preluare'];

$timestamp = strtotime($preluare);

$y2 = date("y", $timestamp);

$m2 = date("m", $timestamp);

$d2 = date("d", $timestamp);

$data2 = date("m-d", $timestamp);

$dd2=cal_days_in_month(CAL_GREGORIAN,$m2,$y2);

$predare = $_POST['predare'];

$timestamp = strtotime($predare);

$y1 = date("y", $timestamp);

$m1 = date("m", $timestamp);

$d1 = date("d", $timestamp);

$data1 = date("m-d", $timestamp); $dd1=cal_days_in_month(CAL_GREGORIAN,$m1,$y1);

$sysdate = date('m-d');

$sm = date('m');

$sd = date('d');

if($m2 < $m1){

$c2 = $dd2 – $d2;

$zz = $c2 + $d1;}

else if($m2 == $m1){

$zz = $d1 – $d2;}

if($zz >= '21')

{$masina = $_POST['masina'];

$select = mysql_query("SELECT * FROM cars WHERE masina = '$masina'");

while($rand = mysql_fetch_array($select)){

$p = $rand['>21'];}

}

else if($zz >='8' && $zz <='20')

{$masina = $_POST['masina'];

$select = mysql_query("SELECT * FROM cars WHERE masina = '$masina'");

while($rand = mysql_fetch_array($select)){

$p = $rand['8-20'];}

}

else if($zz >='4' && $zz <='7')

{$masina = $_POST['masina'];

$select = mysql_query("SELECT * FROM cars WHERE masina = '$masina'");

while($rand = mysql_fetch_array($select)){

$p = $rand['4-7'];}

}

else if($zz <='3')

{$masina = $_POST['masina'];

$select = mysql_query("SELECT * FROM cars WHERE masina = '$masina'");

while($rand = mysql_fetch_array($select)){

$p = $rand['<3'];}

}

if ($_POST['navigatie'] == "Da")

{ $n = 25;}

else $n = 0;

if ($_POST['scaun'] == "Da")

{ $s = 10; }

else $s = 0;

$pret = $zz * $p + $n + $s;

$masina = $_POST['masina'];

$select = mysql_query("SELECT * FROM cars WHERE masina = '$masina'");

while($rand = mysql_fetch_array($select)){

$cantitate = $rand['cantitate'] – 1;}

$sql = "UPDATE `cars` SET `cantitate`='$cant' WHERE `masina`='$masina'";

if (!mysql_query($sql)) {

// echo 'Eroare : '. mysql_errno(). ' – '. mysql_error();}

else {

// echo 'Datele au fost modificate';}

if($data2 < $data1 and $data2 >= $sysdate ){

$insert = "INSERT INTO comenzi ( nume, prenume, telefon, preluare,

predare, masina, navigatie, scaun, pret )

VALUES('".$_POST['nume']."','".$_POST['prenume']."',

'".$_POST['telefon']."','".$_POST['preluare']."',

'".$_POST['predare']."','".$_POST['masina']."',

'".$_POST['navigatie']."','".$_POST['scaun']."','".$pret."')";

$add_member = mysql_query($insert);

}

else die('date incorecte');

header("Location: rent.php");

}

else

{

?>

<link rel="stylesheet" type="text/css" href="formulare.css">

<body>

<div id="container">

<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">

<div id="title">

<h1 id="tit">Formular preluare comanda</h1>

</div>

<div id="tabel">

<table border="0">

<div id="tab">

<tr><td class="cell">Nume:</td><td>

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

</td></tr>

<tr><td class="cell">Prenume:</td><td>

<input type="text" name="prenume" maxlength="50">

</td></tr>

<tr><td class="cell">Numar de telefon:</td><td>

<input type="tel" name="telefon" maxlength="50">

</td></tr>

<tr><td class="cell">Data preluarii:</td><td>

<input type="date" name="preluare" maxlength="50">

</td></tr>

<tr><td class="cell">Data predarii:</td><td>

<input type="date" name="predare" maxlength="50">

</td></tr>

<tr><td class="cell">Model masina:</td><td>

<input type="text" list="masina" name="masina" >

<datalist id="masina" >

<option> Chevrolet Spark

<option> Hyundai i10

<option> Kia Picanto

<option> Dacia Sandero

<option> Renault Symbol

<option> Ford Fiesta

<option> Renault Megane CC

<option> Dacia Logan 1.4

<option> Dacia Logan 1.6

<option> Renault Megane

<option> Skoda Octavia

<option> Seat Leon

<option> Opel Insignia

<option> Renault Trafic

<option> Dacia Logan MCV

<option> Chevrolet Lacetti

<option> Renault M Estate

<option> Dacia Lodgy(7 Loc.)

<option> Ford Transit

<option> Dacia Duster

<option> Chevrolet Captiva

</datalist>

</td></tr>

<tr><td class="cell">Navigatie GPS:</td>

<td><input type="radio" name="navigatie" value="Da" id="navigatie">Da

<input type="radio" name="navigatie" value="Nu" id="navigatie">Nu</td>

<tr><td class="cell">Scaun copil:</td>

<td><input type="radio" name="scaun" value="Da" id="scaun">Da

<input type="radio" name="scaun" value="Nu" id="scaun">Nu</td>

<tr><th colspan=2><input type="submit" name="submit"

value="Register"></th></tr>

<tr><th colspan=2><input type="submit" name="home"

value="Home"></th></tr>

</div>

</table>

</div>

</form>

</div>

<?php

}

?>

Fig. 3.2.1 Formular de înregistrare clienți

Acest formular conține trei elemente majore:

Câmpurile: unde se vor introduce datele necesare(nume, prenume, cod numeric personal, domiciliul, număr de telefon, adresa de e-mail);

Butonul „Register”: după ce s-au completat câmpurile, prin apăsarea acestuia, se verifică daca există câmpuri goale, caz în care se afișează mesajul „You did not complete all of the required fields”, în cazul în care toate câmpurile sunt completate datele care se găsesc în câmpuri se adaugă într-un anumit tabel al bazei de date;

Butonul „Home”: trimite utilizatorul la pagina principală(fig 3.2.1), în cazul în care clientul dorește să mai consulte ofertele.

Elementele prezentate mai sus sunt conținute și de formularul pentru preluarea comenzilor(fig 3.3.2), în schimb acesta diferă prin folosirea butoanele radio, deoarece sunt doar două valori din care se face alegerea și trebuie aleasă cel puțin o valoare, iar altă diferență este că în acest formular se introduc date diferite față de formularul precedent(data preluării, data predării, modelul mașinii, precum și alegerea dintre cele două valori ale butoanelor radio).

Fig 3.2.2 Formular preluare comandă

Etapele de construcție:

Se conectează pagina la server, în cazul acesta serverul local WampServer:

mysql_connect("localhost" , "root") or die(mysql_error());

Se conectează pagina la baza de date:

mysql_select_db("licenta") or die(mysql_error());

Verifică dacă toate campurile conțin text:

if (!$_POST['nume'] | !$_POST['prenume'] | !$_POST['cnp']

| !$_POST['domiciliu'] | !$_POST['telefon'] | !$_POST['email']) {

În cazul în care unul sau mai multe câmpuri sunt goale, afișează mesajul:

die('You did not complete all of the required fields');}

La final, dacă toate câmpurile conțin text, datele din acestea sunt introduse în baza de date prin urmatoarea comandă:

$insert = "INSERT INTO clienti (nume, prenume, cnp,

domiciliu, telefon, email )

VALUES('".$_POST['nume']."','".$_POST['prenume']."','".$_POST['cnp']."',

'".$_POST['domiciliu']."', '".$_POST['telefon']."',

'".$_POST['email']."' )";

$add_member = mysql_query($insert);

Designe-ul formularelor (fig. 3.2.1 si fig. 3.2.2) a fost, de asemenea, realizat cu ajutorul limbajului CSS, folosindu-se aceeași foaie de stil. Codul conținut de aceasta este următorul:

body{

margin:0;

padding:0;

background-color:#FFFFCC;

background-size:100% 100%;

background-repeat:no-repeat;

background-attachment:fixed;

}

#container{

width:1000px;

margin:0 auto;

border-left-style:solid;

border-right-style:solid;

border-color:#FFF;

border-width:0px;

}

#title{

width:90%;

height:10%;

margin-left:5%;

}

#tit{

color:#8A5C00;

margin-top:10%;

margin-left:15%;

}

#tabel{

width:40%;

height:90%;

margin-left:23%;

}

#tab{

margin-top:10%;

}

.cell{

color:#8A5C00;

}

3.3 Tabele de interogare

Tabelele sunt create cu ajutorul HTML-ului, în ele se găsesc datele aflate în tabelele din baza de date. Aceste comenzi se numesc interogări sunt specifice sistemului de gestionare a bazelor de date, MySQL și sunt realizate cu ajutorul limbajului PHP.

Etapele unei interogări:

Fișierul ce conține codul se conectează la serverul local „mysql_connect("localhost","root") or die(mysql_error());” iar apoi la baza de date prin comanda „mysql_select_db("licenta") or die(mysql_error());”

Dupa conectare, se face „select-ul” specific sistemelor de gestiune al bazelor de date, acesta selectează toate câmpurile tabelului din baza de date;

Datele selectate sunt introduse și afișate în browser prin tabelul creat în HTML.

Codul prin care este creat tabelul cu clienții inregistrați:

<link rel="stylesheet" type="text/css" href="tabele.css">

<body>

<div id="container">

<div id="title">

<h1 id="titlu"> Tabel ce contine clientii inregistrati </h1>

</div>

<div id="home">

<a href="rent.php"><h3> Home </h3></a>

</div>

<div id="centru">

<?php

mysql_connect("localhost","root","") or die("Probleme la conectarea");

mysql_select_db("licenta") or die("Baza de date nu exista");

$select = "SELECT * FROM `clienti`";

$verifica = mysql_query($select);

if ($verifica) {

echo '<table border="1" class="tabel">';

echo '<tr id="rand">

<td class="celule1sus">ID</td><td class="celule1sus">Nume</td>

<td class="celule1sus">Prenume</td><td class="celule1sus">CNP</td>

<td class="celule1sus">Domiciliu</td><td class="celule1sus">Telefon</td>

<td class="celule1sus">Email</td></tr>';

echo '</table>';

while ($row = mysql_fetch_assoc($verifica)) {

echo '<table border="1" class="tabel">';

echo '<tr><td class="celule1">'.$row['ID'].'</td>

<td class="celule1">'.$row['nume'].'</td>

<td class="celule1">'.$row['prenume'].'</td>

<td class="celule1">'.$row['cnp'].'</td>

<td class="celule1">'.$row['domiciliu'].'</td>

<td class="celule1">'.$row['telefon'].'</td>

<td class="celule1">'.$row['email'].'</td></tr>';

echo '</table>';}

}

?>

</div>

</div>

</body>

Fig. 3.3.1 Tabel clienti

Codul prin care este creat tabelul cu comenzile active:

<link rel="stylesheet" type="text/css" href="tabele.css">

<body>

<div id="container">

<div id="title">

<h1 id="titlu"> Tabel ce contine comenzile clientilor </h1>

</div>

<div id="home">

<a href="rent.php"><h3> Home </h3></a>

</div>

<div id="centru">

<?php

mysql_connect("localhost","root","") or die("Probleme la conectarea");

mysql_select_db("licenta") or die("Baza de date nu exista");

$select = "SELECT * FROM `comenzi`";

$verifica = mysql_query($select);

if ($verifica) {echo '<table border="1" class="tabel">';

echo '<tr id="rand">

<td class="celulesus">ID</td>

<td class="celulesus">Nume</td>

<td class="celulesus">Prenume</td>

<td class="celulesus">Telefon</td>

<td class="celulesus">Preluare</td>

<td class="celulesus">Predare</td>

<td class="celulesus">Masina</td>

<td class="celulesus">GPS</td>

<td class="celulesus">Scaun copil</td>

<td class="celulesus">pret</td></tr>';

echo '</table>';

while ($row = mysql_fetch_assoc($verifica)) {

echo '<table border="1" class="tabel">';

echo '<tr>

<td class="celule">'.$row['id'].'</td>

<td class="celule">'.$row['nume'].'</td>

<td class="celule">'.$row['prenume'].'</td>

<td class="celule">'.$row['telefon'].'</td>

<td class="celule">'.$row['preluare'].'</td>

<td class="celule">'.$row['predare'].'</td>

<td class="celule">'.$row['masina'].'</td>

<td class="celule">'.$row['navigatie'].'</td>

<td class="celule">'.$row['scaun'].'</td>

<td class="celule">'.$row['pret'].'</td></tr>';

echo '</table>';

}

}

?>

</div>

</div>

</body>

Fig. 3.3.2 Tabel comenzi

Tabelul din figura (fig 3.3.1) conține clienții înregistrați, precum și alte date ale acestora(adresa, număr de telefon, etc.), iar tabelul din figura(fig3.3.2) conține comenzile active. Designe-ul acestor tabele a fost realizat cu aceeași foaie de stil, având următorul cod sursă:

body{

margin:0;

padding:0;

background-color:#FFFFCC;

background-size:100% 100%;

background-repeat:no-repeat;

background-attachment:fixed;

}

#container{

width:1000px;

margin:0 auto;

border-left-style:solid;

border-right-style:solid;

border-color:#FFF;

border-width:0px;

}

#centru{

width:90%;

margin-left:5%;

}

#title{

width:100%;

height:50px;

margin-top:50px;

}

#titlu{

color:#8A5C00;

margin-left:25%;

margin-right:25%;

}

a{

color:#8A5C00;

text-decoration:none;

}

#rand{

background-color:#D1A319;

width:100%;

}

.celule1sus{

color:#8A5C00;

/*background-color:#D1A319;*/

width:150px;

font-size:20px;

}

.celulesus{

color:#8A5C00;

/*background-color:#D1A319;*/

width:10%;

font-size:20px;

}

.celule{

color:#8A5C00;

width:10%;

}

.celule1{

color:#8A5C00;

width:100px;

}

.tabel{

width:100%;

}

4. Stocarea datelor

4.1 Prezentarea server-ului

Apariția calculatoarelor, precum și utilizarea lor, în majoritatea domeniilor a adus în viața omului o mare evoluție. Fie că este utilizat pentru nevoi personale sau pentru nevoile celor din jur, el reprezintă o modalitate de realizare a unor lucruri ce până atunci erau făcute cu un efort mai mare sau nu puteau fi realizate deloc.

Pentru păstrarea anumitor date și a informațiilor, acestea erau scrise de mână în registre fizice, acestea ocupau spațiu, confecționarea lor putea dura mult timp și erau destul de costisitoare. În prezent, nu mai suntem nevoiți să folosim aceste registre, deoarece există o soluție mult mai fiabilă.

Dezvoltarea sistemelor de baze de date a adus un mare beneficiu firmelor, instituțiilor, la momentul actual aceste sisteme folosindu-se și în școli și gradinițe pentru stocarea notelor și datelor personale ale copiilor.

În cadrul aplicației realizate, am folosit sistemul de baze de date MySQL, acesta fiind parte a server-lui local Wamp(fig. 4.1.1). Este un instrument ce ajută dezvoltatorii să testeze propriile aplicații web înainte ca acestea să fie puse pe un server web si să fie făcute publice.

Fig 4.1.1 Detalii despre WampServer

Cu ajutorul acestuia(4.1.1) putem crea nenumărate baze de date, ușor accesibile și în momentul în care se strecoară una sau mai multe greșeli, aceastea pot fi editate și corectate foarte ușor.

4.2 Crearea bazei de date

Într-o bază de date putem realiza mai multe operații, de la crearea tabelelor până la introducerea și sortarea datelor ce aparțin tabelelor, precum și afișarea acestora prin intermediul PHP-ului într-o pagină HTML.

În continuare, voi reprezenta codul ce aparține sistemului de gestiune a bazelor de date MySQL, scris într-un fișier PHP, pentru crearea unui tabel într-o bază de date:

// interogare sql pentru CREATE TABLE

$sql = "CREATE TABLE `users` (

`id` INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,

`name` VARCHAR(25) NOT NULL,

`prenume` VARCHAR(18) NOT NULL,

`telefon` VARCHAR(45),

`domiciliu` VARCHAR(45),

`telefon` VARCHAR(45),

`email` VARCHAR(45)

) CHARACTER SET utf8 COLLATE utf8_general_ci";

Prima dată trec numele coloanelor

Fiecare coloană poate avea un singur tip de date, spre exemplu coloana id este de tipul întreg(INT), conține numere pozitive(UNSIGNED) și în momentul când se introduc datele, această coloană se autoincrementează(AUTO_INCREMENT) și este cheie primară(PRIMARY KEY) a acestui tabel, celelalte coloane fiind de tipul șir de caractere(VARCHAR) de o anumită lungime;

Ultima comandă setează ca baza de date să folosească UTF-8 pentru codarea caracterelor.

if ($conn->query($sql) === TRUE) {

echo 'Table "users" successfully created';}

Dacă suntem conectați la baza de date, se va face interogarea și comanda va afișa un mesaj, că tabelul a fost creat cu succes.

else {

echo 'Nu s-a putut conecta la baza de date ';}

În cazul unei erori de conexiune, se afișează un mesaj care ne spune că este o problema de conexiune la baza de date.

Structura tabelului creat va arata astfel(fig 4.2):

Fig. 4.2.1 Structura unui tabel albazei de date

Iar prin comanda SELECT * FROM ‚clienti’ se va afișa tabelul și datele conținute de acesta(fig 4.3).

Fig.4.2.2 Afișare tabelului și a datelor din acesta

=== Lucrare prima parte ===

APLICATIE WEB:

INCHIRIERE AUTOTURISME

Cuprins

1.Introducere

2.Tehnologii folosite

2.1.HTML

2.2.CSS

2.3. JAVASCRIPT

2.4.PHP

2.5.MySQL

3.Prezentarea aplicației

3.1. Interfața de lucru

3.2. Formulare

3.3. Tabele

4. Stocarea datelor

Prezentarea Server-ului

4.2.Crearea bazei de date

1.Introducere

Motivul care a stat la baza alegerii mele în ceea ce privește această aplicație a fost faptul că am dorit să aprofundez tehnologiile în ceea ce privește website-urile și aplicațiile web.

Referitor la tema aleasă pentru aplicație, am simțit nevoia să o construiesc pe aceasta, întrucât reprezintă una dintre cele mai căutate necesitați, dar neaccesibile, deoarece potențialii clienți nu sunt îndeajuns de informații referitor la existența acestor genuri de aplicații. În acest sens, am considerat că este folositoare o astfel de aplicație.

Pe parcursul evoluției omului, acesta a început să aibă mai multe nevoi personale, implicit nevoia de a dispune, în orice moment, de un autovehicul cu care să se deplaseze rapid, comod și eficient. Însa evoluția presupune și crearea de facilități pentru a avea acces la ea, de aceea am venit în ajutorul persoanelor ce au domiciliul într-un anumit oraș și sunt nevoiți, datorită locului de muncă sau chiar a plăcerii de a vizita anumite locuri, să dispună de un autovehicul pentru deplasare.

Aplicația ce urmează a fi prezentată se adresează mai multor categorii de utilizatori. În primul rând, este extrem de folositoare pentru cei care dețin o firmă de închirieri de automobile, întrucât au un control asupra clienților și asupra comenzilor active de autovehicule. În al doilea rând, aplicația ar putea fi dezvoltată și pentru utilizarea ei online, adică aceasta are potențial de a deveni un website informativ, cu scopul de a îndruma potențialii clienți în alegerea unui automobil.

Astfel, aceasta se poate adresa persoanelor care consideră că o calatorie cu autovehiculul personal ar putea fi prea costisitoare sau străinilor care doresc să viziteze țara noastră și aleg o altă modaliatate de a călători, dar care nu sunt încântați de faptul că, în momentul ajungerii lor la destinație, nu dispun de un mijloc de transport personal, cu scopul de a le facilita nevoia să ajungă într-o anumită locație(conferinte, atractii turistice, etc.) , într-un timp scurt.

În aceste momente, cea mai eficientă soluție este o agenție de închirieri autoturisme, motiv pentru care am creat această aplicație, ajutând firmele în domeniu să gestioneze mai rapid și mai eficient parcul auto(numarul de mașini, precum și modelele pe care acestea le dețin).

Lucrarea ce urmează a fi prezentată se structurează în patru capitole, și anume Introducerea, Tehnologiile folosite, Prezentarea aplicației și Stocarea datelor.

La rândul lor, aceste capitole se împart în subcapitole, pentru o mai bună vizualizare și înțelegere a lucrării.

Capitolul 1, Introducerea, se ocupă cu includerea globală în cadrul ideilor cuprinse în lucrare.

Capitolul 2, Tehnologiile folosite, este format din:

Supcapitolul limbajul HTML, care ajută la realizarea interfeței de lucru și la afișarea interogărilor, fiind codul prin care se creează paginile web și reprezentând modul prin care documentele sunt vizualizate într-un browser.

Supcapitolul limbajul CSS are ca întrebuințare principală design-ul paginilor web. Spre deosebire de HTML, acest tip de limbaj are drept avantaj formatarea unui grup de obiecte, folosind o singură comandă.

Subcapitolul limbajul JavaScript este utilizat pentru adăugarea elementelor dinamice, realizează paginile ce pot fi personalizate după utilizator, fiind accesibil începatorilor, întrucât este folosit pe scară largă.

Supcapitolul limbajul PHP are rolul de a crea legătura dintre paginile web și baza de date cu care lucrează aplicația și poate fi încorporat într-un cod HTML. Cu ajutorul acestuia, putem insera date în baza de date și realiza interogări

Ultimul subcapitol, numindu-se Sistemul de baze de date MySQL este un sistem de gestiune al bazelor de date, permițându-ne să stocăm, să căutăm și să sortăm datele ce se găsesc la un moment dat în baza de date.

Capitolul 3 este format din Prezentarea interfeței de lucru, a Formularelor și a Tabelelor de interogare. Interfața de lucru este realizată prin utilizarea tehnologiilor prezentate mai sus. Cu ajutorul acesteia, interacționăm cu întreaga aplicație, reprezentând una dintre cele mai importante părți ale acesteia. Prin intermediul interfeței de lucru avem acces și la formulare, cu ajutorul cărora putem introduce noi date în baza de date actuală, și la tabelele ce reprezintă interogările pe care le generăm pentru a vizualiza informațiile mai vechi din baza de date.

Capitolul 4, Stocarea datelor, este compus din supcapitolele Prezentarea server-ului și Crearea bazei de date. În primul subcapitol, prezint în mod succint server-ul local folosit, fiind utilizat pentru a testa aplicațiile web. În ceea ce privește subcapitolul 2, se prezintă crearea unui tabel într-o bază de date, precum și structura acestuia.

2. Tehnologii folosite

Pentru această aplicație, am folosit limbajul HTML pentru crearea interfeței de lucru și afișarea interogărilor, limbajul CSS și JavaScript pentru realizarea design-ului și aranjarea diferitelor obiecte ce urmează a fi afișate, limbajul PHP pentru a crea legatura între aplicație și baza de date și, nu în ultimul rând , sistemul de baze de date MySQL pentru un control mult mai eficient al aplicației.

2.1. Limbajul HTML

HTML(Hyper Text Mark-up Language) este codul care stă la baza paginilor web, precum și modul în care un document este văzut într-un browser . Acest limbaj a fost dezvoltat inițial de Tim Berners-Lee la CERN în 1989, în principiu, fiind văzut ca o metodă mult mai rapidă de transmitere a datelor(documentelor) între persoanele ce utilizează diferite computere. Paginile web(HTML) sunt formate din etichete sau tag-uri și au extensia .html sau .htm. De obicei, aceste etichete sunt pereche, una de deschidere <tag> și alta de închidere </tag>, însă există și cazuri în care nu se închid, când se folosește eticheta<tag/>, browserul interpretând aceste etichete și afișând rezultatul pe ecran. HTML-ul nu este un limbaj case sensitiv (nu face deosebirea între litere mici și mari).

HTML este o formă de marcare orientată către prezentarea documentelor text pe o singură pagină, utilizând un software de redare specializat, numit agent utilizator HTML, cel mai bun exemplu de astfel de software fiind browserul web. HTML furnizează mijloacele prin care conținutul unui document poate fi adnotat cu diverse tipuri de metadate și indicații de redare. Indicațiile de redare pot varia de la decorațiuni minore ale textului, cum ar fi specificarea faptului că un anumit cuvânt trebuie subliniat sau că o imagine trebuie introdusă, până la scripturi sofisticate, hărți de imagini și formulare. Metadatele pot include informații despre titlul și autorul documentului, informații structurale despre cum este împărțit documentul în diferite segmente, paragrafe, liste, titluri etc. și informații cruciale care permit ca documentul să poată fi legat de alte documente pentru a forma astfel link-urile.

Proprietațile acestui limbaj:

Independența de platformă: o pagină web va fi afișată la fel pe diferite tipuri de computere;

Hipertext: orice element al paginii web(imagine, frază, cuvânt, etc.) poate fi legatură(link) către altă pagină web.

2.2. Limbajul CSS

Cascading Style Sheets (CSS) este o metodă de design web ce formatează conținutul unei pagini web conform unui stil de prezentare specificat de autor. Este mai avantajos să utilizăm acest limbaj, pentru formatarea unei pagini web, decât să folosim comenzile din HTML, ce pot îngreuna înțelegerea codului și pot necesita mai mult timp de lucru. Permite manipularea aspectului unui Website fără a afecta structura HTML. CSS separă conținutul documentului, de modul în care este prezentat, permițând o mai buna tranziție între diferitele tipuri de browser-re. Oferă, de asemenea, un control precis asupra spațierii, alinierii și poziționării de conținut, fără a se baza pe folosirea tabelelor și a cadrelor. Stilul, culoarea și dimensiunea fontului sunt, de asemenea, mult mai ușor de ales cu ajutorul limbajului CSS.

Obiective:

Controlarea aspectului unui site web prin crearea foilor de stil;

Putem oferi tuturor paginilor ce aparțin unui Website același design, folosind aceeași foaie de stil;

Folosirea atributului clasă(class) pentru a aplica același stil mai multor obiecte;

Putem specifica precis fontul, culoarea, dimensiunea și alte proprietăți ale unui text ce trebuie afișat;

Specificarea elementelor de fundal și de culoare;

Înțelegerea și controlarea marginilor, bordurilor și padding-ului;

Utilizarea foilor de stil pentru a separa prezentarea de conținut.

2.3. Limbajul JavaScript

Originea:

Limbajul JavaScript a fost lansat în anul 1995 de către Netscape și Sun Microsystem. Cu toate acestea, JavaScript nu este același lucru ca și Java.

Ce este JavaScript:

Este un limbaj de programare;

Este un limbaj interpretat;

Este bazat pe programarea obiectelor;

Este susținut și utilizat pe scară largă;

Este accesibil pentru începători.

Utilizări:

Este folosit pentru adăugarea elementelor multimedia: Cu JavaScript putem afișa, ascunde, schimba, redimensiona imagini și crea rollover image. Poate fi creat text ce defilează pe bara de stare.

Crearea paginilor dinamice: Bazat pe alegerile utilizatorului, datele scrise sau alte date externe, JavaScript poate produce pagini ce sunt personalizate după utilizator.

Interacționarea cu utilizatorul: Când un utilizator trimite(submit) un formular, acest limbaj procesează datele, iar apoi le validează. Verifică să nu se fi introdus date eronate sau să se fi lasat câmpuri vide.

Scrierea în JavaScript:

Codul JavaScript este încorporat în HTML, pentru a fi interpretat și rulat de browser. Trebuie să ținem cont de anumite sfaturi când scriem comenzi în JavaScript:

Acest limbaj este case sensitive;

Spațiile goale dintre cuvinte și tag-uri sunt ignorate;

Sfârșiturile de linie sunt ignorate, cu excepția celor aflate într-o declarație;

Declarațiile din JavaScript se termină cu punct și cu virgulă( ; ).

Tagul SCRIPT: Acest tag avertizează un browser că în codul HTML se găsesc și instrucțiuni din limbajul JavaScript.

<SCRIPT limbaj = “JavaScript”>

Declarație

</SCRIPT>

2.4. Limbajul PHP

PHP (PHP: Hypertext Preprocessor) este un limbaj de scripting de uz general, cu cod-sursă deschis (open source), utilizat pe scară largă, care este potrivit în special pentru dezvoltarea aplicațiilor web, însă poate fi integrat și în HTML. Codul PHP este interpretat pe serverul WEB și generează un cod HTML care va fi văzut de Utilizator(browser) fiindu-i transmis numai cod interpretat ca și HTML. PHP a fost conceput în anul 1994 și a fost inițial munca unui singur om, Rasmus Lerdorf.

PHP este axat în principal pe scripting de partea server-ului, deci puteți realiza cu el orice poate realiza un alt program CGI(Common Gateway Interface), cum ar fi colectarea datelor din forme, generarea conținutului dinamic al paginilor sau trimiterea și primirea de cookies. Dar PHP poate face mult mai multe.

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.

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. 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ă, dar în cazul în care 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.

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 incredibil de simplă, utilizând una din extensiile de lucru cu baze de date (de ex. pentru mysql).

2.5. Sistemul de baze de date MySQL

Mysql este un sistem de gestiune al bazelor de date, foarte rapid și robust. O bază de date vă permite să stocați, să căutați, să sortați și să vă regăsiți datele în mod eficient. Serverul MySQL controlează accesul la datele dumneavoastră pentru a garanta că mai mulți utilizatori pot lucra simultan cu acestea. Deci, MySQL este un server multi-user (mai mulți utilizatori) si multi-thread (mai multe fire de execuție).

Utilizează SQL (Structured Query Language), limbajul standard de interogare al bazelor de date din întreaga lume. MySQL este disponibil în mod public din 1996, dar istoria dezvoltării sale începe în 1979.

O bază de date este o colecție structurată de date. Aceasta poate gestiona orice, de la o listă simplă de cumpărături până la o galerie de artă, sau mari cantități de informații dintr-o mare corporație. Pentru a adăuga, accesa și prelucra datele dintr-o bază de date, ai nevoie de un sistem de management al bazelor de date cum ar fi MySQL server. Deoarece cu ajutorul computerelor gestionăm cantități mari de date, sistemele de management de baze de date constituie un rol important, ca și utilizare independentă sau ca parte ale altor aplicații.

Bazele de date MySQL sunt relaționale, stochează datele în tabele separate, structurile de baze de date sunt organizate în dosare fizice optimizate pentru viteză. Modelul logic, cu obiecte, cum ar fi baza de date, tabelele, vizualizările, rândurile și coloanele, oferă un mediu de programare flexibil. Pot fi configurate norme ce reglementează relațiile dintre câmpuri de date diferite, cum ar fi unu-la-unu, unu-la-mai-mulți, unic, necesar sau optimal, precum și indicii dintre diferite tabele. Baza de date impune aceste reguli, deoarece, cu o bază de date bine proiectată, aplicația nu va fi niciodata în contradicție, duplicată sau să aibă lipsă de date.

Serverul de baze de date MySQL este rapid, fiabil, scalabil și ușor de utilizat. Poate rula confortabil pe un desktop sau laptop, alături de alte aplicații, servere de web, care necesită puțină atenție. Pentru a rula pe un computer doar un sistem de management al bazelor de date, putem ajusta setările ce țin de memoria RAM, puterea procesorului și capacitatea de intrare/ieșire, pentru o mai bună și mai rapidă funcționare a acestuia.

Software-ul de date MySQL este un sistem client/server alcătuit dintr-un SQL server multi-threaded(mai multe fire de execuție) care acceptă diferite backend-uri, mai multe programe client diferite și biblioteci, instrumente administrative, precum și o gamă largă de interfețe de programare a aplicațiilor.

3. Prezentarea aplicației

3.1. Prezentarea interfeței de lucru:

Am creat această aplicație cu ajutorul unui server local (Wamp Server), fișierul rent.php reprezentând sursa aplicației, iar pentru deschiderea acesteia scriem în bara de adrese a unui browser comanda http://localhost/licenta/rent.php.

Serverul va trimite browser-ului datele aflate în fișierul de bază, rent.php, implicit ne va afișa prima pagină a aplicației(fig. 3.1.1). Totodată, pentru a ține evidența clienților și a comenzilor făcute, aceasta lucrează în paralel cu un sistem de baze de date MySQL și a unui server local(Wampserver), legătura dintre cele două fiind posibilă datorită folosirii limbajului PHP.

Această primă pagină este concepută să fie ușor de utilizat de către administrator. Prin intermediul ei, administratorul îi poate prezenta unui potențial client mașinile deținute, precum și alte detalii referitoare la preț, motorizare și clasă din care face parte autoturismul.

Fig 3.1.1 Prima pagină a aplicației.

Am construit această pagină cu ajutorul etichetelor din limbajul HTML, designe-ul fiind prelucrat mult mai simplu și rapid folosind instrucțiunile din limbajul CSS.

Datorită acestui limbaj, grupurile ce conțin numele, imaginea și scurtele informații despre autoturism(fig. 3.1.2), au putut fi formatate toate doar cu o singură instrucțiune, nemaifiind nevoie să îngreunăm codul HTML prin formatarea fiecărui text și fiecarei imagini separate.

Acest lucru duce la o mai bună și rapidă funcționare a site-ului, precum și la o mai ușoară înțelegere a codului.

Fig. 3.1.2 Grupul ce conține detalii

succinte despre autoturism

După cum se poate observa(fig. 3.1.2) în această pagină se găsesc mașinile deținute în parcul auto, o imagine a fiecărui model, precum și tipul automobilului, tipul de carburant folosit, capacitatea cilindrică a motorului și prețul de pornire.

Pe această pagină se mai găsesc butoanele ce duc la diferite interogări ale bazei de date, tabelul cu clienții și datele de contact ale acestora și tabelul cu rezervările active, precum și la formularul de înregistrare a clienților și formularul de rezervare a unui automobil(fig. 3.1.3).

Fig. 3.1.3 Grupul de butoane

Pentru o navigare mai eficientă, lista din stânga paginii reprezintă o listă de ancore (fig. 3.1.4), către numele autoturismelor, pentru ca utilizatorul aplicației să nu fie nevoit să scroll-eze și astfel găsirea unui autovehicul să necesite mai mult timp. În acest mod, căutarea autovehiculelor se poate realiza într-un mod mult mai rapid.

Fig 3.1.4 Lista de ancore

Pentru a vizualiza mai bine lista de mașini(fig 3.1.4), cu ajutorul comezilor de fixare ce aparțin limbajului JavaScript, aceasta este fixată, apărând la începutul paginii(fig.3.1), dar și în momentul în care cursorul se afla la mijlocul sau la sfarșitul paginii(fig. 3.1.5).

Fig. 3.1.5 Lista de ancore fixată

Fiecare imagine(fig. 3.1.6) a unui autoturism este o legatură(link) către o altă pagină(fig. 3.1.7), ce conține mai multe date tehnice și detalii despre preț.

Fig. 3.1.6 Legătura(link-ul) către detaliile autoturismului

Fig. 3.1.7 Pagina ce conține detalii amănunțite

despre autoturism

Designe-ul paginilor cu detaliile fiecarui autoturism(fig. 3.1.7) este, de asemenea, configurat cu clase(class) si id-uri(id), elemente ce aparțin limbajului CSS.

Atribuindu-i fiecarei pagini aceleași clase si id-uri, designe-ul a fost realizat doar cu o singură foaie de stil(style sheet), folosind astfel mai puțin spațiu de stocare și un cod mai simplu.

În continuare, am atașat codul foii de stil(style sheet) comun tuturor paginilor care dețin detalii despre autovehicule.

body{ margin:0; padding:0;

background-color:#FFFFCC; background-size:100% 100%;

background-repeat:no-repeat; background-attachment:fixed;}

a{color:#8A5C00; text-decoration:none;}

#container{width:950px; margin:0 auto; border-left-style:solid;

border-right-style:solid; border-color:#FFF; border-width:0px;}

ul{color:#8A5C00; padding-top:50px; list-style-type:none;}

#header{width:100%; height:125; border-bottom-style:solid;

border-width:0px; border-color:#FFF; padding-top:50px;}

#title{width:50%; height:100px; float:left;}

#titlu{font-family:'Aharoni'; font-size:35px; color:#8A5C00;

margin-left:30px; float:left; padding-top:25px;}

#butoane{width:50%;height:35px;

float:left; padding-top:90px;}

.buton{background-color:#FFFFCC; width:25%; text-align:center;

font-size:25px; text-transform: capitalize; margin-left:350px;}

.b{color:#000; color:#8A5C00;}

3.2 Formulare:

Pentru adăugarea clienților și realizarea comenzilor am folosit formulare(fig 3.2.1, fig. 3.2.2). Propriu-zis, acestea au fost create folosind limbajul HTML, însă legătura dintre acestea și baza de date este făcută cu ajutorul limbajului PHP.

Fig. 3.2.1 Formular de înregistrare clienți

Acest formular conține trei elemente majore:

Câmpurile: unde se vor introduce datele necesare(nume, prenume, cod numeric personal, domiciliul, număr de telefon, adresa de e-mail);

Butonul „Register”: după ce s-au completat câmpurile, prin apăsarea acestuia, se verifică daca există câmpuri goale, caz în care se afișează mesajul „You did not complete all of the required fields”, în cazul în care toate câmpurile sunt completate datele care se găsesc în câmpuri se adaugă într-un anumit tabel al bazei de date;

Butonul „Home”: trimite utilizatorul la pagina principală(fig 3.2.1), în cazul în care clientul dorește să mai consulte ofertele.

Elementele prezentate mai sus sunt conținute și de formularul pentru preluarea comenzilor(fig 3.3.2), în schimb acesta diferă prin folosirea butoanele radio, deoarece sunt doar două valori din care se face alegerea și trebuie aleasă cel puțin o valoare, iar altă diferență este că în acest formular se introduc date diferite față de formularul precedent(data preluării, data predării, modelul mașinii, precum și alegerea dintre cele două valori ale butoanelor radio).

Fig 3.2.2 Formular preluare comandă

Etapele de construcție:

Se conectează pagina la server, în cazul acesta serverul local WampServer:

mysql_connect("localhost" , "root") or die(mysql_error());

Se conectează pagina la baza de date:

mysql_select_db("licenta") or die(mysql_error());

Verifică dacă toate campurile conțin text:

if (!$_POST['nume'] | !$_POST['prenume'] | !$_POST['cnp']

| !$_POST['domiciliu'] | !$_POST['telefon'] | !$_POST['email']) {

În cazul în care unul sau mai multe câmpuri sunt goale, afișează mesajul:

die('You did not complete all of the required fields');}

La final, dacă toate câmpurile conțin text, datele din acestea sunt introduse în baza de date prin urmatoarea comandă:

$insert = "INSERT INTO clienti (nume, prenume, cnp,

domiciliu, telefon, email )

VALUES('".$_POST['nume']."','".$_POST['prenume']."','".$_POST['cnp']."',

'".$_POST['domiciliu']."', '".$_POST['telefon']."',

'".$_POST['email']."' )";

$add_member = mysql_query($insert);

3.3 Tabele de interogare

Tabelele sunt create cu ajutorul HTML-ului, în ele se găsesc datele aflate în tabelele din baza de date. Aceste comenzi se numesc interogări sunt specifice sistemului de gestionare a bazelor de date, MySQL și sunt realizate cu ajutorul limbajului PHP.

Etapele unei interogări:

Fișierul ce conține codul se conectează la serverul local „mysql_connect("localhost","root") or die(mysql_error());” iar apoi la baza de date prin comanda „mysql_select_db("licenta") or die(mysql_error());”

Dupa conectare, se face „select-ul” specific sistemelor de gestiune al bazelor de date, acesta selectează toate câmpurile tabelului din baza de date;

Datele selectate sunt introduse și afișate în browser prin tabelul creat în HTML.

Fig. 3.3.1 Tabel clienti

Fig. 3.3.2 Tabel comenzi

Tabelul din figura (fig 3.3.1) conține clienții înregistrați, precum și alte date ale acestora(adresa, număr de telefon, etc.), iar tabelul din figura(fig3.3.2) conține comenzile active.

4. Stocarea datelor

4.1 Prezentarea server-ului

Apariția calculatoarelor, precum și utilizarea lor, în majoritatea domeniilor a adus în viața omului o mare evoluție. Fie că este utilizat pentru nevoi personale sau pentru nevoile celor din jur, el reprezintă o modalitate de realizare a unor lucruri ce până atunci erau făcute cu un efort mai mare sau nu puteau fi realizate deloc.

Pentru păstrarea anumitor date și a informațiilor, acestea erau scrise de mână în registre fizice, acestea ocupau spațiu, confecționarea lor putea dura mult timp și erau destul de costisitoare. În prezent, nu mai suntem nevoiți să folosim aceste registre, deoarece există o soluție mult mai fiabilă.

Dezvoltarea sistemelor de baze de date a adus un mare beneficiu firmelor, instituțiilor, la momentul actual aceste sisteme folosindu-se și în școli și gradinițe pentru stocarea notelor și datelor personale ale copiilor.

În cadrul aplicației realizate, am folosit sistemul de baze de date MySQL, acesta fiind parte a server-lui local Wamp(fig. 4.1.1). Este un instrument ce ajută dezvoltatorii să testeze propriile aplicații web înainte ca acestea să fie puse pe un server web si să fie făcute publice.

Fig 4.1.1 Detalii despre WampServer

Cu ajutorul acestuia(4.1.1) putem crea nenumărate baze de date, ușor accesibile și în momentul în care se strecoară una sau mai multe greșeli, aceastea pot fi editate și corectate foarte ușor.

4.2 Crearea bazei de date

Într-o bază de date putem realiza mai multe operații, de la crearea tabelelor până la introducerea și sortarea datelor ce aparțin tabelelor, precum și afișarea acestora prin intermediul PHP-ului într-o pagină HTML.

În continuare, voi reprezenta codul ce aparține sistemului de gestiune a bazelor de date MySQL, scris într-un fișier PHP, pentru crearea unui tabel într-o bază de date:

// interogare sql pentru CREATE TABLE

$sql = "CREATE TABLE `users` (

`id` INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,

`name` VARCHAR(25) NOT NULL,

`prenume` VARCHAR(18) NOT NULL,

`telefon` VARCHAR(45),

`domiciliu` VARCHAR(45),

`telefon` VARCHAR(45),

`email` VARCHAR(45)

) CHARACTER SET utf8 COLLATE utf8_general_ci";

Prima dată trec numele coloanelor

Fiecare coloană poate avea un singur tip de date, spre exemplu coloana id este de tipul întreg(INT), conține numere pozitive(UNSIGNED) și în momentul când se introduc datele, această coloană se autoincrementează(AUTO_INCREMENT) și este cheie primară(PRIMARY KEY) a acestui tabel, celelalte coloane fiind de tipul șir de caractere(VARCHAR) de o anumită lungime;

Ultima comandă setează ca baza de date să folosească UTF-8 pentru codarea caracterelor.

// Executa interogarea $sql query pe server pentru a crea tabelul

if ($conn->query($sql) === TRUE) {

echo 'Table "users" successfully created';}

Dacă suntem conectați la baza de date, se va face interogarea și comanda va afișa un mesaj, că tabelul a fost creat cu succes.

else {

echo 'Nu s-a putut conecta la baza de date ';}

În cazul unei erori de conexiune, se afișează un mesaj care ne spune că este o problema de conexiune la baza de date.

Structura tabelului creat va arata astfel(fig 4.2):

Fig. 4.2.1 Structura unui tabel albazei de date

Iar prin comanda SELECT * FROM ‚clienti’ se va afișa tabelul și datele conținute de acesta(fig 4.3).

Fig.4.2.2 Afișare tabelului și a datelor din acesta

=== Capitolul I ===

APLICATIE WEB:

INCHIRIERE AUTOTURISME

Cuprins

1.Introducere

2.Tehnologii folosite

2.1.HTML

2.2.CSS

2.3. JAVASCRIPT

2.4.PHP

2.5.MySQL

3.Prezentarea aplicatiei

2. Tehnologii folosite

Pentru acesta aplicație am folosit limbajul HTML pentru crearea interfeței de lucru și afișarea interogarilor, limbajul CSS si JavaScript pentru realizarea design-ului și aranjarea diferitelor obiecte ce urmeaza a fi afișate, limbajul PHP pentru a crea legatura intre aplicație și baza de date, și nu in ultimul rând sistemul de baze de date MySQL pentru un control mult mai eficient al aplicației.

2.1. Limbajul HTML

HTML(Hyper Text Mark-up Language) este codul care stă la baza paginilor web, precum și modul în care un document este văzut într-un browser . Acest limbaj a fost dezvoltat inițial de Tim Berners-Lee la CERN in 1989, in pincipiu, fiind vazut ca o metoda mult mai rapida de transmitere a datelor(documentelor) între persoanele ce utilizează diferite computere. Paginile web(HTML) sunt formate din etichete sau tag-uri și au extensia .html sau .htm. În marea lor majoritate aceste etichete sunt pereche, una de deschidere <eticheta> și alta de închidere </eticheta>, mai există și cazuri în care nu se închid, atunci se folosește <eticheta />, browserul interpretează aceste etichete afișând rezultatul pe ecran. HTML-ul nu este un limbaj case sensitiv (nu face deosebirea între litere mici și mari).

HTML este o formă de marcare orientată către prezentarea documentelor text pe o singura pagină, utilizând un software de redare specializat, numit agent utilizator HTML, cel mai bun exemplu de astfel de software fiind browserul web. HTML furnizează mijloacele prin care conținutul unui document poate fi adnotat cu diverse tipuri de metadate și indicații de redare. Indicațiile de redare pot varia de la decorațiuni minore ale textului, cum ar fi specificarea faptului că un anumit cuvânt trebuie subliniat sau că o imagine trebuie introdusă, până la scripturi sofisticate, hărți de imagini și formulare. Metadatele pot include informații despre titlul și autorul documentului, informații structurale despre cum este împărțit documentul în diferite segmente, paragrafe, liste, titluri etc. și informații cruciale care permit ca documentul să poată fi legat de alte documente pentru a forma astfel link-urile.

Proprietatile acestui limbaj:

Independența de platforma: o pagina web va fi afișata la fel pe diferite tipuri de computere;

Hipertext: orice element al pagini web(imagine, fraza, cuvânt, etc.) poate fi lgatură(link) catre altă pagina web.

2.2. Limbajul CSS

Cascading Style Sheets (CSS) este o metode de design web ce formatează conținutul unei pagini web conform unui stil de prezentare specificat de autor. Este mai avantajos să utilizăm acest limbaj, pentru formatarea unei pagini web, decat să folosim comenzile din HTML, ce pot îngreuna întelegerea codului și pot necesita mai mult timp de lucru. Permite manipularea aspectului unui Website fără a afecta structura HTML. CSS separă conținutul documentului, de modul in care este prezentat, permițând o mai buna tranziție intre diferitele tipuri de browser-re. Ofera, de asemenea, și un control mai precis asupra spațierii, alinierii și poziționarii de conținut, fara a se baza pe folosirea tabelelor și a cadrelor. Stilul, culoarea și dimensiunea fontului sunt, de asemenea, mult mai usor de ales cu ajutorul limbajului CSS.

Obiective:

Controlarea aspectului unui site web prin crearea foilor de stil;

Putem oferi tuturor paginilor ce aparțin unui Website același stil, folosind aceeași foaie de stil;

Folosirea atributului clasa(class) pentru a aplica același stil mai multor obiecte;

Putem specifica precis fontul, culoarea, dimensiunea și alte proprietăți, unui text ce trebuie afisat;

Specificarea elementelor de fundal si culoare;

Înțelegerea și controlarea marginilor, bordurilor si padding-ului;

Utilizarea foilor de stil pentru a separa prezentarea de conținut.

2.3. Limbajul JavaScript

Originea:

Limbajul JavaScript a fost lansat in anul 1995 de către Netscape și Sun Microsystem. Cu toate acestea, JavaScript nu este același lucru ca și Java.

Ce este JavaScript:

Este un limbaj de programare;

Este un limbaj interpretat;

Este bazat pe programarea obiectelor;

Este susținut si utilizat pe scara larga;

Este accesibil pentru începatori.

Utilizări:

Este folosit pentru adăugarea elementelor multimedia:

Cu JavaScript putem afișa, ascunde, schimba, redimensiona imagini si crearea de rollover image. Poate fi creat text ce defilează pe bara de stare.

Crearea paginilor dinamice:

Bazat pe alegerile utilizatorului, datele scrise sau alte date externe, JavaScript poate produce pagini ce sunt personalizate dupa utilizator.

Interacționarea cu utilizatorul:

Când un utilizator trimite(submit) un formular, acest limbaj procesează datele, iar apoi le validează. Verifică să nu se fi introdus date eronate sau să se fi lasat câmpuri vide.

Scrierea in JavaScript:

Codul JavaScript este încorporat în HTML, pentru a fi interpretat si rulat de browser. Trebuie să ținem cont de anumite sfaturi când scriem comenzi în JavaScript:

Acest limbaj este case sinsitive;

Spațiile goale dintre cuvinte si tag-uri sunt ignorate;

Sfârșiturile de linie sunt ignorate, cu excepția celor aflate într-o declarație;

Declarațiile din JavaScript se termina cu punct si virgula( ; ).

Tagul SCRIPT:

Acest tag avertizează un browser că în codul HTML se găsesc și instrucțiuni din limbajul JavaScript.

<SCRIPT limbaj = “JavaScript”>

Declaratie

</SCRIPT>

2.4. Limbajul PHP

PHP (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, insă poate fi integrat și în HTML. Codul PHP este interpretat pe serverul WEB și generează un cod HTML care va fi vazut de Uilizator(browser) fiindu-i transmis numai cod interpretat ca si HTML. PHP a fost conceput in anul 1994 si a fost initial munca unui singur om, Rasmus Lerdorf.

PHP este axat în principal pe scripting de partea server-ului, deci puteți realiza cu el orice poate realiza un alt program CGI(Common Gateway Interface), cum ar fi colectarea datelor din forme, generarea conținutului dinamic al paginilor sau trimiterea și primirea cookies. Dar PHP poate face mult mai multe.

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.

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. 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ă, 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.

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).

Sistemul de baze de date MySQL

Mysql este un sistem de gestiune a bazelor de date, foarte rapid si robust. O baza de date vă permite să stocați, să căutați, să sortați și să vă regăsiți datele in mod eficient. Serverul MySQL controlează accesul la datele dumneavoastră pentru a garanta că mai mulți utilizatori pot

lucra simultan cu acestea. Deci, MySQL este un server multi-user (mai mulți utilizatori) si multi-thread (mai multe fire de execuție).

Utilizează SQL (Structured Query Language), limbajul standard de interogare a bazelor de date din intreaga lume. MySQL este disponibil in mod public din 1996, dar istoria dezvoltării sale incepe in 1979.

O bază de date este o colectie structurata de date. Aceasta poate gestiona orice, de la o listă simplă de cumpărături la o galerie de artă sau mari cantități de informații dintr-o mare corporație. Pentru a adăuga, accesa și prelucra datele dintr-o bază de date, ai nevoie de un sistem de management al bazelor de date cum ar fi MySQL server. Deoarece cu ajutorul computerelor gestionăm cantități mari de date, sistemele de management de baze de date constituie un rol important, ca și utilizare independentă sau ca parte ale altor aplicații.

Bazele de date MySQL sunt relaționale, stochează datele in tabele separate, structurile de baze de date sunt organizate în dosare fizice optimizate pentru viteză. Modelul logic, cu obiecte, cum ar fi baza de date, tabelele, vizualizările, rândurile și coloanele, oferă un mediu de programare flexibil. Pot fi configurate norme ce reglementează relațiile dintre câmpuri de date diferite, cum ar fi unu-la-unu, unu-la-mai-mulți, unic, necesar sau optimal, precum și indicii dintre diferite tabele. Baza de date impune aceste reguli, deoarece, cu o bază de date bine proiectată, aplicația nu va fi niciodata în contradicție, duplicat sau sa aibă lipsă de date.

Serverul de baze de date MySQL este rapid, fiabil, scalabil și ușor de utilizat. Poate rula confortabil pe un desktop sau laptop, alături de alte aplicații, servere de web, care necesită puțin atenție. Pentru a rula, pe un computer, doar un sistem de management al bazelor de date putem ajusta setările ce țin de memoria RAM, puterea procesorului și capacitatea de intrare/iesire, pentru o mai bună și mai rapidă funcționare a acestuia.

Software-ul de date MySQL este un sistem client / server alcătuit dintr-un SQL server multi-threaded(mai multe fire de execuție) care acceptă diferite backend-uri, mai multe programe client diferite și biblioteci, instrumente administrative, precum și o gamă largă de interfețe de programare a aplicațiilor.

3.Prezentarea aplicatiei

=== Ciorna ===

HTML(Hyper Text Mark-up Language) reprezinta codul prin care sunt create paginile web, dar și modalitatea prin care un document poate fi vizualizat într-un browser. Tim Berners-Lee a fost cel care a descoperit primul și a dezvoltat acest limbaj, în anul 1989, fiind considerat inițial o modalitate de transmitere a documentelor între utilizatorii ce folosesc computere diferite. Paginile web(HTML) sunt formate din etichete sau tag-uri și au extensia .html sau .htm. În general, aceste etichete sunt pereche, una de deschidere <eticheta> și alta de închidere </eticheta>, dar mai există și cazuri în care nu se închid, in acest ultim caz folosindu-se <eticheta />. Browserul interpretează aceste etichete, rezultatul fiind afișat pe ecran. De menționat faptul că HTML-ul nu este un limbaj case sensitiv (nu face deosebirea între litere mici și mari).

=== Ciorna 1 ===

HTML(Hyper Text Mark-up Language) reprezinta codul prin care sunt create paginile web, dar și modalitatea prin care un document poate fi vizualizat într-un browser. Tim Berners-Lee a fost cel care a descoperit primul și a dezvoltat acest limbaj, în anul 1989, fiind considerat inițial o modalitate de transmitere a documentelor între utilizatorii ce folosesc computere diferite. Paginile web(HTML) sunt formate din etichete sau tag-uri și au extensia .html sau .htm. În general, aceste etichete sunt pereche, una de deschidere <eticheta> și alta de închidere </eticheta>, dar mai există și cazuri în care nu se închid, in acest ultim caz folosindu-se <eticheta />. Browserul interpretează aceste etichete, rezultatul fiind afișat pe ecran. De menționat faptul că HTML-ul nu este un limbaj case sensitiv (nu face deosebirea între litere mici și mari).

HTML este un limbaj care are rolul de marcare orientat către prezentarea documentelor text pe o singură pagină, ce utilizează un software de redare specializat, numit agent utilizator HTML, browser-ul web fiind cel mai bun exemplu. Acesta furnizează mijloacele prin care conținutul unui document poate fi adnotat cu diverse tipuri de metadate și indicații de redare, care se pot deosebi prin decorațiuni minore ale textului, ca de exemplu scrierea unui cuvânt sau a unei fraze subliniate. Metadatele pot include informații generale cu privire la titlul și autorul documentului, informații structurale în ceea ce privește documentul și structura sa în paragrafe, liste, titluri etc. și informații cruciale care permit ca documentul să formeze linkuri, prin legarea acestuia de alte documente.

Proprietatile acestui limbaj:

Independența de platforma: o pagina web va fi afișata la fel pe diferite tipuri de computere;

Hipertext: orice element al pagini web(imagine, fraza, cuvânt, etc.) poate fi legatură(link) către altă pagina web.

Similar Posts

  • Informatizarea Bibliotecilor Scolare

    CUPRINS 1. Introducere ……………………………………………………………………………….. 2 1.1. Generalități …………………………………………………………………………………… 2 1.2. Prezentarea temei ………………………………………………………………………….. 3 2. Fundamentare teoretică ………………………………………………………………. 7 2.1. Sistemul KOHA ……………………………………………………………………………. 7 2.2. Sistemul Liberty ………………………………………………………………………….. 11 2.2. Implementarea sistemelor informatice web-based ……………………………. 12 2.3.1. Baze de date ……………………………………………………………………………. 14 2.3.2. PHP, MySQL și serverul Apache ………………………………………………. 29 2.3.3. Standardul HTML ……………………………………………………………………. 32…

  • Implementarea Unei Interfete Web Pentru O Companie de Iomobiliare

    Cuprins Introducere Lucrаreа de fаță аre cа și scop reаlizаreа unui site web pentru o compаnie de imobiliаre. Аplicаțiа este reаlizаtă în Codeigniter, o plаtformă inovаtoаre și modernă ce permite scriereа unor аplicаții complexe, oferind fiаbilitаte și securitаte. In primul capitol am prezentat principalele componente ale unei afaceri de tip electronic, modalitatile de implementare ale…

  • Tehnologia Retelelor de Comunicatii

    TEHNOLOGIA REȚELELOR DE COMUNICAȚII Material de predare Cuprins : I. INTRODUCERE Documente necesare pentru activitatea de predare Convenții folosite în lucrare II. RESURSE Tema 1 – Elementele unei rețele structurate Fișa suport 1.1 – Noțiuni introductive privind cablarea structurată Introducere Istoric Fișa suport 1.2 – Prezentarea standardelor. Standardul ANSI/TIA/EIA-568 De ce sunt necesare standardele ?…

  • Aplicatie Web Pentru E Commerce

    CUPRINS INTRODUCERE Ca urmare a dezvoltării Internetului s-a creat „cyberspațiul” care a dus la o comprimare a spațiului și timpului, la o lume globalizată, în care accesul la informații și bunuri materiale să depindă de utilizarea tehnologiei Web, s-a constatat o accelerare importantă a răspândirii comerțului electronic și a monedei vituale. În domeniul comerțului, magazinele…

  • Sisteme de Administrare a Continutului

    INTRODUCERE Prezenta lucrare își setează ca scop principal analiza comparativă a două platforme open-source utilizate pentru dezvoltarea site-urilor web, respectiv WordPress și Drupal. Platformele open-source au fost concepute cu scopul de a le veni în ajutor persoanelor care își doreau să dezvolte site-uri dar nu dețineau cunoștințe de programare. Lucrarea este formată din două capitole,…

  • Sistem Informatic Pentru Evidenta Personalului Si Calculul Salariilor

    CUPRINS: CAP I Introducere……………………………………………………. Motivatia alegerii temei – Obiecive………………….. Sistem informational,sistem informatic……………………………… CAP II Definirea unor notiuni si parametrii economici care intervin in studiul problemelor de personal si salarizare……………………………. 2.1 Angajarea – angajator,angajat – contractul de munca……………… 2.2 Analiza sistemului de calcul, evidenta si controlul salariatilor……. 2.3 Salariul de baza………………………………………………….. 2.4 Determinarea salariului brut…………………………………… 2.5…