PROGRAMUL DE STUDIU CALCULATOARE FORMA DE ÎNV ĂȚĂ MÂNT IF PROIECT DE DIPLOMĂ COORDONATOR ȘTIINȚIFIC ș.l. dr. ing . MAȘTEI DANIELA ABSOLVENT STURZ RAD… [608540]
UNIVERSITATEA DIN ORADEA
FACULTATEA DE INGINERIE ELECTRICĂ ȘI
TEHNOLOGIA INFORMAȚIEI
PROGRAMUL DE STUDIU CALCULATOARE
FORMA DE ÎNV ĂȚĂ MÂNT IF
PROIECT DE DIPLOMĂ
COORDONATOR ȘTIINȚIFIC
ș.l. dr. ing . MAȘTEI DANIELA
ABSOLVENT: [anonimizat]
2016
UNIVERSITATEA DIN ORADEA
FACULTATEA DE INGINERIE ELECTRICĂ ȘI
TEHNOLOGIA INFORMAȚIEI
DOMENIUL / PROGRAMUL DE STUDIU CALCULATOARE
FORMA DE ÎNV ĂȚĂ MÂNT IF
Proiectarea și implementarea
unui ghid turistic online
COORDONATOR ȘTIINȚIFIC
ș.l. dr. Ing. MAȘTEI DANIELA
ABSOLVENT: [anonimizat]
2016
UNIVERSITATEA DIN ORADEA
FACULTATEA DE INGINERIE ELECTRICĂ ȘI TEHNOLOGIA INFORMAȚIEI
DEPARTAMENTUL CALCULATOARE ȘI TEHNOLOGIA INFORMAȚ IEI
TEMA___
Proiectul de finalizare a studiilor a student: [anonimizat]
1). Tema proiectului de finalizare a studiilor:
Proiectarea și implementarea unui ghid turistic onli ne
2). Termenul pentru predarea proiectului 5.07.2016
3). Elemente inițiale pentru elaborarea proiectului de finalizare a studiilor
HTML5, PHP, MySql, JavaScript, jQue ry, CSS3.
4). Conținutul proiectului de finalizare a studiilor
Introducere
Capitol ul I. Fundamentare teoretic ă
Capit olul II. Tehnologii utilizate
Capi tolul III. Prezentarea aplicației
Concluzii
Bibliografie
5). Material grafic: prezentare Power Point
6). Locul de documentare pentru elaborarea proiectului: Biblioteca Universit ății Orade a,
Biblioteca județeană, internet , lucrări de laborator.
7). Data emiterii temei 1.10.2015
Coor donator științific
ș.l. dr. ing. Maștei Daniela
Cuprins
Introducere ………………………….. ………………………….. ………………………….. ………………………….. …… 6
Capitolul 1. ………………………….. ………………………….. ………………………….. ………………………… 7
Fundamentare teoretica ………………………….. ………………………….. ………………………….. ……… 7
1.1 Baze de date ………………………….. ………………………….. ………………………….. …………………….. 7
1.1.1 Tipuri de date în MySQL ………………………….. ………………………….. ………………………….. . 8
1.1.2 Crearea unei tabele în baza de date ………………………….. ………………………….. ………….. 9
1.1.3 Inserarea datelor în baza de date ………………………….. ………………………….. ……………… 9
1.1.4 Modificarea tabelelor ………………………….. ………………………….. ………………………….. ….. 9
1.1.5 Ștergerea de înregistrări din baza de date ………………………….. ………………………….. ….. 9
1.1.6 Eliminarea unor tabele di n baza de date ………………………….. ………………………….. ……. 9
1.1.7 Ștergerea unei baze de date ………………………….. ………………………….. …………………….. 9
1.2 Aplicatii web ………………………….. ………………………….. ………………………….. ………………….. 10
Capitolul 2. ………………………….. ………………………….. ………………………….. ………………………….. …. 12
Tehnologii utilizate ………………………….. ………………………….. ………………………….. ………………….. 12
2.1 HTML5 ………………………….. ………………………….. ………………………….. …………………………. 12
2.1.1 Nivelul de suport ………………………….. ………………………….. ………………………….. ………. 13
2.1.2 Structură și semantică ………………………….. ………………………….. ………………………….. .. 13
2.1.3 Aplicații cache offline ………………………….. ………………………….. ………………………….. … 13
2.1.4 Drag and Drop ………………………….. ………………………….. ………………………….. ………….. 13
2.1.5 Geolocation ………………………….. ………………………….. ………………………….. ……………… 13
2.1.6 Audio și video ………………………….. ………………………….. ………………………….. …………… 14
2.1.7 Formulare de introducere ………………………….. ………………………….. ………………………. 14
2.2 CSS3 ………………………….. ………………………….. ………………………….. ………………………….. …. 14
2.3 SQL ………………………….. ………………………….. ………………………….. ………………………….. ….. 16
2.4 JavaScript ………………………….. ………………………….. ………………………….. ………………………. 17
2.5 JQuery ………………………….. ………………………….. ………………………….. ………………………….. . 17
2.6 PHP ………………………….. ………………………….. ………………………….. ………………………….. ….. 19
2.7 XAMPP ………………………….. ………………………….. ………………………….. …………………………. 20
2.8 Notepa d++ ………………………….. ………………………….. ………………………….. ……………………… 21
Capitolul 3 . Prezentarea aplicației ………………………….. ………………………….. ………………………….. . 22
3.2 Administrarea aplicației ………………………….. ………………………….. ………………………….. …… 22
3.3 Baza de date ………………………….. ………………………….. ………………………….. …………………… 23
3.4 Interfața aplicației web ………………………….. ………………………….. ………………………….. …….. 25
3.4.1 Interfața utilizator ………………………….. ………………………….. ………………………….. …….. 25
3.4.2 Interfața de administrare ………………………….. ………………………….. ……………………….. 30
Concluzii ………………………….. ………………………….. ………………………….. ………………………….. 36
Bibliografie ………………………….. ………………………….. ………………………….. ………………………. 37
6
Introducere
Tema lucrării este “ Proiectarea și implementarea unui ghid turistic online ”.
Am ales această temă deoarece sunt pasionat de turi sm și de plimbări în zonele
montane și pentru că astfel am dorit, să îmi îmbogățesc cunoștințele cât și în programare,
web design ș i baze de date.
Această lucrarea reprezintă rezultatul cunoștințelor acumulate de -a lungul celor patru
ani de studiu la orele de curs și de laborator dar și în stagi ile de practică organizate d e
facultate la firmele de specialitate.
Scopul acestei aplicații este în principal acela de promovare a zonei și de informare în
legătură cu facilitațile acesteia și cu posibilitățile de cazare și parcurgerea traseelor turistice.
Pentru a realiza această aplicație am folosit următoarele limbaje d e programare:
HTML, CSS, PHP, MyS QL, JavaScript, Jquery.
Acest site este util pentru:
– Promovarea turistică a unei zone montane
– Acces la informații pentru utilizatori
– Informarea turiștilor cu privire la locație, cazare și transport
Lucrarea este structurat ă în trei capitole:
– Fundamentare teoretică
– Tehnologii utilizate
– Prezentarea aplicației
7
Capitolul 1.
Fundamentare teoretica
1.1 Baze de date
O bază de date este o colecție de date bine structurate și organizate. Principalele roluri
ale bazelor d e date sunt: stocarea sau memorarea datelor și organizarea sau structurarea
datelor.
Bazele de date ne permit memorarea unor cantități foarte mari de date, dar și regăsirea
datelor cu ajutorul unor criterii de căutare(care sunt legate intr -un mod direct de structurarea
datelor), dar și prelucrarea unor volume mari de date(ordonare,agregare și filtrare) .
Cel mai regasit tip de baze de date este cel relațional, unde datele sunt retinute
în tabele. Pe lânga tabele, o bază de date relațională mai poate conține: indecși, proceduri
stocate, declanșatori, utilizatori și grupuri de utilizatori, tipuri de date, mecanisme de
securitate și de gestiune a tranzacțiilor.
Bazele de date relaționale sunt un tip de baze de date în care datele, văzute ca și
atribute ale enti tăților reale, sunt socate în tabele și sunt legate între ele prin relații, acestea
reprezentand o asociere între două entități. [1]
Deoarece modul de structurare a datelor este bazat pe legături le între date, bazele de
date relaționale permit eliminarea r edundanței, astfel încât stocarea și, mai ales, modificarea
unei informații se face într -un singur loc, iar, din punct de vedere funcțional, această structură
permite regăsirea , filtrarea , ordonarea și agregarea datelor, în mod natural.
MySQL este un sist em de management al bazelor de date relaționale (RDBMS), ce nu
conține interfață grafică pentru administrarea sau gestionarea datelor din bazele de date.
Utilizatorii pot folosi instrumente de linie de comandă, aplicații desktop sau aplicații web cu
care s e pot administra și crea baze de date MySQL.
În limbajul de programare PHP există funcț ii pentru toate o peraț iile care se pot
executa asupra bazelor de date MySQL.
Administrarea MySQL se poate face în două moduri: din linie de comandă sau
folosind browse rul și accesând aplicația numită PHPMyAdmin scrisă î n PHP.
MySQL este componentă integrată a platformelor XAMPP. A fost lansat inițial în
anul 1996, iar denumirea este dată după numele fiicei autorului și co -fondatorului Michael
Widenius, My și SQL (Struc tured Query Language). MySQL poate fi rulat pe multe dintre
8
platformele software existente: AIX, FreeBSD, GNU/Linux, Mac OS X, NetBSD, Solaris,
SunOS, Windows 9x/NT/2000/XP/Vista. [2]
Cele mai utilizate operaț ii cu bazele de date sunt:
Comand ă Semnificaț ie
CREATE Cu ajutorul căreia se cre ează o bază de date sau un tabel
DROP Cu ajutorul căreia se șterge o bază de date sau un tabel
INSERT Cu ajutorul căreia se inserează înregistrări î n tabel
DELETE Cu ajutorul căreia se șterg î nregistrări din tabel
UPDA TE Cu ajutorul căreia se updateaza datele dintr -o baz ă
SELECT Cu ajutorul căreia se selectează un tabel
ALTER Cu ajutorul căreia se altereaz ă un tabel
[18]
Utilizatorii unei baze de date pot efectua mai multe operații asupra datelor:
Inserarea de date ( insert )
Ștergerea de date ( delete )
Modificarea datelor ( update )
Citirea bazei de date ( query ) pentru a extrage anumite date
Bazele de date relaționale sunt de departe cel mai folosit tip de baze de date. Acestea au
o bază teoretică solidă în algebra relați onală.
1.1.1 Tipuri de date în MySQL
În limbajul MySQL întâlnim mai multe tipuri de date:
Tipul de date Descriere
TYNYINT Număr întreg mic
SMALLINT Număr întreg mic
MEDIUMINT Număr întreg
INT Număr întreg
VARCHAR Conținutul este de tip text( max. 256 de caractere)
TEXT Conținutul este de tip text
9
1.1.2 Crearea unei tabele în baza de date
Mai înainte de a face vreo operațiune cu baza de date, trebuie să creăm o tabelă. O
tabelă reprezintă o secțiune a bazei de date pentru stocarea unor informații str ucturate. Într -o
tabelă vom defini diferite câmpuri care vor f i folosite în acea tabelă.
1.1.3 Inserarea datelor în baza de date
Înainte de a putea face o mulțime de lucruri cu baza de date trebuie să stocăm niște
date în ea. Acest lucru se face de obice i cu instrucțiunea INSERT.
Fiecare linie din tabelă descrie de obicei un obiect sau o relație din lumea reală, iar
valorile din coloane pentru acea linie stochează informații d espre obiectul din lumea reală.
1.1.4 Modificarea tabelelor
În afară de actual izarea liniilor, este posibil să se modifice și structura tabelelor din
baza de date. În acest scop se folosește instrucțiunea ALTER TABLE.
Dacă este specificată clauza IGNORE și încercăm să efectuăm o modificare în urma
căreia vor apărea chei primare iden tice, prima va fi trecută în tabela modificată, iar restul vor
fi șterse. [15 ]
1.1.5 Ștergerea de înregistrări din baza de date
Ștergerea de linii dintr -o bază de date este o operațiune foarte simplă. Pentu această
operație se folosește comanda DELETE. [15]
1.1.6 Eliminarea unor tabele din baza de date
Uneori se dore ște să se șteargă o întreagă tabelă. Acest lucru se poate face cu
instrucțiunea DROP TABLE.
Această instrucțiune va șterge toate liniile din tabelă și va șterge chiar și tabela, deci
trebuie utilizată cu mare atenție. [15 ]
1.1.7 Ștergerea unei baze de date
Pentru eliminarea întregii baze de date există instrucțiunea DROP DATABASE.
10
Această instrucțiune va șterge toate liniile, toate tabelele, toate indexurile și baza de
date, deci trebuie folo sită cu multă atenție.
În realizarea aplicației de față am folosit phpMyAdmin, reprezentâ nd un amplu sistem
de gestiune a bazelor de date relaț ionale MySQL. [15]
1.2 Aplicatii web
Interconectarea rețelelor de comunicație la nive lul întregului glob nu a r epreze ntat
numai o realizare tehnică deosebită, care a impulsionat dezvoltarea puternică a industriei IT și
a industriei telecomunicațiilor, ci și redefinirea conceptului de comunicare interumană. Astăzi
“răsfoim” ziarele, facem cumpărături sau urmăm un cu rs de instruire stând comod în fața
calculatorului de acasa și n -au trecut decât 20 de ani de când aceste lucruri existau doar în
literatura științifico -fantastică.
Cel mai popular serviciu oferit de rețeaua Internet este, fără îndoială, spațiul World
Wide Web (WWW sau 3W), o uriașă rețea de informații care permite stocarea și accesarea
documentelor hipertext, utilizând protocolul de transfer al fișierelor hipertext (HyperText
Transfer Protocol). [3]
12 septembrie 1990 este considerată ziua oficială de naș tere a spațiului WWW, odată
cu apariția primei aplicații grafice capabile să acceseze documentele hipertext.
Primul navigator ce permitea afișarea elementelor grafice a fost NCSA Mosaic , urmat
la scurtă vreme de celebrul Netscape Navigator . Odată cu mărir ea exponențială a numărului
de servere din spațiul WWW și cu orientarea software -ului către aplicațiile cu interfață
grafică , au fost dezvoltate numeroase navigatoare. În momentul de față, cele mai utilizate
navigatoare sunt: Google Chrome, Mozilla FireFox , Internet Explorer și Opera .
Web -ul beneficiază de infrastructura rețelei Internet, de conceptele si protocoalele de
transmitere a datelor care fac Internetul să funcționeze: modelul client -server și familia de
protocoale TCP/IP.
Întreaga istorie a spaț iului WWW este strâns legată de evoluția conceptului de
hypertext de la stadiul de simplă tipăritură electonică care diferită prea puțin de tipăriturile
clasice, la stadiul de hipermedia, cel care permite înglobarea în cadrul unui document a mai
multor med ii de stocare și transmitere a informației.
Navigatorul(browserul) este o aplicație cu aju torul căreia traversarea unui si stem
hypert ext sau hypermedia este posibilă . Navigatorul este o aplicație client, care executată de
11
pe un calculator personal, negoci ază transferal datelor cu aplicați a de tip server, care se
execută pe un calculator gazdă (host). [3]
Documentul hipermedia este din punct de vedere practic un ansamblu compus din:
Fișiere text, ce conțin informația de tip text a documentului precum și
informațiile privind scopul, structura documentului ș i informații de legătură cu fișierele
multimedia. Se utilizează un sistem de marcare, asemănător sistemului folosit în tipografii,
numit limbajul HTML – Hypertext Markup Language .
Fișiere ce conțin imag ini statice, sunet e, video sau aplicații. Memorarea datelor
este realizată în funcție de tipul mediului folosit, existând diverse formate de stocare gratuit e
sau proprietare. Ca și exemple putem aminti f ormatele cele mai popular e pentru memorarea
graficii precum JPEG, GIF și PNG, iar pentru sunet WAV, MP3, VMA, MIDI. Limbajele de
marcare nu sunt limbaje de programare în sensul uzual, deci nu utilizează formulări
imperative – instrucțiuni – în stocarea și accesarea informației. Limbajele de marcare
utilizeaz ă etichete ( labels ) sau marcaje ( tags), care definesc:
structura unui document, prin delimitarea secțiunilor documentului și a relațiilor
dintre acestea;
modul de prezentare a secțiunilor documentului.
O aplicație web este un program care rulează într -un browser web și este creata într –
un limbaj de programare interpretabil de către browser (cum ar fi o combinație de JavaScript,
HTML și CSS), și se bazează pe un browser web pentru interacțiune. Aplicațiile Web sunt
populare din cauza omniprezenței brows erelor web și comoditatea de a folosi un browser web
ca și client. Capacitatea de a actualiza și menține aplicații web fără distribuirea și instalarea
software -ului pe potențial de mii de calculatoare client este un motiv cheie pentru
popularitatea lor. O alta mare calitate a aplicaților web o reprezinta faptul ca sunt imune la
schimbarea sistemelor de operare (Windows/Linux/Machintos, etc.). Aplicațiile web sunt
disponibile oricând, 24/7 de la orice terminal conectat la internet, oferind astfel o
accesibilitate de ne -egalat.
Prin intermediul unei aplicatii online se pot stoca, gestiona, modifica, trimite, primi si
procesa informatia folosind conectivitatea internerului, folosind mai multi utilizatori, mai
multe statii de lucru si mai multe procese in acelasi timp. Deoarece re aplicatia este bazata pe
internet nu exista incompatibilitati hardware, virusi, aplicatia si informatia fiind stoc ate pe un
server securizat. [3]
12
Capitolul 2.
Tehnologii utilizate
2.1 HTML5
HTML5 este un limbaj pentru structurarea și prezentarea conținutului pentru World
Wide Web , fiind cea de -a 5-a revizuire a limbajului HTML(creat in 1990 și standardizat în
1997 ca HTML4) și este în curs de dezvol tare încă din octombrie 2011.
Ceea ce cunoaștem astăzi sub nume le de HTML5: un ansamblu de tehnologi i care
constituie web -ul modern si fac posibile crearea de conținuturi multimedia, animații și
aplicații tot mai sofis ticate. Pentru cei mai neinițiați , acest termen reprezint ă tot ceea ce se
poate face cu tehnologiile web moderne, chiar dacă uneori “trucul” respectiv se datorea ză mai
mult CSS3, de exemplu.
Standardul HTML5 a fost publicat de către W3C ca Working Draft în anul 2008, un
nou stadiu de „Recomandare W3C” fiind așteptat în anul 2014. WHATWG continuă să
lucre ze la HTML, dar renunță la versionare . În acest mod , specificațiile pentru HTML sunt
considerate un „ standard viu”, limbajul HTML5 rămânând doar un instantaneu al evoluției
sale.[2 8]
Creatorii st andardului și -au propus să păstreze lucrurile cât mai simple cu putință,
ușurând munca dezvoltatorilor:
un document HTML5 , pentru a putea fi valid are nevoie d e un doctype foarte
simplificat față de HTML 4 sau chiar XHTML ( <!DOCTYPE html> )
unele atribute acum nu mai sunt obligatorii , simplificân d și mai mult codul
necesar , de exemplu, type pentru <script> sau <link rel="stylesheet">
de asemenea au fost adoptate și unele elemente noi urmărind practicile uzuale
precum <header> , <footer> , <nav>
regulile de co nformitate nu mai sunt atât de stricte, autorii fiind mai liberi , putând
chiar să omită împrejmuirea atributelor cu ghilimele, de exemplu (atâta vreme cât
acestea nu conțin spații).
HTML5 a fost conceput pentru a fi compatibil și cu versiunile anterioare, ca urmare,
orice document care este valid pentru HTML 4 sau XHTML este valid și pentru HTML5,
atâta timp cât folosește doctype -ul nou. Acest lucru este c onvenabil deoarece înseamnă că nu
trebuie să o luăm de la capăt și să uităm tot ce știm despre HTML.
13
2.1.1 Nivelul de suport
HTML5 nu este implementat de niciun browser în totalitate deoarece nu este finalizat
nici ca instantaneu . Chiar și în aceste condiții, t oate browserele moderne oferă suport pentru
anumite funcționalități și chiar dacă implementările diferă câteodată, multe pot fi folosite
chiar și astăzi. Site -uri precum Modernizr , care este o bibliotecă JavaScript, detectează
funcționalitățile HTML5 și CSS3 suportate de browserul vizitatorului, oferind astfel
dezvoltatorului posibilitatea de a furniza soluții de rezervă în cazurile în care suportul
lipsește.
2.1.2 Structură și semantică
Odată cu apariția CSS -ului rolul HTML a fost limitat la a defini structura unui
docu ment, nu și aspectul său vizual. HTML5 pune și mai mult accent pe semantică,
introducând noi elemente care dau posibilitatea autorilor de a defini mai specific părți ale
documentului. În acest fel, el va putea fi înțeles și procesat mai bine de către terți, ca
motoarele de căutare sau programele care asistă persoanele cu lipsuri de vedere.
2.1.3 Aplicații cache offline
Aplicațiile HTML5 pot fi pornite pentru a rula offline. HTML5 oferă funcția de
stocare offline, numit un cache al cererii pentru stocarea de fișiere. Deci, dacă utilizatorul este
offline, browser -ul încă mai are acces la fișierele necesare. Acesta poate fi HTML, CSS,
Javascript, sau oricare alte resurse necesare pe ntru a vizualiza pagina de web.[3]
2.1.4 Drag and Drop
HTML5 include o funcție Drag and Drop, care permite dezvoltarea de aplicații
interactive. Cu Drag & Drop avem posibilitatea să mutăm orice element în locul dorit. [3]
2.1.5 Geolocation
Geolocation API în HTML5, ne permite să partajam locația cu site -uri de încredere,
confidențialitatea fiind importantă în funcția de ge olocalizare. Browser -ele nu au nevoie să
trimită informații despre locație la site -uri web, fără permisiunea utilizatorului. Browser -ul va
cere permisiunea, dacă utilizatorul dorește să împărtășească locația lui, iar dacă utilizatorul
consimte, Firefox va aduna informații despre punctele de acces fără fir din apropiere și adresa
14
IP a computerului vizitatorilor și va trimite aceste informații în Google Location Services,
care este un serviciu de geolocalizare Firefox implicit, altfel, nu va împărtăși loca ția. [3]
2.1.6 Audio și video
În prezent, există facilități HTML necesare pentru punerea în aplicare a fișierelor
multimedia. De aceea, fișierele media se includ în HTML folosind diferite plugin -uri, dar cu
HTML5, acest lucru poate fi făcut foarte ușor, cu aj utorul elementelor audio și video, fără
utilizarea de plugin -uri. [3]
2.1.7 Formulare de introducere
HTML5 introduce multe elemente noi de intrare, cum ar fi selectoare de culori, pop –
up calendare și multe altele. Cu aceste funcții de intrare se poate crea o formă eficientă, cu un
control mai bun al intrării și verificării. [3]
Toate aceste funcții fiind utile în realizarea aplicației web. La realizarea aplicației web,
am utilizat numeroase elemente HTML cu scopul de a realiza o interfață cât mai aspectuoasa ,
elemente pentru editarea și structurarea formei, mărimii și culorilor de text. Pentru marcarea
unor titluri și subtitluri, existente în codul HTML, am utilizat etichetele <h1>,<h2>,<h3>,
grosimea fontului am stabilit -o utilizând eticheta <strong>, însă p entru a da textului culoare,
mărime, sau un tip de font, am folosit stiluri CSS .
2.2 CSS3
CSS este un acronim, acesta provenind de la Cascading Style Sheets, iar CSS3 este
cel mai nou standard CSS. Acesta a fost împărțit în “module”. Specificațiile vech i au fost
separate în părți mai mici, iar noile specificații au fost de asemenea adaugate. [4]
Cele mai importante module CSS3 sunt:
Selectoarele (Selectors)
Model casetă (Box Model)
Fundaluri și Borduri (Backgrounds and Borders)
Efecte Text (Text Effects)
Transformări 2D/3D (2D/3D Transformations)
Animații (Animations)
Aspect Multi -Coloană (Multiple Column Layout)
Interfața Utilizator (User Interface)
Deși au apărut unele deficiente de compatibilit ate intre browsere, majoritatea
proprietăților CSS3 au fo st implementate cu succes in variantele browserelor noi.
15
Avantajele CSS :
– controlul layoutului documentelor dintr -o singura pagina de stiluri,
– controlul mai exact al layoutului,
– aplicare de layouturi diferite pentru tipuri media diferite (e cran, printare, etc),
– tehnici numeroase si sofisticate. [5]
Un lucru foarte important de știut înainte de a începe utilizarea acestor proprietăți, este
faptul că nu toate browser -ele web suportă aceste stiluri, iar de cele mai multe ori, vom fi
nevoiți să apelăm la prefixarea acestora, în funcție de suportul în dif erite browsere.
Prefixele pe care le vom apela în funcție de browser sunt:
-webkit – Specific browser -elor Webkit (Google Chrome, Safari și, în curând, Opera);
-moz- Specific browser -ului Mozilla Firefox;
-ms- Specific browser -ului Internet Explorer;
-o- Specific browser -ului Opera. [6]
Cu ajutorul CSS-ului putem crea pagini web simple dar si complexe folosind efecte
diverse. Cu CSS putem stabili culoarea, marimea si fontul textului, deasemenea putem crea
un layout (un suoport pentru elementele HTML) perso nalizat adaugand margine culoare sau
imagine de fond si multe altele. In concluzie CSS te poate scapa de multe batai de cap,
ajutandute in a mentine codul html cat mai simplu si mai ordonat. [6]
Funcționează cu HTML, însă nu este HTML. El extinde funcționalitățile HTML,
permițând redefinirea etichetelor HTML existente.
Un dezavantaj ar fi că unele browsere web nu sunt compatibile cu CSS, astfel că
documentele HTML sunt afișate ca și cum CSS n-ar exista, dar cele mai cunoscute și utilizate
browsere, cum ar fi: Mozilla Firefox, Google Chrome, Opera, și altele, sunt compatibile CSS.
[7]
În cazul aplicaț iei realizate, am folosit un fișier inclus extern cu extensia .css, acest
lucru a re prezentat un element important î n facili tatea muncii, folosind proprietăț i pentru
toate elementele din ca drul aplicației într -un singur fiș ier. Am folosit ele mente CSS pentru
stilizarea conț inutului, cum ar fi: width (determinarea lungimii elementelo r HTML), heigth
(determinarea lăț imii elementelor HTML), margin: 0 auto (pentru centrarea elementelor î n
mijlocul div -ului din care fac parte acestea) dar și margin -left/right, margin -top/bottom,
padding -left/right, padding -top/bottom la toat e acestea atribuindu -le valori în em (unitate de
măsură recomandată de W3C).
16
2.3 SQL
Limbajul SQL (Structured Query Language) este în prezent unul din cele mai
puternice limbaje structurate pentru interogarea bazelor de date relaționale. Este un limbaj
neprocedural și declarativ deoar ece utilizatorul descrie ce date vrea să obțină, fără a fi nevoie
să stabilească modalitățile de a ajunge la datele respective. [8]
Este un limb aj de programare specific manipulării datelor în sistemele de manipulare
a baze lor de date relaționale (RDBMS). La origine este un limbaj bazat pe algebra relațională.
Acesta are ca scop inserarea datelor, interogații, actualizare și ștergere, modificarea și crearea
schemelor, precum și controlul accesului la date. [8]
Instrucțiunile SQL pot fi grupate în:
instrucți uni de definire a datelor, care permit descrierea structurii BD
instrucțiuni de manipulatea datelor: adaugă, șterge, modifică înregistrări
instrucțiuni de selecție a datelor, care permit consultarea BD
instrucțiuni de procesarea tranzacțiilor
instrucți uni de control al cursorului
instrucțiuni pivind controlul accesului la date
A devenit un standard în domeniu (standardizat ANS I- ISO), fiind cel mai popular
limbaj utilizat pentru crearea, modificarea, regăsirea și manipularea datelor de către sistemele
de gestiune a bazelor de date relaționale. Pe lângă versiunile standardizate ale limbajului,
există o mulțime de dialect e și variante, astfel sistemele de gestiune a bazelor de date sunt
prevăzute cu diverse extensii. [8]
SQL permite atât accesul la conținutul bazelor de date, cât și la structura acestora.
Există 3 metode de bază privind implementarea limbajului SQL:
Apelar e directă (Direct Invocation): instrucțiunile sunt introduse direct de la
prompter
Modulară (Modul Language): folosește proceduri apelate de programele
aplicației
Incapsulată (Embedded SQL): conține instrucțiuni încapsulate în codul de
program
La aplicaț ia realizată am folosit atât metoda încapsulată de apelare a instrucțiunilor
SQL pentru manipularea datelor, cât și apelarea directă pentru executarea instrucțiunilor de
creare a bazei de date împreună cu constrângerile definite pentru aceasta.
17
2.4 JavaSc ript
JavaScript este un limbaj de programare orientat pe obiect e bazându -se pe conceptul
prototipurilor . Este folosit mai ales pentru introducerea unor funcționalită ți în paginile web,
codul Javascript din aceste pagini fiind rulat de către browser . [9]
Limbajul este binecunoscut pentru folosirea sa în construirea paginilor de internet,
fiind fo losit și pentru accesul la obiecte încadrate ( embedded objects ) în alte aplicații. A fost
dezvoltat inițial de către Brendan Eich de la Netscape Communications Corporation sub
numele de Mocha, apoi Live Script, și denumit în final JavaScript. [9]
Pentru a insera JavaScript într -un document HTML deja existent, este necesară
introducerea în fișier a etichetelor <script> și </script> . Această etichetă necesită aributul "
type ", sau atributul " language " ( acesta d in urmă este depreciat î n standardul XHTML)
care va specifica browserului limbajul folosit pentru interpretarea codului inclus.
JavaScript organizează toate elementele unei pagini web într -o ierarhie. Toate
elementele sunt văzute ca obiecte , ș i fiecare obiect are anumite proprietăți ș i metode. Cu
JavaScript putem manipula uș or obiectele. Pentru aceasta, este importantă întelegerea ierarhiei
obiectelor HTML. JavaScript intelege fereastra browser -ului ca pe un obiect “window”;acesta
conține anumite elemente, cum ar fi de exemplu “bara de stare”.În fereastra browser -ului,
putem încărca/afișa un document HTML.Pagina din interiorul browser -ului este un obiect
document. [10]
Chiar dacă se aseamănă din punct de vedere al sintaxei și al numelui, în a fara unor
similarității, între JavaScript și limbajul Java nu există nici o legătură. Asemeni Java,
JavaScript are o sintaxă asemănătoare cu cea a limbajului C , dar are mai multe lucruri în
comun cu limbajul Self decât cu Java. [10]
JavaScript se folosește pentru scriptarea paginil or HTML, adică introducerea unor
scripturi, cum ar fi: verificarea datelor introduse de utilizator, efecte de animație etc. [10]
La realizarea acestei aplicații am folosit JavaScript pentru slideshow -ul care este
poziț ionat sub meniu ș i la calendarul de pe prima pagina, atât în mod utilizator cât ș i pentru
administrator .
2.5 JQuery
jQuery este o librărie Javascript ca și mootools, prototype, script.aculo.us etc.
jQuery e centrat pe lucrul si manipularea elementelor HTML si CSS in pagina web. Are de
asemenea utilitati Ajax pentru transmitere de date la server, functii pt. lucru cu obiecte, array
si evenimente.
18
Aproape toate scripturile facute cu jQuery functioneaza la fel in principalele
navigatoare web. [11]
jQuery are o documentație bine elaborată, bine str ucturată și ușor de înțeles, așa încât
să se poată introduce repede cod pe pagina de web. În plus, are o promovare foarte mare,
unde se pot găsi tutoriale, cod gata făcut, plugin -uri, la tot pasul.
jQuery se poate folosi pentru a rezolva numeroase probleme specifice programării
web din care amintim următoarele :
– selecții de elemente în arborele DOM folosind propriul motor de selecții open source
Sizzle, un proiect născut din jQuery
– parcurgere și modificarea arborelui DOM (incluzând suport pentru selector i CSS 3 și
XPath simpli)
– înregistrarea și modificarea evenimentelor din browser
– manipularea elementelor CSS
– efecte și animații
– cereri tip AJAX
– extensii
– utilităti – versiunea browser -ului, funcția each. [12]
Extensii
Unele dintre cele mai intere sante aspect e ale jQuery sunt plugin -urile sau extensiile.
Datorită arhitecturii jQuery programatorii au posibilitatea de a dezvolta subaplicații bazate în
biblioteca principal ă care exti nd funcțiile principale jQuery cu funcții specifice plugin -urilor.
Datorită acestui lucru biblioteca principală poate ocupa un spatiu foarte mic, iar extensiile
necesare la anumite pagini web po t fi încărcate la cerere, doar în cazul î n care este nevoie de
ele. jQuery oferă utilizatorilor un set de extensii de bază pentru i nteractivitate, mai multe
efecte dar și mai complexe decâ t cele din biblioteca de bază dar și teme de culori. Principalul
avantaj al jQu ery fată de alte extensii este a cela că dezvoltarea dar și testarea acestor
component e se face în paral el cu dezvoltarea bibliotecii principale, astfel minimizându -se
riscul de incompatibilitate.
Orice programator poate crea o extensie și jQuery oferă publicare în catalogul de pe
pagina proiectului în diversele categorii disponibile. [12]
De preferat ar fi să se descarce sc riptul și să fie amplasat pe server pentru a evita
anumite complicații sau alte neclarități. Link -urile de mai sus reprezintă calea către ultima
versiune a librăriei.
19
2.6 PHP
PHP este limbajul de programare ideal pentru construirea de pagini web dinamice, fiind
ușor de învățat, software liber, oferă posibilitatea conectării la mai multe tipuri de baze de
date și poate fi rulat pe mai multe platforme. Cel mai important aspect al acestui limbaj este
însă posibilitatea de a fi combinat cu cod HTML. Astfel pute m crea pagini HTML statice și
din loc în loc, acolo unde avem nevoie, să introducem dinamism cu ajutorul PHP. [13]
Limbajul PHP a aparut în 1994, din nevoia lui Rasmus Lerdorf de a afla de câte persoane
îi este vizitat CV -ul online. El a denumit setul de scripturi create PHP, acronimul pentru
Personal Home Page, dar în următorii trei ani limbajul a evoluat, iar adevăratul succ es a
început să îl cunoască de când Zeev Suraski și Andi Gutmans au rescris motorul PHP de la
cap la coadă, motor care poartă din ver siunea 4 a PHP -ului numele Zend . [13]
Fiind open -source, PHP beneficiază de un suport activ din partea comunității online,
acesta fiind probabil și motivul creș terii exp lozive a numă rului site -urilor bazate pe PHP.
Interpretorul PHP este cel mai cunosc ut limbaj de scripting folosit î n acest moment
pentru creare a site -urilor Web interactive. Denumirea este un "acronim recursiv" pentru
Hypertext PreProcessor. Diferența esențială față de alte limbaje de scripting (gen JavaScript)
este faptul că PHP este un interpretor server -side Pent ru a putea testa pagini PHP ave ți nevoi e
de un server de web (Apache) ș i de pachetul PHP instalat. [13]
Popularitatea de care se bucură acest limbaj de programare se datorează următoarelor
carac teristici :
Familiaritatea
Simplitatea
Eficiența
Securitatea
Flexibilitatea
Gratuitatea
Dezvoltarea PHP -ului sub licența open -source a determi nat adaptarea rapidă a PHP –
ului la nevoi le web -ului, eficientizarea și securizarea codului. [14]
Când accesăm o pagină HTML serverul c are o găzduiește trimite pagina HTML către
browser spre afișare. În cazul unei pagini PHP serverul citește codul PHP, îl interpretează și
generează dinamic pag ina HTML care este trimisă browserului spre afișare. Acesta este
motivul pentru care unii utilizatori folosesc PHP și pentru construirea unor pagini cu conținut
dinamic.
20
Fișierele PHP au extensia php. Fișierele p ot fi scrise cu orice editor de texte. Es te
preferat Notepad++ datorită faptu lui că pune în evidență sintaxa limbajului. Există și editoare
ce oferă mai mul te facilități (help interactiv, apel debugger, etc) cum ar fi eclipse php sau cele
oferite de Zend. Când PHP – ul parcurge un fișier de fap t "citește" textul până când întâlnește
una din etichetele speciale care -i spun să înceapă să interpreteze textul ca pe cod PHP. Se
executată codul până când este întâlnită eticheta de închidere. Apoi se "citește" din nou
textul mai departe. Acesta este motivul pentru care se poate adaugă cod PHP în interiorul
HTML -ului. [14]
2.7 XAMPP
Este cel mai popular mediu de dezvoltare PHP, o distribuție Apache, total gratuit, ușor
de instalat și conține MySQL, PHP și Perl. XAMPP a fost creat pentru a fi ușor de in stalat și
folosit, fiind configurat cu toate facilitătile active. În present există distribuții pe ntru
Windows, Linux și OS X. [16]
XAMPP este o compilație gratuită de "software" (comparabilă cu o distribuție de
Linux), este gratuit și este permisă copier ea în conformitate cu termenii GNU General Public
Licence. Dar numai compilația XAMPP este publicată sub licenta GPL. [16]
Figura 2 .7.1
Securitatea în XAMPP:
XAMPP nu a fost inten ționat pentru produc ție, ci doar pentru dezvoltare, pentru a
crea un mediu care s ă faciliteze dezvoltarea. XAMPP este, in mod implicit, configurat să fie
cat mai deschis și mai putin restrictiv posibil, s ă permit ă dezvoltatorului s ă facă orice are
nevoie.
21
O listă cu câteva dintre lipsurile de securitate ale XAMPP :
● Administratorul MySQL (root) nu are parolă
● Daemonul MySQL este accesibil prin rețea
● phpMyAdmin este accesibil prin rețea
● Exemplele sunt accesibile prin rețea
● Userii pentru Mercury (server ul de mail) si FileZilla (serverul de FTP) sunt
cunoscuți
Este recomandat ă securizarea XAMPP inainte de a publica orice online. Un firewall
sau un router extern nu sunt de ajuns, ci doar furnizeaz ă un nivel sc ăzut de securitate. Pentru
mai mult ă securitate , se poate rula Consola de Securitate XAMPP, si acolo se pot asocia
parole.[17]
Cu acest program mi -am pornit serverul Apache de care dispune, pentru a putea vedea
modificările și funcționarea site -ului, și MySQL pentru lucrul cu baza de date.
2.8 Notepad ++
Notepad++ este un editor de text oferit gratuit de către Microsoft Windows și care
este găzduit la Sourceforge. Acest editor de tex t permite editarea codului sursă specific mai
multor limbaje de programare cum ar fi: C, C++, Pascal, C#, HTML, PHP.
Principalele facilități ale acestui editor sunt :
Colorare sintactică pentru 48 de limbaje de programare ( care se pot modifica de
către utilizator);
Posibilitatea tipăriri color a codului sursă (WYSIWYG);
Autocompletare = deducerea și întregirea automată a cu vântului de cod din
biblioteca utilizată;
Interfață cu mai multe ferestre (utilizează tab -uri);
Suport pentru căutări/înlocuiri cu expresii regulate PERL;
Suport pentru macroinstrucțiuni. [17]
Edito rul de text Notepad++ se bazează pe motorul Scintil la, și este programat în
C++ și utilizând Win32 API și biblioteca STL, a stfel se asigură un timp de
execuție rapid dar și un consum redus de resurse.
Cu acest program mi -am creat aplicaț ia.Tot codul html, html5, css3, JavaScript,
jQuery și PHP le -am scris î n acest editor .
22
Capitolul 3. Prezentarea aplicației
3.1 Structura website -ului
Scopul implementă rii acestui site este promovarea comunei Bratca . Este un site cu
caracter informativ dar care oferă și posibilitatea comunicării cu un ghid local .
Site-ul conține atât partea de front -end care reprezintă interfața pentru utilizatori cât ș i
o parte de b ack-end pentru manag ementul conținutului, interfaț a pentru administ ratori.
Structura webstite -ului este aproximativ aceeași atât pentru utilizatori cât și pentru
administrator. Administratorii au și posibilitatea logării. În momentul în care sunt logați
aceștia vor avea și po sibilitatea inserării, ștergerii si actualizării informațiilor pe pagini.
Figura 3.1.1 Harta site -ului
3.2 Administrarea aplicației
Administrarea este un aspect i mportant pentru o aplicație web și a fost impl ementată
în cad rul aplicației doar pentru administratori, doar acestia au posibilitatea modificării
conținutului paginilor cu condiția să fie logați . Cu toate că această aplicație este concepută în
principal pentru prezentare și info rmare, partea de administrare poate fi benefică deoarece o
aplicație web actualizată poate convinge vizitatorii și să le confere încredere.
Deoarece principal ul scop al unui portal este acela de a informa utilizatorii cu privire
la nout ațile care apar în viaț a de zi cu zi, adminis trarea acestui portal trebuie să se facă zilnic .
Administratorul website -ului administreaz ă paginile statice dar ș i cele dinamice de pe acest
site. Paginile dinamice sunt mult mai uș or de administrat deoarece sunt actualizate din baza
23
de date. Acest site a fost realizat în mare parte din pagini dinamice pentru ca administararea
lui să se facă mai repede.
3.3 Baza de date
Aplicația web utilizează o baza de date creată cu ajutorul sistemului de gestiune a
datelor phpMyAdmin versiunea 3.2.1. N umele bazei de date este „li c_radu” și conține 11
tabele, baza de date fiind ilustrată î n Figura 3 .3.1
Figura 3.3.1 Tabelele bazei de date
Tabelul de admini conține 3 câmpuri id, username și password. Câmpul id_admin
conține codul unic al aministratorilor î n timp ce câmpurile user și parolă conțin numele
aministatorului respectiv parola cu care se autentifică pe site.
Câmpurile user și parola sunt obligatorii la autentificare, dacă unul dintre acestea nu
este completat se va afișa mesajul „ Nu ați completat c âmpurile obligatorii ” iar dacă ambele
câmpuri sunt completate, se verifică dacă user -ul și parola sunt valide. În cazul în care sunt
valide, pe fiecare pagină vor fi afișate și câmpurile pentru administratori iar în cazul în care
nu sunt valide se va afișa mesajul „ Nu sunteți admin”. În figura 3.3.2 este prezentată structura
acestui tabel.
Figura 3.3.2 Tabelul de admini
În figura 3.3.3 este prezentat conținutul tabelului de admini care deocamdată conține
doar o înregistr are.
24
Figura 3.3.3 Conținutul tabelului de adimini
Tabelul message conține 7 câmpuri : id, name, email, subject, message, seen, date.
Aceast tabel pe care l -am și ilustrat în figura 3.3.4 înregistreaza mesajele trimise de către
utilizatorii site -ului precum și numele, email -ul și data la care au fost trimise mesajele către
adiministratorul site -ului.
Figura 3.3.4 Tabelul message
Tabelul room conține 4 câmpuri : id, type, price, locationId. Aces t tabel care apare și
în figura 3.3.5 înregistreaza cererile de cazare trimise de utilizatori, pensiunea unde doresc să
se cazeze și prețul care urmeaza să îl plătească.
Figura 3.3.5 Tabelul room
Tabelul page conține 4 câmpuri: id, title, content, name. Acest tabel înregistreaza atât
numarul paginior prezentate pe site cât și conținutul și numele paginii. Acest lucru se poate
observa în figura 3.3.6.
25
Figura 3.3.6 Tabelul page
3.4 Interfaț a aplicației web
Aplicația a fost creată pentru a fi ușor de utilizat și este destinată oricărui tip de
utilizator. Aceas ta conț ine atât o parte de front -end cât ș i o parte de b ack-end pentru
managementul conținutului, interfaț a pentru administatori.
În următoarele 2 subcapitole voi prezenta cele 2 tipuri de interfețe ale aplicației:
Interfața utilizator
Interfața de adminis trare
3.4.1 Interfața utilizator
Interfața utilizator sau front -end-ul reprezintă partea vizibilă a aplicației, aceasta este
partea în care vizitatorii au acces la conținutul și funcționalitatea site -ului Web, în funcție de
drepturile de acces aferente ca re au fost stabilite în partea de administrare (în acest caz doar
de vizualizare si contact) .
Aplicația web permite vizitatorilor navigarea cu ușurință între pagini, astfel și un
utilizator cu cunoștințe minime în domeniul calculoatoarelor se poate descurc a și poate să
găsească ceea ce caută odată ce a accesat website -ul.
În figura 3 .4.1 este afișată pagina principală a aplicației. Aceasta c onține un meniu
simplu care permite navigarea ușoară pe celelalte pagini, o imagine a cascadei Calului fiind
una dint re principalele obictive turistice da r și o mică descriere a comunei Bratca.
26
Figura 3.4.1 Pagina principală
Meniul din pagina principală conține 7 butoane:
Bine ați venit
Valea Boiului
Pensiunea Mirela
Hanu Brătcuței
Info călători
Cazare
Contact
În prim a pagină am prezentat așezarea geografică a comunei Bratca dar și o mică
hartă după cum puteți observa în figura 3.4.2. Google Maps ne permite să incorporăm o hartă
sau chiar mai multe hărți pe orice pagina web sau î ntr-un simplu document html, pentru asta
nu trebuie decât să selectăm zona dorită de pe hartă și să apăsă m butonul „Link ”. [15]
27
Figura 3.4.2 Hartă
În a doua pagină a site -ului numită Valea Boiului am prezentat cel mai important
obiectiv turistic al comunei Bratca unde tur iștii pot face plimbări în aer liber și pot campa.
Această pagină este o pagină de prezentare în care am adăugat imagini și informații
după cum se poate observa in figura 3.4.3.
Figura 3.4.3 Valea Boiului
28
În următoarele doua pagini Pensiunea Mirela și Hanul Bratcuței am adăugat informații
utile pentru utilizatorii acestui web -site cu privire la cele doua pensiuni , după cumputetți
observa în figururile 3.4.4 respectiv 3.4.5 . În fiecare pagina în parte utlizatorii se pot bucura
de poze ale camerelor în care se pot caza dar și de poze ale împrejurimilor și obiective sau
trasee turistice.
Figura 3.4.4 Pensiunea Mirela
Figura 3.4.5 Hanu Brătcuței
29
Pentru a informa utilizatorul și mai mult am adăugat o pagină Info călători care
afișeaza din baza de date trenurile și ora la care pornesc din: Oradea, Aleșd, Cluj -Napoca,
Brașov și au destinația Bratca după cum puteți vedea in figura 3.4.6 . Am adăugat o astfel de
pagina deoarece în Bratca vin în excursie grupuri mari de turiști cum ar fi elevi sau studenți
iar transportul este mult mai ieftin pe calea ferată.
În implementarea paginii de informare feroviară am creat o baza de date care conți nte
următoarele câmpuri: id, codTren, rangTren, stație_origine, stație destinație.
Acestea conțin informații privind numărul de identificare a trenurilor, stații de
plecare, stații destinație. Acestei baze de date i -am adăugat o interfața cu meniuri drop -down
pentru o cât mai simplă utilizare.
Figura 3.4.6 Info călători
În pagina numită Cazare utilizatorii au posibilitatea de a închiria camere la una din
pensiunile afișate in web -site. Pagina conț ine un formular de închiriere după cum se poate
observa în figura 3.4.7 în care utilizatorii iși aleg din meniurile drop -down data de când
doresc să se cazeze, data plecării dar și la ce peniune doresc să se cazeze și ce fel de cameră
doresc.
În baza d e date formularul de cazare conține 6 câmpuri: id, arrival, departure,
client_id, location_id, room_id.
30
Aceste câmpuri înregistreaza informațiile trimise de utlizatorii care doresc să se
cazeze, printre acestea fiind: data sosirii, data plecării, pensiunea dorită și ce fel de cameră
doresc să închirieze.
Figura 3.4.7 Formular pentru cazare
3.4.2 Interfața de administrare
Interfața de administrare sau back -end-ul aplicației este accesibil administratorului prin
intermediul căr uia se realizează managementul conținutului și gestionarea funcționalităților
de cazare. Administratorul are drepturi depline asupra aplicației, putând astfel administra
orice conținut din aplicație.
Accesul pe interfa ța de administrare se face printr -un formular de autentificare, pe baza
numelui de utilizator și pe baza unei parole. Administratorul poate adăuga, șterge și
modifica/actualiza datele din interiorul aplicației .
Interfața de administrare cu toate facilitățile sale este accesibilă doar în momen tul în care
autentificarea se face cu succes. Dacă nu sunt completate toate câmpurile sau nu sunt
completate corect se vor afișa mesajele de eroare corespunzătoare.
31
În momentul în care autentificarea se face cu succes în colțul din dreapta sus formularul
de autentificare va fi înlocuit cu buton de del ogare încadrat de mesajul „Logarea s -a efectuat
cu succes ” și va fi creată o sesiune nouă pentru acel adiministrator, sesiune care va fi distrusă
în momentul delogării.
Dacă username -ul și parola nu există se va afișa mesajul “Eroare” dacă acestea sunt
greșite atunci se va afișa mesajul “Nume utilizator sau parol ă greșita”.
Am implementat această parte cu ajutorul limbajului php folosind următoarea funcție:
if(isset($user['password']) && md5($_POST['password'] ) == $user['password'] )
{
$_SESSION['message']['text'] = 'Logarea s -a efectuat cu succes';
$_SESSION['message']['type'] = 'ok';
$_SESSION['admin']['nume'] = $user['username'];
header('Location: ./?a=administrare');
exit;
}
După logare se poate observa in figura 3.5.1 că meniul este total schimbat și
administratorul este întâmpinat de mesajul “Panou administrare” respectiv “ Bun venit în
panoul de administrare”.
Figura 3.5.1 Panou de administrare
Pentru a întreț ine ușor site -ul din panoul de administrare se poate modifica conținutul paginilor
, adăuga pagini noi dar și adaugarea imaginilor.
Din meniul Listare Pagini se pot șterge sau edita paginile destinate utilizatorilor, acest lucru se
poate observa in figura 3.5.2.
32
Figura 3.5.2 Listare Pagini
Paginile noi din site se pot adăuga din meniul Pagina noua dupa cum se poate vedea în figura
3.5.3 , se poate adăuga titlul paginii, link -ul dar si conținutul. În figura 3.5.4 voi pr ezenta codul php
folosit pentru ca adăugarea paginilor să fie posibilă.
Figura 3.5.3 Creare pagina noua
33
Figura 3.5.4 Cod php pentru adăugare pagini
La implemntarea acestei funcționalități în site , prima dată se stabileșt e valoarea
variabilei page_title, după care se ia conținutul paginii.
Pentru ca această pagină să fie creată trebuie să primim prin Post următoarele informații:
– Name
– Title
– Content
Aceste informații se salvează într -un array după care se salveaza in baza de date ,
mai exact în tabelul Page.
Dacă crearea paginii s -a efectuat cu succes funcția setMessage va afișa mesajul
“Crearea paginii s -a efectuat cu succes” în caz contrar va fi afișat mesajul de
eroare “ Nu sa putut efectua crearea” .
Mai departe în panoul de administrare este pagina de Galerie unde se găsesc toate
imaginile din pagina și pe lângă acestea și codul html al acestora pentru a le putea adăuga mai
ușor in conținutul paginilor. Fiecare imagine are doua variante una de rezoluție mai mica alta
de rezoluție mai mare după cum se poate observa in figura 3.5.5.
Figura 3.5.5 Galerie
34
Pentru o ușoara administrare în panoul de administrare respectiv in pagina Adaugare
imagine după cum se poate ob serva în figura 3.5.6 se pot adăuga imagini din orice folder al
calculatorului .
Figura 3.5.6 Adăugare imagini
Pentru a funcționa această parte de adăugare imagini am folosit limbajul de programare
php după cum se poate observa în figura 3.5.7.
Atunci când adăugam o poză primul lucru care trebuie făcut este să verificăm dacă există
imagini în isset($_FILES[„image‟]) după care se stabilește calea unde urmează să se salveze
imaginea.
Se verifică dacă fișierul primit e ste de tip imagine, în cazul în care nu este o imagine
funcția setMessage va afișa mesajul de eroare “Fi șierul nu este o imagine ”.
În cazul în care fișierul este o imagine se stabilește un nume pentru aceasta, fiind apoi
mutată în calea dorită.
35
Figura 3.5.7 Cod php pentru adăugare imagini
În partea de administrare a paginii se poate verifica pagina de mesaje unde se
înregistreaza toate mesajele trimise de utilizatori prin formularul de contact. Tot aici se
inregistrea za și cererile de cazare la pensiunile descrise in pagina. În figura 3.5.8 se poate
observa pagina care informează adiministratorul cu privire la cererile de cazare.
Cererile de cazare sunt adăugate în pagină din tabelul rent al bazei de date.
În implemnta rea acestui tabel în pagină am folosit funția isLoggedIn(), care verifică dacă
adminul este logat, și doar atunci se pot afișa cererile de cazare
Figura 3.5.8 Cereri de cazare înregistrate
36
Concluzii
Aplicația proiectată este utilă și contribuie cu succes la informarea vizitatorilor . Este o
aplicaț ie simplă care se adresează atât localnicilor cât și turistilor fiind un mijloc important de
informare din punct de vedere turistic ș i nu numai .
Aplicația curentă este compatibi lă cu toate browserele de pe piață .
Site-ul este foarte bine structurat pentru ca fiecare vizitator să găsească î n cel mai
scurt timp informatia de care are nevoie.
Este utilă deoarece prezintă cele mai importante obictive turistice dar și oferă prilejul
ca utilizatorii sa iși poată închiria online camere la pensiunea dorită și de a afla tariful fiecărui
serviciu oferit de aceste pensiuni.
Implementarea aplicației a fost realizată cu ajutorul tehnologiilor cele mai des
întâlnite în dezvoltarea de aplicații web, cum ar fi: HTML, CSS, PHP, MySQL, JavaScript,
Jquery, Apache2.
Aplicaț ia a fost stru cturată î n așa fel încât o eventuală extindere să fie cât mai
accesibilă î n viitor. Baza de date poate să fie și ea îmbunătățită și completată relativ ușor .
Principalele dezvoltări viitoare ar cuprinde adăugarea unui sistem de ch at prin
intermediul căruia să facili teze comunicarea cu utilizatorii, introducerea posibilit ății de logare
a utilizatorilor , modificarea site -ului astfel încât să fie resposive , extinderea site -ului prin
adăugarea de noi pensiuni, galerii foto sau obiective turistice .
37
Bibliografie
[1] Cornelia Gyorodi. Baze de date relaționale , teorie și aplicații. Editura TREIRA, Oradea,
2000.
[2] Cristian Darie, Mihai Bucică. PHP5 și MySQL pentru comerț electronic. Editura Teora,
București, 2006.
[3] Limbajul HTML5 http://ciobanu.cich .md/lectii_view.php?id=5
Consultat la data de 12.05.2016
[4] Turoriale CSS http://tutorialeprogramare.com/tutoriale -css/
Consultat la data de 14.05.2016
[5] Limbajul CSS http://tuwer.eu/introducere -in-css/
Consultat la data de 22.05.2016
[6] Proprietăți CSS http://ctrl -d.ro/development/resurse -devel opment/introducere -in-css3-
proprietati/
Consultat la data de 12.06.2016
[7] Introducere în CSS http://www.marplo.net/curs_css/introducere.html
Consultat la data de 17.05.2016
[8] BD_Cap5 PDF http://vega.unitbv.ro/~cataron/Courses/BD/BD_Cap_5.pdf
Consultat la data de 02.05.2016
[9] JavaScript – Wikipedia http://ro.wiki pedia.org/wiki/JavaScript
Consultat la data de 14.06.2016
[10] Tehnologii web http://informatica.hyperion.ro/wp -content/uploads/2015/05/Tehnologii –
Web.pdf
Consul tat la data de 12.05.2016
[11] Elemente de jQuery http://www.marplo.net/javascript/jquery -elemente -baza-js
Consultat la data de 15.06.2016
[12] JQuery – Wikipedia http://ro.wikipedia.org/wiki/JQuery
Consultat la data de 20.06.2016
[13] Despre PHP etutoriale.ro/articles/16/1/Despre -PHP/
Consultat la data de 12.05.2016
[14] Lecții de php http://ciobanu.cich.md/lectii_view.php?id=7
Consultat la data de 28.06.2016
[15] Despre mysql www.seap.usv.ro/~valeriul/lupu/ mysql .doc
Consultat la data de 22.05.2016
[16] Brat ca – Arheologia unei civiliza ții rurale Editura Imprimeriei de Vest – Oradea
[17] Notepad – Wikipedia http://ro.wikipedia.org/wiki/Notepad%2B%2B
Consultat la data de 16.06.2016
38
DECLARAȚIE DE AUTENTICITATE A
LUCRĂRII DE FINALIZARE A STUDIILOR
Titlul lucrării
PROIECTAR EA ȘI IMPLEMENTAREA UNUI GHID TURISTIC ONLINE
Autorul lucrării
STURZ RADU DORU
Lucrarea de finalizare a studiilor este elaborată în vederea susținerii examenului de f inalizare
a studiilor organizat de către Facultatea Inginerie Electrică și Teh nologia Informației din cadrul
Universității din Oradea, sesiunea iulie a anului universitar 2015 -2016.
Prin prezenta, subsemnatul Sturz Radu Doru , CNP 1940113055080 , declar pe proprie
răspundere că această lucrare a fost scrisă de către mine, fără nici un ajutor neautorizat și că nici o
parte a lucrării nu conține aplicații sau studii de caz publicate de alți autori.
Declar, de asemenea, că în lucrare nu există idei, tabele, gra fice, hărți sau alte surse folosite
fără respectarea legii române și a convențiilor internaționale privind drepturile de autor.
Oradea,
5.07.2016 Semnătura
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: PROGRAMUL DE STUDIU CALCULATOARE FORMA DE ÎNV ĂȚĂ MÂNT IF PROIECT DE DIPLOMĂ COORDONATOR ȘTIINȚIFIC ș.l. dr. ing . MAȘTEI DANIELA ABSOLVENT STURZ RAD… [608540] (ID: 608540)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
