Sunteți pe pagina 1din 10

UNIVERSITATEA ROMANO AMERICANA , BUCURESTI

POGRAMA ANALITICA a disciplinei PROGRAMAREA WEB AVANSATA Predata studentilor de la Facultatea de Informatica Manageriala Anul II , cursuri de zi BUCURESTI Anul universitar 2004 2005

I.

NOTA INTRODUCTIVA

Disciplina PROGRAMARE WEB AVANSATA asigura pregatirea studentilor pentru proiectarea si realizarea de pagini WEB si aplicatii precum si integrarea acestora intr-o arhitectura client-server dinamica, cu ajutorul celor mai moderne si mai des folosite instrumente in domeniu : PHP si MySQL. Modulul cursului propune studierea elementelor : - Limbajul PHP 4 , ca limbaj de baza utilizat pentru constructia de pagini WEB si aplicatii; - Sintaxa SQL si lucrul cu SGBD ul MySQL Activitatea in cadrul acestei discipline se incheie cu examen incluzand atat testarea pregatirii teoretice a studentului cat si o proba practica . Verificarea si fixarea cunostintelor se va face pe tot parcursul anului dupa cum urmeaza : - sustinerea unui test teoretic in timpul semestrului - elaborarea unui proiect individual Studentii care intrunesc criteriile de performanta si frecventa au posibilitatea de a a opta pentru sustinerea examenului sau pentru considerarea ca nota finala a aprecierii activitatii lor in timpul semestrului . Modul de evaluare a performantelor studentului - activitatea din timpul anului - 50 % din nota finala - examen final - 50 % din nota finala

II.

FONDUL DE TIMP Afectat cursurilor si seminariilor

Numar de ore ( semestrul II ) Curs Seminar 28 28 III. CUPRINS 1. Introducere in PHP - Ce este PHP - Instalare PHP - Scrierea programelor PHP 2. Limbajul PHP - Tipuri de date in PHP - Constante si conversii - Blocuri decizionale in PHP - Cicluri si structuri repetitive in PHP - Functii in PHP - Obiecte in PHP - Lucrul cu fisiere - Erori in PHP 3. Lucrul cu clientul - Variabile in FORM uri - Persistenta FORM uri ascunse, sesiuni, cookie uri, query strings 4. MySQL - Elemente introductive baze de date - Instalare MySQL - Sintaxa SQL 5. PHP si MySQL - Preluare de date - Manipularea datelor 6. Procesare grafica in PHP - Crearea unei imagini, setarea culorilor - Desen : linii, cercuri, dreptunghiuri, text in imagine

IV. TEMATICA SEMINARIILOR Forma de Numar desfasurare de ore Laborator Laborator Laborator 2 ore 2 ore 6 ore

Seminar 1. 2. 3.

Tematica Instalare PHP si a modulului pentru serverul Apache Utilizare instructiuni de baza in PHP Sintaxa limbajului PHP Preluarea, prelucrarea si manipularea variabilelor de la client Persistenta in conectivitate : Cookie, Formuri ascunse Instalare MySQL Preluare, prelucrare si manipularea datelor din MySQL sub PHP Procesare grafica in PHP Aplicatie Contor web cu generare automata de imagine Aplicatie Mailer in PHP Aplicatie Magazin virtual

4.

Laborator

2 ore

5. 6. 7. 9. 10. 11. 12.

Laborator Laborator Laborator Laborator Laborator Laborator Laborator

2 ore 2 ore 2 ore 2 ore 2 ore 2 ore 4 ore

1. INTRODUCERE Ce este PHP ? PHP este abrevierea de la PHP Hypertext Preprocessor (similar cu GNU ce reprezinta abrevierea de la GNUs Not Unix). PHP este un limbaj de programare pentru creerea site urilor dinamice si interactive si a fost introdus de Rasmus Lerdorf in 1994. De atunci PHP a suferit numeroase schimbari. In termeni tehnici PHP4 este un limbaj tip script, cross platform, HTML embedded si server side. Cross platform puteti rula PHP pe sisteme de operare diferite, in majoritatea cazurilor fara modificari. HTML embedded codul PHP este o mixtura de instructiuni PHP si cod HTML. Server side programele scrise in PHP ruleaza pe un server (in general un Web Server cum ar fi Apache, IIS, etc..). Desi PHP5 prinde teren in fata batranului PHP4, acesta din urma este o implementare stabile ce ruleaza pe serverele unui numar mare de ISP, ceea ce inseamna ca odata ce scrieti o aplicatie in PHP4, o puteti cu usurinta gazdui un site. Instalare PHP *** Puteti descarca ultma versiune de PHP de pe site ul oficial (http://www.php.net). o Instalare sub Windows 2000/XP Din arhiva ZIP Pentru Win 2000 vom folosi IIS (Internet Information Server) care este Web Serverul Microsoft pentru uz industrial.

IIS se gaseste pe CD ul Windows 2000 si se instaleaza ca orice componenta Windows (Control Panel->Add/Remove Programs>Windows Components->IIS). Dupa ce ati descarcat si dezarhivat PHP de la http://www.php.net , copiati php4ts.dll in C:\WINNT\SYSTEM32 si toate fisierele din subdirectorul DLLS in C:\WINNT\SYSTEM32 . Copiati PHP.INI in C:\WINNT si deschideti acest fisier cu orice editor de text (Notepad). Cautati linia extension-dir si inlocuiti cu calea aferenta dezarhivarii pachetului descarcat. Ex : extension_dir=c:\php\extensions . Porniti Internet Service Manager (Start->Programs->Administration Tools) si apasati cu butonul dreapta pe Default Website si selectati Properties. Apasati pe ISAPI Filters. Selectati Add si creati un filtru nou numit PHP. In directorul in care ati dezarhivat pachetul de la php.net se gaseste un fisier numit php4isapi.dll ce trebuie introdus la campul Executable (c:\php\sapi\php4sapi.dll). Acum IIS trebuie instruit asupra caror fisiere sa apeleze filtrul. Apasati pe tab ul Home Directory si pe Configuration. Apasati butonul Add si specificati din nou calea catre PHP4ISAPI.DLL. Campul Extension completati-l cu .php . Restartati IIS. Cea mai buna cale de a inchide IIS ul este scrierea comenzii urmatoare in command prompt : net stop iisadmin Dupa terminarea mesajelor porniti serverul de Web : net start w3syc Cu installer Dupa ce descarcati installer ul de la http://www.php.net/downloads.php , cu ajutorul unei interfete grafice prietenoasa veti fi intrebati despre locatia instalarii, serverul de SMTP (optional) si serverul Web folosit (IIS, Apache sau altele). Spre deosebire de distributia sub forma de arhiva ZIP, installer-ul nu include nici o librarie externa, cum ar fi php_gd2 (ce foloseste la procesarea fisierelor grafice).

Librariile dorite le puteti copia manual din arhiva ZIP, respectiv directorul Extensions in c:\php (sau directorul unde ati ales sa instalati PHP), precum si directorul Dlls o Instalare PHP4 sub Linux si alte platforme Unix Apache este cel mai popular server de web sub Unix in lume, prin urmare vom folosi Apache. Trebuie ca de la bun inceput sa selectam o metoda de instalare : Instalare prin compilarea manuala a surselor are avantajul de a fi cea mai flexibila solutie pentru instalari personalizate, cu dezavantajul de a solicita cunostinte de compilare. Instalare prin binare are avantajul de a se instala foarte rapid cu cunostinte minime, dar nu este tot atat de flexibil. In cazul instalarii cu surse, sunt necesari pasii standard unei compilari sub UNIX : ./configure --<optiuni> make make install De asemenea este necesar sa aveti librariile necesare optiunilor de la ./configure . Ex: ./configure --with-mysql -> implica existenta pachetului mysql instalat anterior. In cazul instalarii cu binare (pachete RPM pentru RedHat, Suse, Mandrake, Turbolinux, Caldera sau .tar.gz pentru Slackware) este necesar sa instalati urmatoarele : zlib, libpng,libjpeg, gd, gd-devel, apache, mod_php. Configurarea Apache(Linux) Pentru ca apache sa poata fi pornit trebuie ca serverul pe care rulati sa aiba un nume calificat (FQDN). Comanda prin care asignati un nume este : hostname exemplu.net .

Principalul fisier de configurare al Apache este httpd.conf care se regaseste normal in /etc/apache/conf sau in /usr/local/apache/conf , in functie de distributie sau de parametrii alesi la instalare. Cu un editor de text (vi, joe, jed) deschideti un fisier si cautati libphp4.so . Daca nu gasiti acest string, la sectiunea Modules inserati : LoadModule /usr/local/apache/lib/libphp4.so sau unde este instalat pachetul mod_php (vezi comanda locate). In cazul in care numele hostului nu poate fi rezolvat printr-o interogare de DNS, regasiti in httpd.conf linia ServerNamesi scrieti : ServerName exemplu.net. Restartati Apache utilizand comanda apachectl restart . Testarea instalarii Web Server+PHP (indiferent de platforma aleasa): Deschideti un editor de text (notepad,vi) si scrieti urmatoarele linii: <?php phpinfo(); ?> Salvati fisierul in directorul radacina al serverului web (\InetPub\WWWRoot pentru IIS si /var/www/htdocs/html sau /home/htdocs/html pentru Apache/Unix) si numiti-l test.php . Deschideti browserul la adresa http://localhost/test.php si verificati daca apare un ecran format din tabele cu informatii despre distributia de PHP instalata.

Scrierea programelor PHP Programele PHP sunt o mixtura de trei elemente : text, cod HTML si script PHP Pentru ca paginile ce contin script PHP sa poata fi procesate de modulul PHP implementat in Apache sau alt server de pagini Web este necesar ca paginile sa aiba acea extensie pe care ati specificat-o la incarcarea modulului in serverul de web (standard, extensia implicita este .php). Primul exemplu de program - deschideti un editor de text si scrieti : <HTML> <BODY>Program 1 <BR> <?php echo Salut studentule !!; ?> </BODY> </HTML> Salvati acest fisier in directorul radacina al paginilor de web, sub numele de program1.php . Deschideti pagina http://localhost/program1.php. Veti vedea scris mesajul : Program 1 Salut studentule !! Daca studiem codul vom vedea ca sunt trei categorii de cod : i) ii) iii) <HTML>,<BODY>,<BR> sunt elemente tag din sitaxa HTML ; Program 1 este text Codul cuprins intre <?php si ?> este cod PHP. Delimitatorul uzual pentru PHP este <?php , respectiv inchiderea se face prin ?>. Exista varianta simpla <? , respectiv inchidere prin ?> . Intre aceste taguri trebuie sa existe NUMAI cod PHP.

Cum functioneaza codul ? Fisierul program1.php este trimis modulului de php incarcat in serverul de web. Modulul prelucreaza NUMAI ce se afla intre tagurile <?php si ?> restul fiind trimis catre serverul web fara a fi prelucrat sau interpretat. Rezultatul prelucrarii este si el trimis serverului de web care rimite mai departe catre client (browser). Comanda echo este folosita pentru trimiterea catre serverul de web a textului inscris intre cele doua ghilimele. Fiecare linie de cod PHP (dupa terminare) trebuie inchisa de semnul punct-si-virgula (;).