Biblioteca Virtuala

CUPRINS

Capitolul 1 – Introducere

Tema proiectului

Notiune general

Ce este o aplicație enterprise

Evoluția aplicațiilor de tip enterprise

Capitolul 2 – Tehnologii utilizate

Despre PHP

O scurtă istorie a PHP-ului

Instalarea PHP

Baze de date in PHP

Utilizarea PHP pentru a accesa o baza de date

Conectarea la baza de date

PHP Superglobals

Introducere în mysql și sql

De ce să optez pentru MySQL?

2.10 Funții PHP-MySQL

Pregatirea mediului de lucru

Librărie virtuală

Xampp

3.1.1 Prezentarea și instalarea

Capitolul 4 – Descrierea lucrării

Concluzii

Bibliografie

INTRODUCERE

Scopul acestei lucrări de diplomă constă în realizarea unei aplicații Web pentru monitorizarea și îmbunătățirea căutarii si a stocării de cărti in format electronic. Lucrarea își propune realizarea unei librării virtuale menită să vină în ajutorul studenților,cadrelor didactice și persoanelor pasionate de citit în ceea ce privește actualizarea și accesarea informației în cadrul unei librării.

Se poate spune, că trăim într-o societate informatizată. În zilele noastre, întâlnim calculatoare oriunde ne-am duce, de la micul magazin din colț, care își ține evidențele sale cu ajutorul unui calculator până la ghișeul la care plătim abonamentele de telefonie mobile ,cablu TV, Internet, la examenele auto sau alte examene pentru diferite domenii oricare ar fii acestea și multe alte. Calculatoarele ne înconjoară, legate eventual între ele și formând astfel rețele de calculatoare. Ele se datorează faptului că realizăm din ce în ce mai mult faptul ca, sistemele de calcul, calculatoarele ne ușurează munca și viața prin apariția lor.

Să luăm un mic moment de repaus și să analizăm câte lucruri s-au schimbat de la aparația lor. Înaintea lor orice tip de evidență era înregistrată pe hârtie, stocate în mii si mii de dosare, scrise cumâna sau în cel mai bun caz scrise cu dactilograful. Marele dezavantaj al acestei metode era că acele hârtii se deteriorau cu timpul, sau pur și simplu se pierdeau. Apariția calculatorului personal (PC), a reprezentat un mare salt în domeniul informaticii, dar totodată și în alte domenii.

Oamenii au început să folosească calculatorul din ce in ce mai mult, renunțând la vechile evidențe, puse pe hârtii, deoarece a devenit foarte simplă introducerea datelor în calculator, salvându-le pe discul magnetic al acestuia. Datele au început sa fie stocate într-un loc mult mai sigur, securizat, unde datele nu se puteau deteriora, și accesul la ele îl aveau doar persoanele autorizate care erau desemnate pentru utilizare și stricta securitate a discului magnetic.

Capitolul 1 – Introducere reprezintă partea introductivă a lucrării, prezentarea domeniului din care face parte proiectul, a temei propriu-zise și structurarea aplicației.

Capitolul 2 – Tehnologiile utilizate reprezintă o scurtă introducere a principalelor noțiuni legate de internet. Sunt explicate noțiuni ca Internet, protocoale, aplicații pentru internet, DNS, intrenet si extranet, servere web și aplicații web, pagini web statice si dinamice, limbaje de markup și scripting, HTML, JavaScript. Limbajul PHP, este prezentat prin descrierea principalelor noțiuni legate de acest limbaj.

Descrierea modului de includere a PHP în cadrul HTML, sunt prezentate tipurile de date pe care acest limbaj le suportă si tipurile de variabile care pot fi utilizate. Noțiunile de bază ale bazelor de date relaționare. Este prezentat modul de utilizare a MySQL, conectarea și deconectarea de la server, crearea tabelelor și introducerea interogărilor.

Capitolul 3 – Specificațiile aplicației prezintă lucrarea. Prezentarea generală a aplicației, interfața cu utilizatorul, și modalitatea de stocare a informațiilor și a datelor.

Tema proiectului

Omenirea prin evoluția din domeniul informatic, care pe zi ce trece se imbunătățește viata omului și cei tinerii devin batrâni, așa este și cu calculatoarele care au aparut era un număr relativ mic, dar acum oriunde te-ai afla ai sa vezi calculatoare pretutindeni care ii ajută pe oameni să lucreaze pe ele și să le ușureze cu mult munca pe care o depuneam acum 20 de ani. Orice instituție a unui stat este dotată cu calculatore și diferite programe pe care ele lucrează.

Frecventând des libraria de la mine din oraș am observant ca in lipsa unei baze de date a cărților care sunt în libraria orașului, de cele mai multe ori este foarte greu sa găsești carte ape care o cauți. Mi-a venit ideea creări unei librării virtuale pe care sa o poți accesa online, astfel ușurând munca librarilor, deoarece au acces rapid la informații si o bază de date pe categorii și ordine alfabetică dar și munca clienților librăriei respective deoarece pot accesa de acasă site-ul online pentru a verifica disponibilitatea unei anume cărți.

Aplicația Librărie Virtuală este o soluție ideală pentru a ușura munca ambelor părti implicate. Această versiune a aplicației Librărie Virtuala este destinată oricărei librării care dorește usurarea efortului depus, dar și creșterea satisfacției dar și numărului clienților.

Site-ul este structurat în 2 părți diferite, pentru 2 tipuri de utilizatori diferiți :

Administrator – se ocupă de adăugarea/ștergea in baza de date a cărtilor si actualizarea continua a bazei de date

Clienții – are acces la vizualizarea cărtilor din baza de date, și disponibilitatea lor

1.2 Noțiune generală[1]

O aplicație web este o aplicație găzduită de un server central și care este accesată de utilizatori într-o rețea, cum ar fi internet sau intranet, cu scopul de a li se oferi o gama largă de servicii. Termenul poate însemna, de asemenea, o aplicație software de calculator, care este codat într-un limbaj de programare suportat de un navigator web (cum ar fi JavaScript, combinat cu un limbaj de marcare, precum este HTML). Astfel, o aplicație web poate fi văzută ca o colecție de documente HTML / XML, componente web (applet-uri, servlet-uri și pagini JSP), și alte resurse, reunite într-o structura de directoare sau într-un format arhivat cunoscut ca un fișier WAR .

Aplicații web sunt, de obicei, trunchiate în bucăți logice numite "niveluri", în care fiecarui nivel i se atribuie un rol. Aplicații tradiționale constau doar dintr-un nivel, care se află pe o mașină client, însă aplicațiile web pretează la o abordare de n-niveluri. Deși mai multe variante sunt posibile, structura cea mai comună este aplicarea pe trei niveluri. În forma sa cea mai comună, cele trei niveluri sunt numite prezentare, aplicare și depozitare. Un navigator web este primul nivel (prezentare), un motor ce utilizează tehnologii web pentru generarea de pagini dinamice (cum ar fi ASP, ASP.NET, CGI, ColdFusion, JSP / Java, PHP, Perl, Python, Ruby on Rails sau Struts2) este nivelul de mijloc (logica aplicației), și o bază de date este al treilea nivel (de depozitare). Browser-ul web trimite cererile către nivelul de mijloc, care este capabil să le proceseze, efectuând o serie de interogări și actualizări în baza de date și , ca urmare, va genera o interfață de utilizator (pagini HTML sau pagini JSP).

Pentru aplicații mai complexe, o soluție benefică și eficientă este utilizarea unei abordări pe n-niveluri, în care cel mai mare beneficiu îl reprezintă trunchierea nivelului logic al aplicației într-o structură prevăzută cu mai multe diviziuni logice. Un alt beneficiu poate fi adăugarea unui nivel de integrare, care separă nivelul de depozitare de restul nivelurilor, oferind o modalitate ușoară de accesare a datelor prin interfața de utilizator.

1.3 Ce este o aplicație enterprise[2]

Termenul entreprise se referă la o organizație de persoane fizice sau juridice, care lucrează împreună pentru atingerea unor obiective comune. Organizațiile pot fi clasificate în organizații mari și mici, pentru-profit si non-profit, guvernamentale și neguvernamentale.

Întreprinderile au în general o suită de nevoi comune, cum ar fi schimbul de informații și de prelucrare, de gestionare a activelor și de urmărire, de planificare, de gestionare a datelor ale clientului, protecția de cunoștințe de afaceri și așa mai departe. Termenul de aplicație enterprise este folosit pentru a se referi în ansamblu la toate aplicațiile software care sunt implicate în sprijinirea acestor elemente comune în cadrul unei întreprinderi.

Fig 1.2.1 [2]

Figura arată o structură de configurare software la nivel de întreprindere, care este în esență o colecție de diverse sisteme. Software-ul întreprinderii este organizat din diferite funcții din cadrul organizației, cum ar vânzări, resurse umane și altele. Un firewall este prevăzut pentru a proteja datele întreprinderii de accesul neautorizat. Unele sisteme software, cum ar fi cele pentru gestiunea operațiilor de vânzare și inventariere, sunt separate in entități, văzute drept “insule” ale software-ului întreprinderii.

Aplicațiile la nivel de întreprindere necesită, de obicei, unele capacități comune, cum ar fi securitatea serviciilor pentru a proteja cunoștințele, servicii de tranzacții pentru a garanta integritatea datelor, ș-așa mai departe. Fiecare dintre acestea necesită abilități și cunoștințe specifice. De exemplu, serviciile de tranzacție necesită strategii pentru recuperare a datelor în cazul unor eșecuri, cum ar fi situația în care se dorește accesarea de date de mai mulți utilizatori, asigurând coerența între tranzacțiile.

Acestea sunt doar câteva dintre cele mai comune probleme care trebuie abordate atunci când se dorește a se dezvolta o aplicație de tip enterprise.

1.4 Evoluția aplicațiilor de tip enterprise[2]

Nu cu mult timp în urmă, mainframe-urile au condus lumea, și toate software-urile au fost legate de această entitate centrală.

Avantajele unui astfel de abordări centralizate a inclus simplitatea de a face legătura între un singur sistem și toate nevoile pe care acesta urma să le proceseze. Dezavantajul acestei abordări consta în limitările fizice ale scalabilitații, în puncte unice dee eșec, în accesibilitate limitată de la distanță.

În software-ul, un nivel este în primul rând o abstracție i scopul său principal este de a ajuta să înțelegem arhitectura asociată cu o aplicație specifică prin separarea software-ului pe niveluri distincte, logice.

Aplicațiile cu abordare centralizată combinau partea de prezentare, logica aplicației și datele într-o arhitectură cu un singur nivel logic. Deoarece toate aspectele în cadrul aplicației se contopeau una cu alta, partea de prezentare era legată de logicii de business, iar logicii de business avea o profundă cunoaștere a structurii de date, orice modificare adusă avea un efect de undă, ceea ce însemna revalidarea tuturor aspecte. Un alt dezavantaj a fost limitările impuse reutilizarii logicii de business sau capabilității de acces la date.

Abordarea client-server atenua unele dintre aceste probleme majore, prin separarea părții de prezentare de logica de business, constituind un nou nivel al aplicației. Cu toate acestea, abordare pe două niveluri a introdus unele noi probleme proprii, de exemplu, actualizarea concurentă în cazul unui număr mare de clienți.

Fig 1.3.1 [2]

Abordarea pe n-niveluri încearcă să realizeze un echilibru mai bun în ce privește separarea prezentării de logica aplicației și logica aplicației de baza de date.

Termenul n-straturi (spre deosebire de trei niveluri) este reprezentativ prin faptul că software-ul nu este limitat doar la trei niveluri, și poate fi și, într-adevăr, este organizat în straturile mai profunde pentru a satisface nevoi specifice.

Trebuie remarcat faptul că fiecare nivel, într-o arhitectură pe n-niveluri nu implică o bucată separată de hardware, cu toate că este cu siguranță posibil. Un nivel este, mai presus de toate, o separare de preocupări în cadrul aplicației în sine.

Câteva avantaje și beneficii oferite de arhitectura pe n-niveluri sunt:

Dezvoltarea rapidă și cu costul mai mic: Noi aplicații pot fi dezvoltate

mai repede prin reutilizarea logicii de business și a componentelor de acces la date.

Impactul schimbărilor este izolat: Atâta timp cât interfețe rămân neschimbate, modificări cu privire la un nivel care nu afectează componentele pe un alt nivel.

Modificările sunt mai ușor de gestionat: De exemplu, este ușor de înlocuit o versiune a unui componente ce ține de logica aplicației cu unul nou, în cazul în care acesta își are reședința pe nivelul logicii de business (pe una sau câteva servere dedicate).

CAPITOLUL 2

TEHNOLOGII UTILIZATE

O aplicație web este o aplicație client-server care cuprinde 2 părți: partea de front-end (client) și partea de back-end (server).

Modelul client/server este o arhitectură ce descrie relația dintre 2 programe care se află fie pe același calculator, fie pe calculatoare diferite. Clientul face o cerere la server, iar serverul procesează cererea și returnează un răspuns.

În cazul aplicațiilor web, browser-ul (navigatorul) este clientul care trimite cereri unui server web. Un client poate solicita pagini statice, care nu necesită niciun fel de procesare pe partea de server, sau pagini dinamice, care cuprind script-uri scrise într-un anumit limbaj de programare pe care serverul web le interpretază și le trimite înapoi clientului sub formă de pagină statică.

Într-o aplicație web, partea de client (HTML, JavaScript) se ocupă cu prezentarea informațiilor, iar partea de server (PHP, ASP, Perl) se ocupă cu stocarea și procesarea acestora.

2.1 Prezentarea php

PHP este limbajul ideal pentru construirea de pagini web dinamice. Este ușor de învațat, open-source, poate fi rulat pe mai multe platforme și se poate conecta la mai multe tipuri de baze de date. Cel mai important aspect al limbajului este însa posibilitatea de a fi imbricat cu cod HTML. Putem astfel crea pagini HTML statice si din loc in loc, acolo unde este nevoie, să introducem dinamism cu ajutorul PHP. 

Limbajul PHP sa "născut" in 1994 din nevoia lui Rasmus Lerdorf de a afla câte persoane îi viziteaza CV-ul online. El a denumit setul de scripturi create PHP, acronimul pentru Personal Home Page. Pe parcursul urmatorilor 3 ani limbajul a evoluat dar adevaratul succes a început să îl cunoasca de când Zeev Suraski si Andi Gutmans au rescris motorul PHP de la cap la coadă, motor care poartă dun versiunea 4 a PHP numele Zend, o combinație de litere din prenumele creatorilor săi: Zeev si Andi. 

Fiind opensource, PHP beneficiază de suport activ din partea comunitații online, acesta fiind și motivul creșterii explozive a numarului site-urilor bazate pe PHP. 
Interpretorul PHP este cel mai cunoscut limbaj de scripting folosit în acest moment pentru crearea site-urilor Web interactive. Denumirea este un "acronim recursiv" pentru Hypertext PreProcessor. Diferența esențiala fata de alte limbaje de scripting (gen JavaScript) este faptul că PHP este un interpretor server-side (operatiile sunt executate de catre server și nu pe calculatorul utilizatorului). Pentru a putea testa pagini PHP aveți nevoie de un server de web (Apache) și de pachetul PHP instalat. 

PHP permite folosirea unor elemente specifice limbajelor de programare. Ieșirea standard a script-ului PHP devine intrarea standard pentru programul de navigare care vizualizeaza pagina. Așadar, la ieșirea standard poate fi scris (de exemplu, prin intermediul comenzii echo) orice tip de cod HTML, acesta fiind interpretat de cștre borwser.
Pe lângă manipularea conținutului paginilor de web, PHP poate trimite headere HTTP pentru autentificare, seta cookie-uri sau redirecționa utilizatorii. Mai mult, cu ajutorul bibliotecilor externe de funcții poate parsa fisiere XML, crea și manipula imagini, animatii Shokwave Flash, PDF-uri sau se poate conecta la un server de mail, iar acestea sunt doar câtevă din funcțiile pe care le poate îndeplini.

Interpretorul PHP parcurge documentul accesat până în momentul în care întâlnește un marcaj de deschidere care indica faptul că textul care urmează trebuie interpretat ca fiind cod PHP. în continuare, textul este interpretat ca fiind cod PHP până în momentul în care este intalnit marcajul de închidere. Intreg textul care nu este interpretat ca fiind cod PHP este furnizat la ieșire în forma în care a fost primit ca intrare de către interpretor. Există mai multe marcaje care indica inceperea unei secvente de cod PHP, dar doar doua dintre ele sunt folosite de obicei. Dacă dorim ca documentul să respecte specificatiile XML, atunci singura posibilitate de inserare a codului PHP este folosirea unei secvențe de tipul:

<?php
    //cod PHP
?>

Cea dea doua posibilitate este utilizarea marcajului <SCRIPT> într-o maniera asemanatoare celei folosite pentru includerea de script-uri JavaScript. Sintaxa este urmatoarea:

<SCRIPT language = "php">
    //cod PHP
</SCRIPT>

Exista alte doua posibilități, dar acestea sunt folosite rar, în situații particulare.
Este permisa "iesirea" și "intrarea" în "modul PHP" de oricâte ori este necesar în pagina. Aceasta este util când se lucreaza cu texte de mari dimensiuni.
Pentru ca instrucțiunile PHP sa fie interpretate corect, acestea trebuiesc separate prin caracterul ';'.
în PHP, comentariile pot fi inserate folosin sintaxele din C, C++ si shell-urile Unix. Apariția secvenței de caractere '//' sau a caracterului '#' indică faptul că restul liniei reprezinta un comentariu. Pentru a insera comentarii pe mai multe linii, acestea trebuie delimitate de secventa '/*' la inceput si de secventa '*/' la sfarșit.

Exemplu de cod sursă php

PHP este un simplu limbaj încă puternic proiectat pentru crearea de conținut HTML. Acest capitol se referă fundal esențial de limba PHP. Descrie natura și istoria PHP, care ruleaza pe platforme, și cum să-l configurați. Acest capitol se încheie prin care vă arată PHP în acțiune, cu o descriere scurtă a mai multor programe PHP care ilustrează sarcini comune, cum ar fi prelucrarea datelor formular, interacțiunea cu o baza de date, și crearea de grafică.

PHP poate fi folosit în trei moduri principale:

Scripting server-side

PHP a fost proiectat inițial pentru a crea conținut web dinamic, și este încă cel mai potrivit pentru această sarcină. Pentru a genera HTML, aveți nevoie de parser-ul PHP și un server web prin care să trimită documentele codificate. PHP a devenit, de asemenea, popular pentru generarea documentelor XML, grafica, animatii Flash, fișiere PDF, și atât de mult.

Command-line scripting

PHP poate rula scripturi din linia de comandă, la fel ca Perl, awk, sau shell Unix. S-ar putea folosi scripturile de linie de comandă pentru sarcini de administrare sistem, cum ar fi backup și log parsing; chiar unele script-uri de tip job cron se poate face în acest fel (sarcini PHP nonvisual).

Aplicatii GUI pe partea de client

Folosind PHP-GTK, puteți scrie, aplicații cross-platform de tip GUI în PHP. În această carte, cu toate acestea, ne vom concentra pe primul element: folosind PHP pentru a dezvolta dynamic conținut web.

PHP ruleaza pe toate sistemele de operare majore, de la variante Unix, inclusiv Linux, FreeBSD, Ubuntu, Debian, și Solaris Windows și Mac OS X. Acesta poate fi utilizat cu toate conducere servere de web, inclusiv Apache, Microsoft IIS, iar serverele Netscape / iPlanet.

Limbajul în sine este extrem de flexibil. De exemplu, nu sunt limitate la a scoate doar HTML sau alte fișiere, orice alte formate de documente text pot fi generate. PHP are construită o platformă suport pentru generarea de fișiere PDF, GIF, JPEG, PNG și imagini și filme Flash.

Una dintre caracteristicile cele mai importante PHP este suportul amplu pentru baze de date. PHP suporta toate bazele de date importante (inclusiv MySQL, PostgreSQL, Oracle, Sybase, MS-SQL, DB2, și baze de date ODBC-conforme), și chiar multe altele obscure. Chiar mai mult baze de date recente NoSQL stil, cum ar fi SQLite și MongoDB sunt de asemenea suportate. Cu PHP, crearea de pagini web cu conținut dinamic dintr-o bază de date este remarcabil de simplu.

În cele din urmă, PHP oferă o bibliotecă de cod PHP pentru a efectua sarcini comune, cum ar fi baze de date abstracție, eroare de manipulare, și așa mai departe, cu extensia PHP Extension and Application Repository (PEAR). PEAR este un sistem cadru și de distribuție pentru componente reutilizabile PHP.

Afisarea mesajului “Hello World” folosind php

2.2. O scurtă istorie a PHP-ului

Rasmus Lerdorf este prima persoană care a conceput PHP în 1994, dar PHP pe care oamenii il folosesc astăzi este destul de diferit de versiunea inițială. Pentru a intelege cum ajuns PHP undeeste astăzi, este util să se cunoască evoluția istorică a limbii. PHP însemna inițial Personal Home Page.[4] PHP a fost început în 1994 ca o extensie a limbajului server-side Perl, și apoi ca o serie de CGI-uri compilate de către Rasmus Lerdorf, pentru a genera un curriculum vitae și pt a urmări numărul de vizitatori ai unui site. Apoi a evoluat în PHP/FI 2.0, dar proiectul open-source a început să ia amploare după ce Zeev Suraski și Andi Gutmans, de la Technion au lansat o nouă versiune a interpretorului PHP în vara anului 1998, această versiune primind numele de PHP 3.0. Tot ei au schimbat și numele in acronimul recursiv de acum, până atunci PHP fiind cunoscut ca Personal Home Page Tools. Apoi Suraski și Gutmans au rescris baza limbajului, producând astfelși Zend Engine în 1999. În mai 2000 a fost lansat PHP 4.0, având la bază Zend Engine 1.0.

2.3 Instalarea PHP

După cum a fost menționat mai sus, PHP este disponibil pentru mai multe sisteme de operare și platforme. Din când în când, poate, de asemenea, doriți să schimbați modul în care PHP este configurat. Pentru a face acest lucru trebuie să modificați fișierul de configurare PHP și să reporniți serverul de Apache. De fiecare dată când se va face o schimbare de mediu PHP, va trebui să să reporniți Apache Server pentru ca aceste modificări să intre în vigoare.

Setările de configurare PHP sunt menținute într-un fișier numit php.ini. Setările din acest fișier controlează comportamentul caracteristici PHP, cum ar fi manipularea sesiunii și prelucrarea formei. Capitolele ulterioare se referă la unele dintre opțiunile php.ini, dar, în general codul în această carte nu necesită o configurație personalizată. vezi http://php.net/manual/configuration.file.php pentru mai multe informații cu privire la configurația php.ini.

2.4 Baze de date în php

PHP are suport pentru peste 20 de baze de date, inclusiv cele mai populare comerciale și soiuri open source. Sistemele de baze de date relaționale, cum ar fi MySQL, PostgreSQL, și Oracle sunt coloana vertebrală a majorității site-uri dinamice moderne. În acestea sunt stocate shopping-cart informații, istorii de cumpărare, recenzii la produse, informații de utilizator, credit numere de card, si uneori, chiar pagini web însuși.

Acest capitol se referă la modul de a accesa bazele de date de la PHP. Ne concentrăm pe PHP încorporat. Obiectele de date (sau DOP) sistem, care vă permite să utilizați aceleași funcții pentru a accesa orice baze de date, mai degrabă decât pe extensiile de baze de date specifice, nenumărate. În acest capitol, veți învăța cum să-i aducă date din baza de date, a stoca date în baza de date, și mâner erori. Ne termina cu o aplicație eșantion care arată cum să pună diverse tehnici de baze de date în acțiune.

2.5 Utilizarea PHP pentru a accesa o baza de date

Există două moduri de a accesa bazele de date de la PHP. Una este de a utiliza o bază de date specific extensiei; cealaltă este de a utiliza libraria PDO care reprezinta o bază de date independentă (PHP Data Objects) bibliotecă. Există avantaje și dezavantaje pentru fiecare abordare.

Dacă utilizați o extensie a bazei de date specifice, codul este strâns legat de baza de date pe care o utilizați. De exemplu, numele de funcție a extensiei MySQL, parametrii, manipularea erorilor, ș-așa mai departe sunt complet diferite de cele ale altor extensii de baze de date. Dacă doriți să mutați baza de date din MySQL în PostgreSQL, se vor implica modificări semnificative in codul sursa. PDO, pe de altă parte, ascunde baze de date specific Funcțiile de la tine, cu un strat de abstractizare, deci deplasarea între sistemele de baze de date poate fi la fel de simplu ca schimbarea o linie de program sau fișier php.ini.

Portabilitatea unui strat de abstractizare ca biblioteca PDO vine cu un preț, cu toate acestea, cum codul pe care-l folosește, de obicei,este un pic mai lent decât un cod care foloseste o extensie a bazei de date specific.

Țineți minte că un strat de abstractizare nu face absolut nimic atunci când vine vorba de a ne asigura ca actualele interogărilor SQL sunt portabile. Dacă cererea dumneavoastră utilizează nici un fel de nongeneric SQL, va trebui să depunem o munca semnificativă pentru a converti întrebările dumneavoastră de la o baze de date la alta. Ne vom uita usurati pentru scurt timp la ambele abordări ale interfețelor de baze de date în acest capitol și apoi o să studiem și metode alternative pentru a gestiona conținutul dynamic pentru Web.

2.6 Conectarea la baza de date

De câte ori vom lucra cu MySQL va trebui să ne conectam la baza de date folosind o anumită sintaxa. Vom salva această secvență de cod cu numele conexiune.php putând fi folosita ulterior în mai multe scripturi utilizand funcția include().

/* urmeaza fiesierul conexiune.php */
<?php
$hostname="localhost";
$username="root";
$password="pass";
$database="test";

$conexiune=mysql_connect($hostname,$username,$password)
or die ("Nu ma pot conecta la baza de date");

$bazadate=mysql_select_db($database,$conexiune)
or die ("Nu gasesc baza de date");
?>

mysql_connect() este funcția prin care ne conectăm labaza de date cu urmatorii paramatrii: numele serverului, nume utilizator și parolă pentru conectarea la baza de date. Variabila $conexiune va avea o valoarea TRUE sau FALSE funcție de rezultatul conectării la serverul MySQL folosind functia mysql_connect(), iar n cazul eșuarii va afisa mesajul conținut de constructia die().

mysql_select_db este funcția care stabilește baza de date la care ne vom conecta, având ca parametrii numele bazei de date și identificatorul de acces la conexiunea către serverul MySQL. În mod similar variabila $bazadate folosind funcția mysql_select_db va afișa în cazul negăsirii bazei de date mesajul conținut de die.

Puteți modifica variabilele din fișierul conexiune.php in funcție de configurările bazei de date:
$hostname=adresa serverului, de cele mai multe ori este localhost
$username=username-ul de conectare la baza de date
$password= parola de conectare la baza de date
$database=numele bazei de date

După ce operațiile dorite au fost executate cu baza de date va trebui să inchidem conexiunea folosind funcția mysql_close() având ca argument datele de acces la serverul MySQL.

2.7 PHP Superglobals

$GLOBALS – Conține o referință la fiecare variabilă care este în mod curent valabilă înscopul global al script-ului. Cheile acestui șir sunt numele variabilelor globale.

$_SERVER – Reprezintă variabilele setate de serverul de web sau legate direct de mediul deexecuție al scriptului curent.

$_GET – Reprezintă variabilele oferite scritpt-ului direct prin HTTP GET. Analog vechiuluișir $HTTP_GET_VARS (care încă este valabil, dar depreciat).$_POST – Reprezintă variabilele oferite scritpului direct prin HTTP POST. Analog vechiului șir

$HTTP_POST_VARS (care încă este valabil, dar depreciat).

$_COOKIE – Reprezintă variabilele oferite scritpului direct prin HTTP. Analog vechiului șir 

$HTTP_COOKIE_VARS (care încă este valabil, dar depreciat).

$_FILES – Reprezintă variabilele oferite scritpului prin upload-ul de fișiere folosind modulPOST din HTTP. Analog vechiului șir

$HTTP_POST_FILES (care încă este valabil, dar depreciat).

$_ENV – Reprezintă variabilele oferite scritpt-ului prin mediu. Analog vechiului șir 

$HTTP_ENV_VARS (care încă este valabil, dar depreciat).

$_REQUEST – Reprezintă variabilele oferite scritpt-ului prin mecanismele de input GET,POST, și COOKIE, deci care nu pot fi de încredere.

$_SESSION – Reprezintă variabilele registrate unei sesiuni a script-ului. Analog vechiului șir 

$HTTP_SESSION_VARS (care încă este valabil, dar depreciat).

2.7 Introducere în mysql și sql

Un sistem de baze de date este, în esență, o modalitate de a gestiona liste cu informații. Informațiile pot proveni dintr-o varietate de surse. De exemplu, pot reprezenta date de cercetare, înregistrari de afaceri, cereri ale clienților, statistici sportive, rapoarte de vănzări, înregistrări de personal sau notele unor elevi.

Cu mai bine de zece milioane de instalații, MySQL este probabil cel mai popular sistem de management pentru servere de web. Dezvoltat in mijlocul anilor 1990, este acum o tehnologie matură care întarește multe din cele mai vizitate destinații de pe Internet.

Un motiv pentru succesul acestuia trebuie să fie faptul că că , la fel ca PHP, este libertatea de foloșință. Dar este, de asemenea, extrem de puternic și extrem de rapid, se poate rula chiar chiar și pe cele mai de bază hardware, șiabia pune o adâncitură n resursele de system.

MySQL este, de asemenea, extrem de scalabil, ceea ce înseamnă că poate crește cu site-ul tau. De fapt, într-o comparație a mai multor baze de date de eWEEK, MySQL si Oracle se află la egalitate, amândouă din punct de vedere al celei mai bune performanțe.

Licența MySQL

MySQL este disponibil în cadrul unui sistem de licență duală:

Sub licența GNU General Public, versiunea 2, ("sau mai târziu", a permis în versiunile lansate înainte de 2007): aceasta este o licență gratuită, licență de software copyleft care permite utilizatorilor să acceseze MySQL în scopuri comerciale și necomerciale, atâta timp cât cererea persoanelor care îl folosesc este distribuită sub GNU GPL. Există și o altă variantă, un "Exception FLOSS", care permite, în esență non-GPL'd dar reprezintă o aplicație gratuită (cum ar fi limbajul de programare PHP, sub licență PHP) pentru a ajuta utilizatorii să se conecteze la la un server MySQL. Excepția enumeră o serie de licențe grauite si și open-source, care poate fi utilizate în plus față de GNU GPL pentru MySQL-aplicație care este depent gratuită.

O așa zisă , licență plătită sau "comerciale", care este, o licență care va permite vă permite să integrați MySQL cu o aplicație non-FLOSS pe care noi o redistribuim în afara propriei noastre organizații.

2.8 De ce să optez pentru MySQL?

Dacă sunteți în căutarea unui sistem gratuit sau necostisitor de gestiune a bazelor de date, puteți alege din mai multe opțiuni: MySQL, Microsoft SQL, PostgreSQL, ș.a.

Când comparați MySQL cu alte sisteme de baze de date, gândițivă la ceea ce este cel mai important pentru dumneavoastră ș-anume: performanță, suport, caracteristici (conforme cu SQL, extensii etc.), condiții și restricții de licențiere, preț. Toate acestea constituie factori care trebuie luați în considerare.

• Viteză. MySQL este rapid. Programatorii pretind că MySQL este cel mai rapid sistem de baze de date pe care îl puteți găsi.

• Ușurință în utilizare. MySQL este un sistem de baze de date cu performanțe ridicate, dar relativ simplu, a cărui configurare și administrare sunt mult mai simple decât în cazul sistemelor mai mari.

• Cost. MySQL este gratuit pentru majoritatea utilizărilor interne.

• Suport pentru limbaje de interogare. MySQL înțelege SQL (Structured Query Language – limbaj de interogare structurat), limbajul preferat al tuturor sistemelor moderne de baze de date. De asemenea, puteți avea acces la MySQL folosind aplicații care acceptă ODBC (Open Database Connectivity), un protocol de comunicație cu bazele de date creat de Microsoft.

• Caracteristici. La server se pot conecta mai mulți clienți simultan. Clienții pot folosi mai multe baze de date simultan. Puteți obține acces la MySQL în mod interactiv, folosind numeroase interfețe care vă permit să introduceți interogări și să vizualizați rezultate: clienți in linie de comandă, browsere Web sau clienți X Window System.

MySQL Control Center sau MySQLCC este o platformă independentă de administrare GUI a clienților pentru servere de baze de date MySQL.

• Conectivitate și securitate. MySQL poate fi folosit integral în rețele, iar bazele de date sunt accesibile de oriunde din Internet, deci vaputeți împarți datele cu oricine, oriunde. Dar MySQL are controlul accesului, astfel incât persoanele care nu au dreptul să vă citească datele nu o să poată.

• Portabilitate. MySQL rulează pe numeroase varietăți de UNIX, precum și pe alte sisteme non-UNIX, ca Windows și OS/2. O bună parte din programarea cu MySQL are loc pe sisteme Linux ieftine. MySQL merge pe diverse echipamente de la calculatoare de birou la servere cu performanțe ridicate.

• Distribuție liberă. MySQL nu este un proiect Open Source, deoarece este necesară o licență in anumite condiții. Totuși, MySQL se bucură de o mare popularitate în comunitatea Open Source, deoarece termenii de licență nu sunt foarte restrictivi, (în esență, MySQL este în general gratuit, dacă nu doriți sa obțineți profit prin vânzarea sistemului sau aunor servicii care necesită utilizarea acestuia).

Rezumatul termenilor bazei de date

Principalii termeni cu care trebuie să ne familiarizăm de acum sunt:

Database – Containerul general pentru o colecție de date MySQL.

Table – Un subcontainer într-o bază de date care stochează datele reale.

Row – O singură înregistrare într-un tabel, care poate conține mai multe domenii.

Column – Numele unui domeniu în cadrul unui rând.

Ar trebui să notez faptul că nu încerc sa reproduce terminologia exactă folosită în literatura academică despre baze de date relaționale, ci doar să ofer termeni simpli, pentru a ajuta la rapida înțelegere a conceptelui de bază ale unei baze de date.

Crearea unei baze de date

După cum se observă este foarte simplu să creați o bază de date:

%mysql> CREATE DATABASE anunturi_online;

%Query OK, 1 row affected (0.05 sec)

Am ales numele anunturi_online pentru baza noastră de date. Puteți alege orice nume. Acum că am creat baza de date trebuie săi spunem serverului (în cazul nostru serverul MySQL) ca vrem să folosim această bază de date:

%mysql> USE anunturi_online;

%Database changed

%mysql>

Dacă doriți să ștergeți o bază de date puteți utiliza:

%mysql> DROP DATABASE nume_baza_de_date;

Crearea unei tabel

Crearea unei tabel este un lucru ceva mai complicat, pentru căîn tabele sunt de fapt stocate informațiile. Dacă veți citi manualul de MySQL veți descoperi o definiție ce la prima vedere pare criptică:

%mysql>CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name %[(create_definition,…)] [table_options] [select_statement]

sau

%mysql> CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name

%[(] LIKE old_tbl_name [)];

Să luăm un exemplu concret și să vedem cum creăm tabela noastră cu anunțurI:

%mysql> CREATE TABLE anunturi (

-%> id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,

%-> text_anunt TEXT,

%-> data_anunt DATE NOT NULL

%-> );

%Query OK, 0 rows affected (0.08 sec)

• prima linie pare destul de simplă. dacă știți ceva engleză e suficient să traduceți și veți vedea căse transmite serverului MySQL faptul că se dorește crearea unui tabel.

• a doua linie e în schimb ceva mai complicată. Să o luăm pe rând. Această linie comunică serverului MySQL că dorim să creăm o coloană cu numele "id" de timp întreg ("INT") ce se va auto incrementa ("AUTO_INCREMENT") și informațiile conținute în această coloană vor fi unice ("PRIMAY KEY").

• a treia linie îi comunică serverului MySQL că dorim să creăm o coloană cu numele "text_anunt" de tip "TEXT".

• a patra linie îi comunică serverului MySQL că dorim să creăm o coloana cu numele "data_anunt" de tip "DATE" și mai mult decât atât impunem condiția ca totdeauna să existe informații în acest câmp (să nu fie niciodată gol, “NOT NULL”).

2.9 Funții PHP-MySQL

1. mysql_affected_rows($conn)

– Returneaza numărul de linii afectate in ultima operatie PHP-MySQL (INSERT, UPDATE, REPLACE ori DELETE) sau -1 daca acel "query" eșuează. "$conn" este optional si reprezintă conexiunea de lucru la MySQL

%<?php
%$conn = mysql_connect('localhost', 'user', 'pass');
%mysql_select_db('baza_date');
%mysql_query("DELETE FROM `mytable` WHERE `id` < 10");
%echo mysql_affected_rows();       // 10
?>

2. mysql_client_encoding($conn)

– Returnează tipul de codare a formatului de caractere folosit în conexiunea curentă ($conn).

%<?php
%$conn = mysql_connect('localhost', 'mysql_user', 'mysql_pass');
%$charset = mysql_client_encoding($conn);

%echo 'Formatul de caractere curent este: '. $charset;         // Formatul de caractere %curent este: latin1
%?>

3. mysql_connect('server_mysql', 'nume_utilizator', 'parola_myswql')

– Deschide o conexiune la MySQL. La argumentul "server_mysql" se poate adaugă si portul de conectare, sintaxa devine astfel: 'server_mysql:port'.

%<?php
%$conn = mysql_connect('localhost', 'mysql_user', 'mysql_password');
%if (!$conn) { echo 'Conectare nereusita, cauza: '. mysql_error()); }
%else echo 'Conectare reusita';
%?>

 4. mysql_close($conn)

– Inchide conexiunea la MySQL "$conn", dacă nu e precizat "$conn", va inchide conexiunea curentă.

%<?php
%$conn = mysql_connect('localhost', 'mysql_user', 'mysql_password');
%if (!$conn) { echo 'Conectare nereusita, cauza: '. mysql_error()); }
%else echo 'Conectare reusita';

%mysql_close($conn);
%?>

5. mysql_list_dbs($conn)

– Returneaza o lista cu bazele de date accesibile în conexiuea curentă ($conn), altfel, FALSE.

%<?php
%$conn = mysql_connect('localhost', 'user', 'pass');
%$db_list = mysql_list_dbs($conn);

%while ($row = mysql_fetch_object($db_list)) {
    %echo $row->Database .'<br />';
%}
%?>

6. mysql_errno($conn)

– Returnează numărul erorii de la ultima funcție MySQL, sau 0 (zero) dacă nu e vreo eroare.

%<?php
%$conn = mysql_connect('localhost', 'user', 'pass');
%if (!mysql_select_db("none_tdb", $conn)) { echo mysql_errno($conn); }
%?>

7. mysql_error($conn)

– Returnează mesajul de eroare (sir text) dat de MySQL la ultima funcție executată, sau un sir gol dacă nu sunt erori.

%<?php
%$conn = mysql_connect('localhost', 'user', 'pass');
%if (!mysql_select_db("none_tdb", $conn)) { echo mysql_error($conn); }
%?>

8. mysql_get_client_info()

– Returnează un sir cu date despre versiunea MySQL activă pe server. Nu necesită conectare la MySQL.

%<?php
%echo mysql_get_client_info();
%?>

Capitolul 3

Pregatirea mediului de dezvoltare

3.1 Librărie virtuală (digitală)

O bibliotecă digitală (menționată ca biblioteca digitală sau depozit digital) este o bibliotecă specială cu o colectie concentrată de obiecte digitale, care pot include text, materiale vizuale, materiale audio, materiale video, stocate ca formate media electronică (spre deosebire de a imprima, microformate, sau alte medii), împreună cu mijloace pentru organizarea, stocarea, iar recuperarea fișierelor și mass-media conținute în colecția bibliotecii. Bibliotecile digitale pot varia foarte mult în dimensiune și domeniul de aplicare, și poate fi menținută prin indivizi, organizații, sau afiliată cu clădiri stabilite fizice biblioteca sau instituții, sau cu instituții academice. [1] Conținutul electronic poate fi stocat local, sau accesate de la distanță prin intermediul calculatorului rețele. O bibliotecă electronică este un tip de sistem de regăsire de informații.

Multe biblioteci universitare sunt implicate activ in construirea de depozite instituționale cărți, doctorate, teze, și alte lucrări instituției care pot fi digitalizate sau au fost "născute digital". Multe dintre aceste depozite sunt puse la dispoziția publicului larg cucâteva restricții, în conformitate cu obiectivele de acces liber, în contrast cu publicarea de cercetare in reviste comerciale, în cazul în care editorii limita de multe ori drepturile de acces. Instituțional, cu adevărat liber, și depozite corporative sunt denumite uneori bibliotecile ca digitale.

Avantajele bibliotecilor digitale ca mijloc de acces ușor și rapid la carțile, arhivele și imaginile de diferite tipuri sunt acum unanim recunoscute de interesele comerciale și organismele publice deopotrivă. Bibliotecile digitale pot reduce taxele pe care o bibliotecă normală trebuie să le plătească.

Un avantaj important pentru conversia digitală este accesibilitatea crescută pentru utilizatori. Ei cresc, de asemenea, disponibilitatea de a persoanelor care nu pot fi patronii unei biblioteci tradiționale, datorită locației geografice sau afilierea organizațională.

Arhive digitale

Arhivele fizice diferă de biblioteci fizice în mai multe moduri. În mod tradițional, arhivele sunt definite ca:

Conținând informații primare (de obicei scrișorii și documente produse direct de către un individ sau o organizație), în loc sa conțina decât sursele secundare care se află într-o bibliotecă (cărți, periodice, etc.).

Având conținutul lor organizate în grupuri, mai degrabă decat elemente individuale.

Având conținut unic.

Tehnologia utilizată pentru a crea biblioteci digitale este chiar mai revoluționar pentru arhive, deoarece încalcă cea de a 2-a si a 3-a regulă prezentate mai sus. Altfel spus, "arhivele digitale" sau "arhive on-line" va mai conține, deobicei, surse primare, dar ele sunt susceptibile de a fi descrise individual, decât ca ele sa fie descries în grupuri. Mai mult, ele fiind în format digital, conținutul lor sunt ușor reproductibile și cu adevărat, să fi fost reproduce dintr-o altă parte. Oxford Text Archive este considerată fi cea mai veche arhiva digitală ce conține materiale academice ca și resursă fizică primară.

O bază de date bibliografică pote fi în general, în domeniul de aplicare sau acoperă o disciplină care se ocupă specific de academie. Un număr semnificativ de baze de date bibliografice sunt încă patentate, disponibile sub acordul licențelor de la furnizori, sau direct de la indexarea și serviciile abstractizate care le creează pe acestea.

Multe baze de date bibliografice evoluează în timp în biblioteci digitale, oferind întregul text al conținutului ce este indexat. Alții converg cu baze de date academice non-bibliografice pentru a crea mult mai multe sisteme complete ce desăvârșesc a fi un motor de căutare, cum ar fi Chemical Abstracts sau Entrez.

Avantaje:

Effort scăzut. Utilizatorul unei biblioteci digitale nu trebuie să meargă la bibliotecă fizic; oameni din întreaga lume pot avea acces la aceleași informații, atât timp cât au acces la o conexiune de Internet.

Disponibiliate mare. Un avantaj major al bibliotecilor digitale este că oamenii pot avea acces 24/7 la informații.

Acces multiplu. Aceleași resurse potfi utilizate simultan de către un număr de instituții si patroni. Acest lucru nu poate fi cazul pentru materialele protejate: o bibliotecă poate avea licență pentru "împrumut" numai un singur exemplar la un moment dat; acest lucru este realizat cu un sistem de gestionare a drepturilor digitale, unde o resursă poate deveni inaccesibilă după expirarea perioadei de creditare sau după creditor alege pentru a face inaccesibile (echivalent cu returnarea resursei).

Preluarea informației mult mai simplă. Utilizatorul este capabil sa utilizeze orice termen de căutare (cuvânt, frază, titlul, numele, subiect) pentru a căuta întreaga colecție. Bibliotecile digitale pot oferi interfețe user-friendly.

Conservarea și iar conservare. Digitalizarea nu este o soluție de conservare pe termen lung pentru colecții fizice, dar reușește în furnizarea de copii de acces pentru materiale care altfel s-ar degrada prin utilizare repetată.

Spațiu. Întrucât bibliotecile tradiționale sunt limitate din punct de vedere al mediului de stocare, bibliotecile digitale au potențialul de a stoca mult mai multe informații, pur și simplu, pentru că informația digitală necesită spațiu fizic foarte puțin pentru a le stoca și tehnologiile de stocare media sunt mai accesibile decât oricând.

Valoarea adaugata. Anumite caracteristici ale obiectelor, în primul rând calitatea imaginilor, pot fi îmbunătățite. Digitalizarea poate spori lizibilitatea și elimina defecte vizibile, cum ar fi pete și decolorare.

Ușor accesibil

Dezavantaje

Bibliotecile digitale, sau cel puțin de colecții digitale, din păcate, au adus propriile lor probleme și provocări în domenii precum:

Accesul egal – decalajul digital.

Interoperabilitatea dintre sisteme și software.

Autentificarea utilizatorului pentru accesul la colecții.

Organizarea informației.

Design de interfață.

Formare și dezvoltare.

3.2 Xampp

3.2.1 Prezentarea platformei

XAMPP este un pachet de programe gratuite, open source și cross-platform web server, care conține Apache HTTP Server, MySQL database și interpretoare pentru scripturile scrise în limbajele de programare PHP și Perl.

Caracteristici și cerințe

Programul XAMPP necesita descărcarea kitului de instalare in unul din formatele ZIP, TAR, 7z sau EXE, și nu necesită nicio altă modificare a configurării componentelor instalate. XAMPP își face updateuri cu regularitate pentru toate programele componentele: Apache / MySQL / PHP și Perl. El mai conține de asemenea, alte module precum OpenSSL și phpMyAdmin.

Instalarea XAMPP se face într-un timp mai scurt decât ar trebui să dureze instalarea fiecarei component în parte. Pot exista mai multe instanțe de XAMPP pe un singur calculator.

Utilizare

Designerii XAMPP au avut intenția de a îl utiliza numai ca utilitar de dezvoltare, pentru a permite designerilor si programatorilor web să își testeze munca pe calculatoarele proprii, fără a avea nevoie de acces la Internet. Pentru realizarea acestui lucru, caracteristicile de securitate importante sunt dezactivate în mod implicit. În practică, totuși, XAMPP este uneori utilizat pentru a servi pagini web în World Wide Web. Un utilitar special este asigurat pentru a proteja prin parolă cele mai importante părți ale pachetului.

XAMPP deasemeni oferă sprijin pentru crearea și manipularea bazelor de date în MySQL și SQLite între utilizatori.

Odată ce XAMPP este instalat, poți trata adresa de localhost a serverului XAMPP ca pe un server la distanță, prin connectarea utilizând protocolul client FTP. Utilizarea unui program ca FileZilla are multe avantaje atunci când instalezi un [CMS[content management system]] (CMS) ca Joomla. Te poți deasemeni conecta la o gazdă locală prin FTP utilizând editorul HTML propriu.

Pentru utilizatorul FTP implicit "newuser", parola FTP implicită este "wampp".

Utilizatorul MySQL standard este "root", iar acesta nu deține o parola MySQL implicită. Cu programul batch resetroot.bat din subdirectorul mysql al directorului unde este instalat XAMPP, puteți reseta acest utilizator încât să aibă parola vidă.

3.1.2 Securitate în Xampp

Xampp se instalează cu setările de securitate setate corespunzator, la nivel minim. Pentru a ne oferi o siguranță mai mare, după terminarea instalari programului Xampp, este bine să îi setăm o parolă. Aceast lucru este foarte ușor de realizat.

Pasul 1

Se pornește Xampp Control Panel și se dă Start la Apache HTTP Server și MySQL database.

.

Pasul 2

Se deschide un browser de net unde in adresa de link vom tasta adresa: http://localhost/xampp/ și se dă click pe Security din meniul din partea stângă.

Pasul 3

După ce executam apăsarea butonului o să se o fereastră nouă unde putem observa toate nivelurile de securitate. Tot în această fereastră avem un link pe care trebuie să il accesăm realizarea securizații programului MySQL database și directorul Xampp.

Pasul 4

În aceasta fereastră trebuie sa setăm o parolă pentru baza de date MySQL și pentru directorul Xampp.

La accesarea adresei http://localhost/phpmyadmin/ o să ne apară o ferestră care ne cere să ne autentificăm.

CAPITOLUL 4

DESCRIERA LUCRĂRII

Crearea bazei de date

Crearea unei baze de date folosind XAMPP

Baza de date a fost creată folosind aplicația XAMPP folosind phpMyAdmin.

Pentru deschiderea aplicației phpMyAdmin se pornește XAMPP și se accesează în panoul de link a aplicației Google Chrome adresa http://localhost/phpmyadmin/  

În noua fereastra afișată se va introduce numele noii baze de date (librărie ) și se va apăsa butonul Create.

3.1.2 Interfața cu utilizatorul

Aplicația prin lansarea ei produce apariția ferestrei principale a paginii Web, care seocupă de autentificarea utilizatorilor care doresc să folosească acestă aplicație.

Interfața cu utilizatorul

După cum se poate vedea din imaginea de mai sus, suntem intrați pe adresa de localhost unde am accesat librăria virtuală intitulată “Librărie Virtuala by Uta Robert”.

Este o interfața foarte simplă care are ca și imagine de fundal, care are ca si imagine Capela Sixtină din Vatican.

Pentru început am creat un buton intitulat “Loghează-te” care la apăsare o să deschida o noua fereastra care o să ne ceară să ne autentificăm cu nume si parola administratorului, el având acces deplin asupra bazei de date.

Administratorul o să poată să adauge, șteargă sau să facă orice actualizare necesară in baza de date

Fereastra de logare

Dacă autentificarea a fost efectuată cu success atunci vom fi redirecționați către o altă pagină intitulată “Pagină de administrare” unde vom putea adăuga cărti, numele autorului si categoria din care face parte cartea respective.

Câmpurile “Adaugă carte, Nume autor, si categorie” sunt câmpuri de tip char adică character.

Tabela de tip “Users” a bazei de date Librărie are

Librăria Virtuală conține 2

Concluzii

Lucrarea de diplomă m-a ajutat să aprofundez cunoștințe în domeniul ingineriei software, însușind noi tehnologii Java, PHP și MySQL.

Pe parcursul dezvoltării aplicației, am acumulat o experiență unică în ce privește lucrul cu noi framework-uri dezvoltate pentru aplicații de tip enterprise

Importanța Internetului crește zi de zi, imbunătățirea lor se face tot timpul și in toate domeniile, în special domeniul online sau web unde în fiecare zi apare câte ceva nou, de unde și importanța creării unei biblioteci virtuale.

Un web site costă o singură dată și rămâne permanent, 24 de ore din 24 în atenția publicului din orice zonă a lumii. Oricând, conținutulunui web site poate fi actualizat sau modificat după bunul Dumneavoastră plac.

La baza aplicației Librărie virtuală stă limbajul de programare PHP, care este cel mai des întâlnit și folosit limbaj de programare. De accea upă cateva cautări am ales să dezvolt aplicația cu acest limbaj . Aplicațiile din ziua de azi sunt foarte des distribuite și scrise in limbajul de programare PHP, care după opinia mea ar fi cea mai buna soluție pentru realizarea unei aplicații de comerț electronic pentru clienții care dispun de un buget redus.. Opinia mea este accea că limbajul de programare PHP are un rol mare în dezvoltarea aplicațiilor zilnice, statisticile demonstrând acest lucru.

Ca și dezvoltări ulterioare ce pot fi aduse pentru a îmbunătăți funcționalitatea aplicației date se consideră:

Adaugare de câmpuri noi cum ar fi faciliatea de a încărca și a descărca cărtile în format PDF;

Adăugarea unui forum ce va oferi posibilitatea de a adresa întrebări administratorilor dar și funcționarilor librăriei în ce privesc nelămuriri legate de cărti stocate pe platformă.

Pentru utilizatorii care accesează pentru prima dată platforma se va genera o pagină care va conține un set de instrucțiuni privind probleme ce pot apărea pe parcursul navigării, precum și soluțiile pentru rezolvarea acestora ( probleme de încărcare, de postare pe forum, probleme de logare etc.).

Pe viitor îmi propun dezvoltarea de aplicații asemănătoare pentru toate sferele de activitate, doarece consider că facilitățile ce le oferă acest tip de aplicații pot spori capacitatea de informare și eficientiza modalitățile de accesare a diferitelor tipuri de date.

BIBLIOGRAFIE

[1] Jason Lengstorf: PHP for Absolute Beginners, Apress, New York, 2009.

[2] Mary Bellis: The History of the Internet,

[3] Robert Schifreen: How to create Web sites and applications with HTML, CSS, Javascript, PHP and MySQL, Oakworth Business Publishing Ltd, UK, 2009.

[4] w3schools: HTML Introduction, http://www.w3schools.com/html/html_intro.asp.

[5] [Sab2003],Aplicatii Web la cheie. Studii de caz implementate in PHP; EdituraPolirom 2003.

[6] [Gug2005],HTML , X HTML , CSS și XML prin exemple – ghid practic;EdituraTeora2005.

[7] [Cez2006], Programarea aplicațiilor web cu PHP și MySQL

[8] ***, Web application, http://en.wikipedia.org/wiki/Web_application, accesat la 10 mai 2015;

[9] http://www.tutorialeonline.net/ro/article/despre-php-ce-este-si-instructiuni-pentru-incepatori, accesat la 1 mai 2015

[10] https://ro.wikipedia.org/wiki/PHP, accesat la 1 iunie 2015

[11] https://ro.wikipedia.org/wiki/XAMPP, accesat la 5 iunie 2015

[12] http://roelectronica.blogspot.ro/2010/06/manual-de-mysql-my-sql-book-part-1.html, accesat 5 iunie 2015

Similar Posts