Aplicatiile Web sunt prezentul si viitorul. Orice limbaj de programare ai fi facut in trecut, sau daca stii numai HTML, CV-ul tau va fi vazut altfel cu experienta in dezvoltarea aplicatiilor Web.
La nivel cel mai de jos World Wide Web-ul se bazeaza pe o arhitecura client/server. Asta insemna ca si severul central dar si aplicatia-client sunt responsabile de o parte din procesarea datelor.
Clientul
Aplicatiile care se pot dezvolta folosind MySQL si PHP folosesc un singur client: browser-ul Web. Unele aplicatii mai sofisticate pot folosi si un applet Java (spre exemplu un client de chat in timp real). Singurul client de care trebuie sa fii preocupat este browser-ul care va interpreta aplicatiile tale.
Server-ul
Aproape tot ce fac aplicatiile Web are loc pe un server. O aplicatie specifica, numita server Web, va fi responsabila pentru comunicarea cu browser-ul. In cele din urma, mai este nevoie de un limbaj care sa intermedieze cereri intre server-ul web si un server de baze de date, in cazul nostru si sa realizeze sarcini prin program asupra informatiilor ce vin si se duc spre sever-ul Web. Toate aceste trei elemente (server-ul Web, limbajul de programare si serverul de baze de date) trebuie sa fie compatibile si cu sistemul de operare din calculatorul pe care sunt folosite. Cele mai folosite sisteme de operare pe serverele Web sunt Windows NT/2000 si UNIX (peste 90% din numarul total de servere de pe Web).
Ce ar trebui sa folosesti pentru aplicatii Web ?
Ei bine, foarte pe scurt PHP si MySQL sunt produse gratuite, spre deosebire de celelate optiuni gratuitatea nu inseamna ca nu au aceleasi performante ca sistemele de mii de dolari. Windows NT sau Windows 2000 este o buna alegere, dar poti folosi MySQL si PHP si pe Windows 95/98/Me. Cu toate acestea, in lumea de afara aproape toate aplicatiile PHP/MySQL ruleaza pe o versiune de UNIX: Linux, Irix, Solaris, HP-UX..
Server-ul Web
Cele mai folosite servere Web sunt Apache si Microsoft's IIS. Apache este si el gratuit si in sistem Open Source ca si PHP, MySQL si Linux. El functioneaza bine pe un sistem UNIX dar si pe un sistem Windows (dar nu pe un server foarte incarcat). Cea mai buna alegere este realizarea si testarea aplicatiei pe Windows cu Apache, PHP si MySQL si apoi transferul aplicatiei pe un server Linux fara schimbari in script-uri.
Middleware
PHP face parte din clasa limbajelor middleware (ASP, Perl, ColdFusion etc.). Aceste limbaje lucreaza cu serverul Web pentru a interpreta cererile facute din dinspre World Wide Web, proceseaz aceste cereri, interactioneaza cu alte programe pe server pentru a indeplini cererile si va indica, apoi, server-ului exact ceea ce trebuie servit browser-ului clientului. Limbajul middleware va fi folosit pentru marea majoritate din munca ta.
O tranzactie normala cu baza de date Web se constituie din urmatorii pasi (numerotati in figura):
De ce sa folosesti PHP si MySQL ?
Ce este MySQL ?
MySQL este un server SQL pentru baze de date foarte robust, rapid, multi-utilizator, multi-thread.
MySQL este un sistem de gestiune a bazelor de date.
O baza de date este o colectie strucurata de date. Ca sa adaugi, sa accersezi si sa procesezi informatiile din baza de date ai nevoie de un sistem de gestiune a bazelor de date ca, de exemplu MySQL.
MySQL este un sistem de gestiune a bazelor de date relationale.
O baza de date relationala memoreaza date in tabele separate in loc de a stoca toate informatiile intr-o singura structura adaugand astfel viteza si flexibilitate. Tabelele sunt legate prin relatii permitandu-se afisarea datelor combinate la cerere.
Sistemele de gestiune a bazelor de date relationale (SGBDR) ofera o cale excelenta pentru a stoca si a accesa informatii complexe. Cele mai populare SGBDR-uri sunt Oracle, Infomix, Microsoft's SQL Server, IBM's db2 si SGBD-uri "open-souce": MySQL, Postgres si Interbase.
Baze de date relationale
TabeleCLIENTI ID Nume Adresa Oras 1 Julie Smith 25 Oak Street London 2 Alan Wong 47 Haines Avenue New York 3 Michelle Arthur 357 North Road Chicago
Daca adaugam o noua tabela cu comezile facute de clienti, putem face legatura intre cele doua tabele pe baza campului comun 'ID' care este PK in tabela 'clienti' si FK in 'comenzi':
COMENZI ComID ID Cantitate 1 3 30.66 2 1 23.00 3 2 5.00 4 4 40.87
Relatii
Exista 3 tipuri de relatii intr-o BD relationala:
Sfaturi de proiectare pentru baze de date