LUCRARE DE DISERTATIE, IULIE 2005

1

UNIVERSITATEA TEHNICĂ DIN CLUJ-NAPOCA
Şcoala Academică Postuniversitară "Informatică aplicată şi programare" BISTRIŢA

Lucrare de disertaţie

SITE-UL DE PREZENTARE AL SCOLII GENERALE NR. 1 BISTRITA

Absolvent: prof. Dana Moraru Coordonator: conf. dr. ing. Mihai Damian IULIE 2005

UNIVERSITATEA TEHNICA CLUJ -NAPOCA

LUCRARE DE DISERTATIE, IULIE 2005

2

ENGLISH SUMARY PRESENTASION:

The purpose of actual prezentation is to create a WEB site of Secondary School Nr. 1 from Bistrita, institution where I have been teaching for the last two years. The increasing development of Internet, and also the competition with other educational institutions, a quick adaptation of the way in which the educational offer is known, has imposed. The access to information through Internet, which may be of wide interest for recent and future generations of students and parents, has been imposed us to realised the WEB page of Secondary School Nr. 1 from Bistrita, a very recognised school for its results in education of young generations in Bistrita. In this page there is shown the school itself, as well as the athmosphere in a modern, attractive and really friendly way for students, parents, and teachers, using HTML Language. The first version of the site was realised for the exam in the first year, called "Web pages". Later, as a fact of the increasing information, diversity of presentation themes and the requirements of the school's maneger,it has been extended, giving the acctual shape, as well as several posibilities of developing it in different ways. For this presentation I have choosen Server Apache, with the redaction language through Server PHP and with Data Base Server MySQL, because these software are without any licence and the programming is much easier than ASP. The redactation of HTML, PHP and JAVA' s codes were made with Crimson Editor. I, also used PHP programming and MySQL tables, under PHP TRIAD, for the management of a data base " Your Options". The language JAVA Script it was also used. The storage of this information was done on the server of The Ministery of Education and Research and will be manipulated and used through an account FTP whitch can be accessed using a password.

UNIVERSITATEA TEHNICA CLUJ -NAPOCA

LUCRARE DE DISERTATIE, IULIE 2005

3

CUPRINS:
I. Introducere:..........................................4
1......................................................................Motivatia lucrarii.4 2........................................................................................Cerinte.5 3....................................................................................Restrictii.5 4................................................Variante de realizare a temei.6 5....................................................Justificarea metodei alese.6

II. Prezentarea tehnologiei aplicatiei:..................7

III. Prezentarea modului de realizare a temei:.......49

1..........................................................................Limbajul HTML.8 2........................................................Tehnologia PHP - MySQL ...................................................................................................28 3...............................................................................Notiuni SQL ..................................................................................................40 4. Programarea Java Script.....................................................45 1............................Prezentarea structurii generale a sitului ...................................................................................................49 2...............................................................................Harta sitului ....................................................................................................51 3............Continutul paginilor HTML - coduri de programe ...................................................................................................53 4...........................................................Creearea unui formular ....................................................................................................61 5...........................................................................Scripturi PHP ...................................................................................................63 6..............................................................Programe Java Script ...................................................................................................66 7...............................................................Baza de date MySQL ....................................................................................................71

IV. Posibilitati de continuare si extindere a temei. . .72 V. Bibliografie..........................................73

UNIVERSITATEA TEHNICA CLUJ -NAPOCA

IULIE 2005 4 UNIVERSITATEA TEHNICA CLUJ -NAPOCA .LUCRARE DE DISERTATIE.

1 Bistriţa. care are. a impus realizarea un Site de prezentare al Scolii Generale Nr. cat si pentru conducerea scolii. 1 Bistriţa. in acest mod.ce va fi îmbunătăţită în continuare. dar si pentru elevi si profesori. IULIE 2005 5 I. care pot sa-si cunoasca scoala dintr-o perspectiva globala.LUCRARE DE DISERTATIE. UNIVERSITATEA TEHNICA CLUJ -NAPOCA . Dezvoltarea crescândă a Internetului. a Scolii Generale Nr.INTRODUCERE: 1. MOTIVATIA LUCRARII: Obiectivul prezentei lucrări îl constituie realizarea unui site web într-o primă formulă. cât şi concurenţa cu alte institutii de învăţământ impune o adaptare din mers a modului de a ne face cunoscuţi. un instrument foarte util de feed-back a opiniilor celor din exteriorul scolii. Realizarea accesului şi prin Internet la diferite informaţii de interes pentru actualii si viitorii parinti. in cautarea scolii ideale pentru copilul lor.

3.LUCRARE DE DISERTATIE. integrarea de formulare pentru trimiterea de informaţii de către vizitator. uneori şi la blocaje. încărcare rapidă a paginilor şi de către mai multe browsere (Internet Explorer. Netscape. IULIE 2005 6 2. legarea site-ului de baze de date ce stochează diferite informaţii de interes pentru vizitatori. simplu şi modern al paginilor. • RESTRICŢII: Principalele constrângeri pe care le întâmpină un web designer se referă la: evitarea integrării în site a imaginilor cu volum mare de memorie. Opera. • • evitarea pe cât posibil a lucrului cu frame-uri. care de asemenea determină încărcarea greoaie a paginilor. în cazul unor conexiuni de mici performanţe. realizarea de efecte dinamice. UNIVERSITATEA TEHNICA CLUJ -NAPOCA . lucru ce conduce la încărcarea cu greutate a paginilor. etc). tratarea scripturilor JavaScript astfel încât să fie recunoscute de diferite browsere. • • • • • CERINŢE: Cerinţele pentru realizarea unui site web modern impun următoarele: design atractiv.

VARIANTE DE REZOLVARE A TEMEI: În ceea ce priveşte tehnologia utilizată. • • utilizarea unor editoare HTML specializate (de ex. JUSTIFICAREA METODEI ALESE: Pentru prezenta lucrare a fost aleasă varianta de server Apache. etc. IULIE 2005 7 4. legate în principal de: • modul efectiv de redactare a codului de program (scriere de cod manual sau utilizarea unor utilitare de generare a codului ca de ex macromedia Dreamweaver. respectiv server web Apache. cu limbajul de scriptare orientat server. cu limbajul de scriptare orientat server PHP şi cu serverul de baze de date MySQL.). în faţa web designerului stau o serie de opţiuni.LUCRARE DE DISERTATIE. respectiv sistemul de gestiune al bazelor de date relaţionale. sau scrierea de cod cu editoare uzuale (de ex. etc. aici sunt de ales variante ca server web Microsoft IIS cu ASP şi Microsoft SQL.) alegerea unei variante de server web. În ceea ce priveşte realizarea codului de HTML a fost utilizat utilitarul CrimsonEditor UNIVERSITATEA TEHNICA CLUJ -NAPOCA . TextPad sau PHP Editor sau CrimsonEditor). cu PHP şi MySQL. NotePad. 5. întrucât aceste softuri sunt fără licenţe şi programarea se face mai uşor decît în ASP.

Dar o definiţie a acestuia a fost dată de abia în anul 1995 de către Federal Networking Council ca fiind: • • • un sistem informaţional care utilizează în mod unitar acelaşi spaţiu de adrese bazat pe IP sau pe viitoarele sale extensii. este capabil să asigure comunicarea prin suita de protocoale TCP/IP sau prin viitoarele sale extensii.PREZENTAREA TEHNOLOGIEI APLICAŢIEI: Prezenta lucrare utilizează următoarele softuri: • • • • • • server web: Apache. oferă acces. UNIVERSITATEA TEHNICA CLUJ -NAPOCA . Unul dintre cei mai utilizaţi termeni astăzi este Internetul. la serviciile de comunicaţii de nivel înalt. Există mai multe metode de acces la informaţia stocată pe un calculator prin intermediul reţelei Internet: • • • • FTP (File Transfer Protocol) serviciul pentru transfer fişiere Telnet serviciul pentru acces la distanţă. sistem de baze de date şi server de baze de date MySQL. News serviciul de ştiri. limbaj de scriptare orientat server: PHP. limbaj de realizare a paginilor: HTML. utilitar de creare a bazelor de date şi tabelelor PHP MyAdmin. IULIE 2005 8 II. World Wide Web altă metodă de acces la informaţia stocată pe un calculator aflat oriunde în lume. Elecronic Mail serviciul de mesagerie electronică. public sau privat.LUCRARE DE DISERTATIE. limbaj de scriptare orientat client JavaScript.

UNIVERSITATEA TEHNICA CLUJ -NAPOCA .LUCRARE DE DISERTATIE. IULIE 2005 9 • World Wide Web utilizează tehnologia client-server.

LIMBAJUL HTML: HiperText Markup Language (HTML) este un limbaj “gazdă” în care sunt încapsulate obiectele şi aplicaţiile pe Internet. două calculatoare în cadrul serviciului WWW.) Limbajul HTML este destinat realizării de pagini Web. IULIE 2005 Pentru a comunica între ele.htm sau . 10 1. Aceste pagini sunt nişte fişiere ce au extensia . sunete etc. HyperTextul este text îmbogăţit cu alte tipuri de informaţii: sunete. Paginile Web create cu ajutorul acestui limbaj au următoarele caracteristici: • • • sunt multimedia.html. imagini şi filme indicatori de prezentare a informaţiei legături (link-uri) către alte pagini Web aflate oriunde în lume aplicaţii (programe JavaScript. UNIVERSITATEA TEHNICA CLUJ -NAPOCA . utilizează protocolul HTTP (HyperText Transfer Protocol). un fişier ce conţine hipertext este scris într-un limbaj numit HTML (HyperText Markup Language). imagini. având instalat orice sistem de operare şi utilizând orice browser. Java etc. adică se văd la fel pe orice calculator.LUCRARE DE DISERTATIE. sunt interactive. etc. adică răspund la cererea utilizatorului sunt independente de platforma hardware şi software. imagini. HTML este un limbaj care permite inserarea de: • • • • • text sunete. adică conţin informaţii sub formă de text.

LUCRARE DE DISERTATIE. IULIE 2005 11 UNIVERSITATEA TEHNICA CLUJ -NAPOCA .

cât şi cu litere mici. este deci vorba despre un tag vid.. etc. adică ceea ce va fi afişat în fereastra browser-ului.) sau un editor de texte dedicat (Netscape Composer . Wordpad.). <br> poate fi utilizat în interiorul altor tag-uri. Blocul <body>.. Internet Explorer). Word. Rezolvarea referinţelor conţinute în pagina Web (legături. pagină HTML standard este o succesiune de blocuri ce pot fi imbricare.htm într-un site Web.> si transmit comenzi către browser pentru a afişa pagina într-un anumit mod.</body>. In acest caz nu există </br>..</html>. imagini. Elementele standard ale unui document HTML: Crearea unei pagini Web presupune: • Editarea fişierului HTML utilizând: un editor de texte obişnuit (Notepad... Elementele standard ale unui document HTML sunt: • • Blocul extern : <html>..LUCRARE DE DISERTATIE. cum ar fi headere sau liste...</body> cuprinde conţinul propriu-zis al paginii HTML. Vizualizarea paginii cu ajutorul unui browser. Blocuri incluse : <head>.</title>. Acest lucru se realizează cu ajutorul unui bloc <title>.. Orice etichetă poate fi scrisă atât cu litere mari. IULIE 2005 12 1. Pentru un stil mai elegant se recomandă ca fiecare pagina HTML să aibă un titlu... sunete.1. Aceste simboluri speciale sunt incluse între paranteze <.. UNIVERSITATEA TEHNICA CLUJ -NAPOCA .. Tag-ul <br> este folosit pentru trecerea la o linie nouă. • • • • Salvarea paginii Web cu extensia ... etc.html sau .. Un bloc este delimitat de simboluri speciale numite marcaje sau tag-uri.</head> si <body>..

a culorii de font şi a culorii de text: • • • Pentru ca un textul să apară în pagină îngroşat.2.LUCRARE DE DISERTATIE... trebuie inclus între delimitatorii<b> şi</b>. IULIE 2005 13 1.3. Font. Pentru ca un text să fie scris cu caractere mai mari cu o unitate decât cele curente. topmargin (stabileşte distanţa dintre marginea de sus a ferestrei browser-ului şi marginea de sus a conţinutului paginii). acesta trebuie inclus într-un bloc delimitat de etichetele <big> şi </big>. Stabilirea tipurilor de caractere. </body> </html> 1.. Exemplu: <html> <head><title>Catedra de biologie</title></head> </head> <body marginwidth="0" marginheight="0" style="margin: 0"> .. Culoare. UNIVERSITATEA TEHNICA CLUJ -NAPOCA . Stabilirea caracteristicilor textului de bază: Textul afişat este caracterizat de atributele: • • • Mărime. Poziţionarea conţinutului paginii Web faţă de marginile ferestrei browser-ului se poate face cu ajutorul a două atribute ale etichetei <body>: • • leftmargin (stabileşte distanţa dintre marginea din stânga a ferestrei browser-ului şi marginea din stânga a conţinutului paginii). acesta trebuie inclus într-un bloc delimitat de etichetele <i> şi </i>. Pentru ca un text să fie scris cu caractere înclinat.

</body> </html> impune pentru textul dintre marcaje culoarea UNIVERSITATEA TEHNICA CLUJ -NAPOCA ... Exemplu: <html><head><title>Catedra de biologie </title></head> <body bgcolor="#b2ecec"></bgcolor> <font color=”red”>Componenta catedrei </font> . 2. acesta trebuie inclus într-un bloc delimitat de etichetele <u> şi </u>. yellow. F.</body> schimbă culoarea scrisului pentru toată pagina. <font color =”#rrggbb”>.. g.. </body> </html> • Culoarea de font a unei pagini Web poate fi precizată în două moduri: • • Print-un nume de culoare : red.... black.. 1.. • Culoarea de text se face prin intermediul atributului text al etichetei <body> se folosesc sintaxele : <body text =”#rrggbb”>.</font> ”#rrggbb”...etc.. se pot defini astfel 65536 de culori. blue.... Culoarea unei pagini se precizează prin intermediul unui atribut al etichetei <body>. sau b sunt cifre hexagonale şi pot lua valori 0..f.. green. Exemplu: <html> <head><title>rezultate</title></head> <body bgcolor="#b2ecec"></bgcolor> <FONT size=3><big>Rezultate obtinute la concursuri si olimpiade<br> </FONT></Big> .A. Prin construcţia “#rrggbb” unde r ...a. white.9.LUCRARE DE DISERTATIE. IULIE 2005 14 • Pentru ca un text să fie scris cu caratere subliniate .. ..

Incepem clasa I cu emotii si bucurie in suflet si cei opt ani ai se pare ca au zburat. IULIE 2005 15 1. <h3>. în UNIVERSITATEA TEHNICA CLUJ -NAPOCA .. Aceste etichete acceptă atributul align. <br. scolii generale ni • Blocuri de titlu Intr-un text sunt necesare titluri de capitole de diferite dimensiuni.center”... Spre deosebire de eticheta <br> eticheta <p> permite:inserarea unui spaţiu suplimentar înainte de blocul paragraf.. <head><title>ganduri</title></head> <body bgcolor="#b2ecec"></></bgcolor> <p> <p align=justify> <br>O mare parte din viata omul si-o petrece in scoala. . </p> . teza sau olimpiada? Dar cand roadele muncii noastre se observa prin relizarile noastre..left”. dacă se foloseşte delimitatorul </p> alinierea textului cu ajutorul atributului align având valorile posibile . Toate aceste etichete se referă la un bloc de text şi trebuie însoţite de o etichetă similară adică <h3>. <br>Uneori scoala inseamna stres pentru ca cine nu are emotii la o lucrare.right”..... <h4>. pentru alinierea blocului de text. Acestea pot fi introduse cu ajutorul etichetelor <h1>... • • Exemplu: <html> inserarea unui spaţiu suplimentar după blocul paragraf. .4.</h3>... sufletul ni se umple de bucurie si satisfactie. <h5>.. <h6>. <h2>. Etichete la nivel de bloc de text: • Blocuri paragraf Trecerea la o linie nouă se mai poate realiza si cu ajutorul etichetei paragraf <p>. la stânga .LUCRARE DE DISERTATIE. </body> </html> .

. In următorul exemplu am expus o pagină Web ce conţine o listă neordonată: <head><title>Rezultate</title></head> <body bgcolor="#b2ecec"></bgcolor> <ul type=”disc”> <li>Premiul II la faza judeteana a Olimpiadei de Biologie:<br> .Tag-ul <h1> permite scrierea unui titlu cu caracterele cele mai mari . Exemplu: <html> <head><title>Catedra de biologie</title></head> <body bgcolor="#b2ecec"></bgcolor> <h2 align=”left”><font color=”red”>CATEDRA DE BIOLOGIE</font> </h2> .. </body> </html> 1. pe când <h6> foloseşte caracterele cele mai mici. Introducerea listelor într-opagină WEB: • Lista neordonată reprezintă un bloc de text delimitat de etichetele corespondente <ul> si <ul>(“unordered list”) ..5..<br> elevii: UNIVERSITATEA TEHNICA CLUJ -NAPOCA . “disc” (disc plin).<br> <li>Mentiuni la faza judeteana a Olimpiadei de Biologie:<br><ul> <li>Muresan Cristian (clasa a-VII-a).LUCRARE DE DISERTATIE.eleva: Chiperi Andreea (clasa a-VII-a).Tag-urile <ul> şi <li> pot avea un atribut type care stabileşte caracterul afişat în faţa fiecărui element al listei. “circle” (cerc). Valorile posibile ale acestui atribut sunt: • • • Exemplu: <html> “square” (pătrat). IULIE 2005 16 centru şi la dreapta. Fiecare element al listei este iniţiat de eticheta <li> .

LUCRARE DE DISERTATIE, IULIE 2005

17

<li>Zboras Dumitru(clasa a-VII-a);<br> </ul> <li>Premiul I la faza judeteana a concursului "Micii biologi"<br> -elevii: <ul> <li>Sangeorzan Oana (clasa a-VI-a); <li>Mihalte Silvia (clasa a-V-a); </ul> </ul></body></html>

Lista ordonată este acel bloc de text delimitat de etichetele corespondente

<ol>text </ol> (ordered list). Fiecare element al listei este iniţiat de eticheta <li>.
Tag-urile <ol> si <li> pot avea un atribut type care stabileşte tipul de caractere utilizate pentru ordonarea listei. Valorile posibile sunt:

• • • • •
proiect: Exemplu:
<html>

,,A” pentru ordonare de tipul A, B, C, etc.; ,,a” pentru ordonare de tipul a, b, c, etc.; ,,I” pentru ordonare de tipul I, II, III, etc.; ,,i” pentru ordonare de tipul i, ii, iii, etc.; ,,1” pentru ordonare de tipul 1, 2, 3,etc.

Listele ordonate pot fi imbricate între ele şi cu liste neordonate ca în exemplul din

<head><title>Activitatile grupului "ECO"</title></head> <body background=> <ol 1> <li>Pregatirea grupului "Eco" prin informare teoretizata privind:<br> -ocrotirea mediului;<br> -poluare;<br> -impactul om-natura;<br> -metode de ocrotire si implicare a oamenilor in salvarea Terrei. <li>Expozitie cu exponate realizate cu materiale refolosibile:<br> -pliante;<br> -planse.<br>

UNIVERSITATEA TEHNICA CLUJ -NAPOCA

LUCRARE DE DISERTATIE, IULIE 2005
.....

18

UNIVERSITATEA TEHNICA CLUJ -NAPOCA

LUCRARE DE DISERTATIE, IULIE 2005

19

</ol> </body> </html>

1.6. Introducerea imaginilor într-o pagină WEB:
O facilitate extraordinară a limbajului HTML este posibilitatea de a include imagini. Imaginile sunt stocate în fişiere cu diverse formate. O parte din formatele acceptate de browsere sunt:

• • •

GIF cu extensia .gif; JPEG cu extensia .jpg sau .jpeg; BMP cu extensia .bmp.

Pentru a insera într-o pagina Web o imagine, se utilizează eticheta <img>. Pentru a putea fi identificată imaginea ce urmează a fi inserată, se utilizează un atribut al etichetei <img> şi anume src. Dacă imaginea se află în acelaşi director cu fişierul HTML care face referire la imagine, atunci adresa imaginii este formată din numele imaginii, inclusiv extensia. Pentru o mai plăcută prezentare a unei imagini putem aplica şi un chenar. De asemenea celulele unui tabel pot conţine imagini. Exemplu:
<html> <head><title>Baza materiala</head></head> <body> <table width=480> <tr> <td width=200 align=middle valign=bottom> <img src="poza_generic5.jpg"><br><br><br> <img src="scoala_generic3.jpg"><br><br><br> <img src="copii_generic1.jpg"><br><br> </td> </tr> </body> </html>

UNIVERSITATEA TEHNICA CLUJ -NAPOCA

</u> </a> </body> </html> • Imaginile în fişiere externe necesită un timp îndelungat de încărcare în browser.html"><img.LUCRARE DE DISERTATIE. dar stocată într-un fişier cu o rezoluţie foarte bunaă Exemplu: <html> <head><title>locatia</title></head> <body> <a href=”bn_mare.src="sala_de_clasa. multe dintre ele dotate dupa ultimele cerinte.jpg”></a> <li> </ul> </body> </html> UNIVERSITATEA TEHNICA CLUJ -NAPOCA . IULIE 2005 20 Imaginile pot fi folosite pentru crearea unor legături (link-uri) cu alte pagini din proiect. lăsând utilizatorului posibilitatea de a le încărca sau nu.html> Cauta-ne! Noi suntem cei mai aproape!</a> </body> </html> Un truc des întilnit este acela de a utiliza o imagine de rezoluţie scăzută pe post de legătura către aceeaşi imagine. Exemplu: <html> <head><title>tipuri de armaturi</title></head> <body> <a href="baza_materiala. Exemplu: <html> <head><title>Locatia</title></head> <body> <a href=locatia. deseori în pagina Web este preferată inserarea numai unei legături către imagini.jpg”><img src=”bn_mic. O legătura introduce în pagina Web o zona “activă”.jpg" <u>Sali de clase.

valoare egală cu 0 a grosimii semnifică absenţa chenarului.7. Tabele: Pentru a insera un tabel se folosesc etichetele corespondente <table>.”right” • Culoarea de fond se stabileşte cu ajutorul atributului bgcolor care poate fi ataşat întregului tabel prin eticheta <table>. atunci prioritatea este următoarea: <td>. unei linii prin eticheta <tr> sau unei celule de date prin eticheta <td>. Ca o concluzie. Valorile pe care le poate primi atributul bgcolor sunt cele cunoscute pentru o culoare. IULIE 2005 21 1. Pentru a insera un rând într-un tabel se folosesc etichetele <tr> şi </tr>(table row). O celulă de date se introduce cu eticheta <td> (table data). toate tag-urile care descriu elementele unui tabel sunt cuprinse in interiorul constructiei <table>. chenarul unui tabel are un aspect tridimensional.. • Pentru a alinia un tabel într-o pagina Web se utilizează atributul align al etichetei <table> cu următoarele valori posibile:”left”. caz în care tabelul va avea un chenar de grosime prestabilită egala cu 1 pixel. Când are grosime nenulă. -introduce celule individuale din liniile tabelului.. • Pentru a adăuga un chenar la un tabel .</table> Un tabel este format din rânduri. <tr>si <table>. Dacă în tabel sunt definite mai multe atribute bgcolor. se utilizează un atribut al etichetei <table> numit border • • • Atributul border poate să nu fie urmat de o valoare.LUCRARE DE DISERTATIE. Un rând este format din mai multe celule ce conţin date. -specifică liniile tabelului. “center” . UNIVERSITATEA TEHNICA CLUJ -NAPOCA .. Acestea sunt: <caption> <tr> <td> -tag optional care specifică titlul tabelului.

respectiv înălţimea în pixeli a tabelului. Alinierea pe orizontală a conţinutului unei celule se face cu ajutorul atributului align . .. . care poate lua una din valorile: • • • • • • . .bottom” (sub tabel). Această etichetă trebuie plasată în interiorul etichetelor <table>.center”.left”.. ale etichetei <table>. In exemplu de mai jos am inclus toate aceste modalităţi de construire şi aranjare a unui tabel într-o pagina Web. • Titlul unui tabel Se poate ataşa un titlu unui tabel cu ajutorul etichetei <caption>.. .. Valorile acestor atribute pot fi: • • Numere întregi pozitive reprezentând lăţimea.LUCRARE DE DISERTATIE.beneficiari”. urmate de semnul % reprezentând fracţiunea din lătimea.top” (deasupra tabelului).right” (la dreapta tabelului).</table>. IULIE 2005 <th> -descrie celulule cap de tabel. 22 • Dimensiunile unui tabel –lăţime şi înălţime . UNIVERSITATEA TEHNICA CLUJ -NAPOCA . dar nu în interiorul etichetelor <tr> sau <td>.right”. Exemplul este de fapt o parte din tabelul numit .. Capul de tabel este format din celule ce pot fi introduse cu eticheta <th>.left” (la stanga tabelului)... Titlul unui tabel poate fi aliniat cu ajutorul atributului align al etichetei <caption>.pot fi stabilite exact prin intermediul a două atribute. fiind tot un tag opţional. .. respectiv înăţimea totală a paginii.. Numere întregi între 1 şi 100.. width si height. care poate lua valori: • • • .

iar în rândul de jos se află textul. IULIE 2005 23 Se pot construi tabele cu imagini şi texte împreună. Asfel în rândul de sus se află imaginea . UNIVERSITATEA TEHNICA CLUJ -NAPOCA .LUCRARE DE DISERTATIE.

LUCRARE DE DISERTATIE..<li>Sas Anca.. medii peste 8: </td> <td bgcolor="#62D9D9" align=right>62 </td> </tr> . IULIE 2005 Exemplu: <table width=380 cellpadding=0 cellspacing=0 border=0> <tr> <td width=280 bgcolor="#b2ecec"> elevi inscrisi la Testele Nationale </td> <td width=100 bgcolor="#62D9D9" align=right>222 </td> </tr> <tr> <td bgcolor="#b2ecec">* elevi promovati: </td> <td bgcolor="#62D9D9" align=right>195 </td> </tr> <tr> <td bgcolor="#b2ecec">* elevi respinsi: </td> <td bgcolor="#62D9D9" align=right>27 </td> </tr> <tr> <td bgcolor="#b2ecec">* medii de 10 obtinute de elevii nostri: <ul><li>Alb Gabriel. medii peste 9: </td> <td bgcolor="#62D9D9" align=right>45 </td> </tr> <tr> <td bgcolor="#b2ecec">* nr.. </table> UNIVERSITATEA TEHNICA CLUJ -NAPOCA .</ul> 24 <td bgcolor="#62D9D9" align=right valign=top>2<br> </td> </tr> <tr> <td bgcolor="#b2ecec">* nr..

adică zone de pe ecran sensibile la apăsarea butonului stâng al mouse-ului. 3. In pagina HTML se inserează legături prin intermediul unei etichete speciale <a> şi a unui atribut href care ia ca valoare adresa unei surse solicitate. Legături – interactivitatea unei pagini WEB: Legăturile (link-urile) reprezintă partea cea mai importantă a unei pagini Web.Legăturile sunt zone active într-o pagina Web. sunet . Dacă aceasta este o noua pagină Web . Efectuând clic pe o zona activă ce reprezintă o legătura din pagina Web. Calculatorul client primeşte resursa solicitată şi o încarcă în browser. Pagina veche este înlocuită de pagina nouă în acelaşi browser sau este lansată în execuţie o nouă instantă a browsr-rului care conţine noua pagină.8. referite de acest fişier. paginile Web devin interactive (adică răspund la acţiuni iniţiate de utilizator). In acest fel. Paşii care se execută prin aplicarea acestor legături sunt următorii: 1. Serverul WWW ce stochează noua resursă primeşte cererea si expediază către utilizator resursa solicitată. care permite trecerea rapidă de la o informaţie aflată pe un anumit server la altă informatie memorată pe un alt server aflat oriunde în lume. 5. browser-ul trimite către serverul care stochează noua resursa o cerere de a-i expedia pagina respectivă. Un clic efectuat cu mouse-ul pe o legătură este interpretat ca o cerere către un anumit server din Internet de a expedia către calculatorul client o resursă indicată de legătura respectivă. 2. In pagina Web apar legături diferite la punctul 1) ca zone active.html”> zona activa </a>. atunci serverul expediază un fişier HTML împreună cu fişierele imagine. cursorul mouse-ului ia în mod automat forma unei mâini. Când mouse-ul se află deasupra unei zone active. Ele transformă un text obişnuit în hipertext sau hipermedia. IULIE 2005 25 1. 4. De exemplu <a href = “prezentare. UNIVERSITATEA TEHNICA CLUJ -NAPOCA .LUCRARE DE DISERTATIE. 6.

Rolul de zona activă poate fi jucat şi de o imagine dacă inserarea ei are loc între etichetele <a> si </a>. adica zona din pagina Web care devine sensibilă la apăsarea butonului stâng al mouse-ului. Exemplu: <html> <head><title>left</title></head> <body bgcolor=”white”> <a href=”locatia. care va înlocui vechea pagină.html”>Laborator de biologie</a> </body> </html> 1.LUCRARE DE DISERTATIE. De obicei ea este un text care apare subliniat si de culoare albastra. Exemplu: <html> <head><title>Baza materiala</title></head> <body> <a href=”biologie.9.html”><img src="glob_rotitor. In momentul in care mouse-ul se afla deasupra zonei active.gif"></a> </body> </html> UNIVERSITATEA TEHNICA CLUJ -NAPOCA . cursorul sau ia forma unei mâini care îi indică utilizatorului să apese butonul mouse-ului. Zona activă . Utilizarea unei imagini ca zonă activă: Zona activă a unei legături este definită cu ajutorul etichetelor <a> şi </a>. care ia ca valoare numele fişierului HTML aflat in acelasi director. IULIE 2005 26 • legătură către o pagină aflată în acelaşi director Legătura către o pagină aflată în acelaşi director se formează cu ajutorul etichetei <a> (ancora). Pentru a preciza pagina indicată de legatură se utilizează un atribut al etichetei <a> numit href . este formată din textul cuprins între etichetele <a> şi </a>.

o matrice de 2*2 cadre. care primeste ca valoare adresa documentului HTML care va fi incarcat in acel frame. care descriu modul in care de face impartirea. trei cadre orizontale. n*.</frameset>. Atributul border al etichetei <frameset> permite configurarea latimii chenarelor tuturor cadrelor incluse la un numar dorit de pixeli.un atribut obligatoriu al etichetei <frame> este src. In interiorul acestui bloc. O pagina Web poate fi formata din: doua cadre verticale egale. care inseamna n parti din spatiul ramas. fiecare cadru este introdus prin eticheta <frame>.. UNIVERSITATEA TEHNICA CLUJ -NAPOCA . Elementele listei pot fi: • • • • • • • Un numar intreg de pixeli. Valoarea atributelor cols si rows este o lista de elemente separata prin virgula.LUCRARE DE DISERTATIE.10. Cadrele sunt definite intr-un fisier special. Procente din dimensiunea ferestrei (numar intre 1 si 99 terminat cu %). IULIE 2005 27 1. trei cadre mixte. Frame-uri: Cadrele ne permit sa definim in fereastra browser-ului subferestre in care sa fie incarcate documente HTML diferite. in care blocul <body>.</body> este inlocuit de blocul <frameset>... Definirea cadrelor se va face din aproape in aproape. • • Impartirea unei ferestre intr-un numar de subferestre de tip linie se face cu ajutorul atributului rows al etichetei <frameset> ce descrie acea fereastra. prin impartirea ferestrelor in linii si coloane: • Impartirea unei ferestre intr-un numar de subferestre de tip coloana se face cu ajutorul atributului cols al etichetei <frameset> ce descrie acea fereastra..

html" scrolling="auto" name="lucru" noresize> </frameset> </frameset> <frame src=""> </frameset> 1. • Marcajul <FORM>…</FORM> Zona din pagina Web care cuprinde campurile formularului este cuprinsa intre marcaje >FORM> </FORM>. Realizarea formularelor: Formularele sunt pagini Web speciale . Exemplu: <frameset cols="*.Cand primeste fluxul de informatii. cadre fara chenare. Procesul de transfer este comandat prin apasarea unui buton (buton submit) existent in orice formular. O pagina dintr-un cardu poate comanda ce pagina sa fie afisata intr-un alt cadru.*" border="0" noresize> <frame src=""> <frameset rows="126.html" scrolling="no" noresize> <frameset cols="202. serverul Web lanseaza o aplicatie asociata formularului denumit script CGI care prelucreaza datele primite.*" border="0"> <frame src="antet. Pentru aceasta se foloseste marcajul <a> cu atributul TARGET care specifica numele cadrului in care se va realiza afisarea. avand rubrici care trebuie completate sau validate.*"> <frame src="left.11. Marcajul <FORM> are doua atribute obligatorii: UNIVERSITATEA TEHNICA CLUJ -NAPOCA .783. Paginile din cadre contin numai sectiunea BODY. Continutul rubricilor (campurilor)este transferat serverului Web.php" scrolling="auto" noresize> <frame src="Despre/scoala. IULIE 2005 In urma dimensionarii chenarului unui cadru pot rezulta: 28 • • cadre cu chenare late.LUCRARE DE DISERTATIE. Daca un cadru este prea mic pentru a afisa in intregime pagina specificata i se vor atasa automat bare de defilare(scool).

LUCRARE DE DISERTATIE. Atributul poate lua doua valori UNIVERSITATEA TEHNICA CLUJ -NAPOCA . IULIE 2005 29 • METHOD defineste modul in care sunt transmise datele serverului.

UNIVERSITATEA TEHNICA CLUJ -NAPOCA . specifica scriptul CGI care preluceaza • • ACTION specifica scriptul CGI care prelucreaza informatia. Atributele marcajului <INPUT> sunt: • • • • • • TYPE=tip –defineste tipul campului. CHECKED=opt buton/ caseta validata in mod prestabilit. METHOD=get daca datele introduse vor fi transmise intr-o variabila de mediu a acestuia • serverului (QUIRY_STRINGACTION informatia. NAME=nume-defineste numele simbolic al valorii campului.LUCRARE DE DISERTATIE. SIZE=n numar de caractere al casetei de text afisate. Limbajul HTML permite definirea a noua tipuri de campuri: • Tipul TEXT impreuna cu atributul SIZE permite definirea unui camp pentru introducerea unui sir de caractere: <INPUT TYPE=text SIZE=25 NAME=”nume”> • Tipul PASSWORD (parola) permite introducerea unei parole . Marcajul <INPUT>…</INPUT> Defineste caracteristicile unui camp al formularului. MAXLENGTH=m numarul maxim de caractere acceptate. in camp aparand doar caractere*: <INPUT TYPE=password NAME=”parola” SIZE=10> • • Tipul CHECKBOX permite desenarea unei casete izolate de validare: <INPUT TYPE=checkbox NAME =”clietnou” VALUE=”da”> Tipul RADIO permite generarea unui ansamblu de butoane cu interblocare care au acelasi nume. IULIE 2005 30 • si fisier METHOD=post daca datele vor fi trimise scriptului CGI ca standard de intrare. VALUE= valoare-defineste continutul prestabilit al campului.caracterele introduse nu vor fi afisate.

IULIE 2005 31 • Tipul buton SUBMIT are ca si efect transmiterea spre server a valorilor introduse in campurile formularului UNIVERSITATEA TEHNICA CLUJ -NAPOCA .LUCRARE DE DISERTATIE.

IULIE 2005 32 • • • RESET permite utilizatorului sa stearga toate campurile formularului <INPUT TYPE=reset VALUE =“ Anulare “> Tipul FILE permite transmiterea spre server a unui fisier.. pe care il inlocuieste .</td> <td width=481> UNIVERSITATEA TEHNICA CLUJ -NAPOCA .LUCRARE DE DISERTATIE. observatii:</b></td> <td width=481> <textarea name="mesaj" rows=5 cols=53></textarea> <input type="hidden" name="data" value=""></td></tr> <tr> <td width=100>&nbsp. • Marcajul <SELECT> Permite definirea listelor derulante . Este recunoscut numai de NETSCAPE Tipul IMAGE permite folosirea in locul butonului submit .php"> <tr> <td width=100><b>Numele:</b></td> <td width=481><input type="text" name="nume" size=30 maxlength=30></td> </tr> . a unei imagini <INPUT TYPE=image SRC=”poza.gif” ALT=”VALIDEZ” BORDER=0> • • Tipul HIDDEN permite transmiterea informatiilor spre server fara ca utilizatorul sa le vada pe ecran. vizitatorul paginii putand selecta optiunea dorita. opinii. Executia unui clic pe aceasta va provoca afisarea listei de optiuni . <tr> <td width=100 valign="top"><b>Impresii. sugestii. dispus de regula pe mei multe linii. Exemplu: <form name="date" method="post" action="opinii.In acest mod se definesc de exemplu zonele in care cel care a deschis o pagina isi poate scrie impresiile despre acestea. Marcajul <TEXTAREA> Permite definirea unei zone in care se poate scrie un text mai mare ...Meniul derulant prezinta o valoare..

81. status=no. Poligonale <AREA SHAPE="poly">.67. Numele hartii se declara cu ajutorul atributului USEMAP="#nume" introdus in cadrul marcajului <IMG> Exemplu: function btn() { w2=window.69...LUCRARE DE DISERTATIE.202.170..42.195.89.55.39.167. fiecare legata de o pagina Web diferita."></td> </tr> <tr> <td width=100>&nbsp. left=250.39.12.htm" target="harta_bn" onclick="btn()"> </map> border="0" usemap="#harta1"> UNIVERSITATEA TEHNICA CLUJ -NAPOCA .</td> <td width=481><input type="submit" value="Trimite impresia"></td> </tr> 33 </form><br> 1.'toolbar=no.204. width=292.165. location=no').182. } . height=340.open("". Zonele sensibile la selectarea cu mouse-ul pot fi: • • • Rentagulare <AREA SHAPE="rect">.195. top=50.gif" name="imagine" <map name="harta1"> <area shape="poly" alt="Bistrita-Nasaud" coords="176.188.190.81. Circulare <AREA SHAPE="circle">.7 7... resizable=no.166.68. Marcajele care se vor folosi in acest caz sunt <MAP> si <AREA>.178. <form name="harta" method="post"> <img src="harta_romania. Harti de imagini: Se poate creea o imagine avand mai multe regiuni.. scrollbar=no. Determinarea coordonatelor punctelor care definesc regiunile se poate realiza folosin aplicatia Paint Shop Pro.158.39."harta_bn". menubar=no.89. care afiseaza in permanenta coordonatele cursorului.158..62..45" href="harta_bn. IULIE 2005 <input type="reset" value="Stergeti datele introduse.

IULIE 2005 </form> 34 UNIVERSITATEA TEHNICA CLUJ -NAPOCA .LUCRARE DE DISERTATIE.

src= romania_albastru_deschis"></a> La trecerea cursorului mouse-ului peste imaginea "romania_albasru_inchis.jpg'" onmouseout ="imag.13. Deplasarea cursorului in afara imaginii provoaca revenirea la imagfinea initiala. schimbarea culorii unui buton inauntea actionarii sale efective. de exemplu.jpg" .src='romania_albasru_inchis.html" onmouseover="imag.jpg". Exemplu: <a href= "harta_romania. Atributul "ONMOUSEOVER": Intr-o pagina Web se pot afisa imagini care se modifica la trecerea mouse-ului peste ele. aceasta vafi inlocuita cu imaginea continuta in fisierul "romania_albasru_deschis. UNIVERSITATEA TEHNICA CLUJ -NAPOCA .LUCRARE DE DISERTATIE. IULIE 2005 35 1. Acesta facilitate ar permite.

Tehnologia PHP .MySQL: APROAPE INTREAGA MUNCA A APLICATIILOR Web ARE LOC PE SERVER . IULIE 2005 36 2. PHP.LUCRARE DE DISERTATIE. ACCESS SERVER WEB Apache. raspunzand acestor cerere si oferind pagini Web corespunzatoare. Cold Fusion Browser WEB Internet Explorer Netscape. ASP. PERL. ea va fi utilizată pentru realizarea unor sarcini de programare asupra informaţiei care vine spre şi de la serverul de Web. PWS. Opera O bază de date relaţionale de tip server stochează orice informaţie pe care o solicită aplicaţia. IIS Limbaje de scriptare C. FSP. O aplicatie specifica numita Server deWeb este responsabila pentru comunicarea cu browserul.Exista multe servere de Web din care insa 2 domina piata . Arhitectura software a unei asfel de aplicatii Web pentru o pagina Web dinamica in conectare cu BD este prezentata in figura: BAZA DE DATE RELATIONALE MySQL. MSSQL. In final este nevoie de un limbaj de programare care să emită interogări între serverul de Web şi serverul de baze de date. Ele sunt APACHE si MICROSOFT INTERNET INFORMATION SERVER(IS) UNIVERSITATEA TEHNICA CLUJ -NAPOCA . ORACLE. Serverul de Web rulează deasupra sistemului de operare ascultând cererile pe care cineva le-ar putea face pe Web.

PHP. gratuite si este remarcabil prin flexibilitate usurinta in invatare si capacitatea de a rula pe multiple sisteme de operare (Windows. Unix. APACHE este un mare server de WEB. SERVERUL APACHE: Este cel mai popular server WEB existent. MYSQL ele sunt proiecte de tip “open source”. Exemplu: <html> <head><title> opinii</title></head> <body> <FORM METHOD=”POST” ACTION=”OPINII. Linux). Limbajul face parte din categoria “open source” . 2. faciliteaxa accesul la variabile transmise de catre formularele HTML. El este rapid si surprinzator de stabil.2. Introducere în PHP: PHP este un limbaj destinat scrierii scipturilor care vor fi interpretate de server-ul Web.1. Imbinarea dintre Serverul WEB APACHE si limbajul de scriptare PHP se poate face in 2 moduri: • • PHP inglobat ca modul intern in APACHE. Deoarece PHP a fost conceput ca limbaj de scripting pentru Web. Ca si LINUXUL .LUCRARE DE DISERTATIE. Lucraza cel mai bine in mediu UNIX dar ruleaza la fel de bine in mediu Windows. PHP ca aplicatie CGI(Common Gateroay Interface). IULIE 2005 37 2.PHP”> <br>tastati date: <br><INPUT TYPE=”TEXT” NAME=”date”> <br><br><INPUT TYPE=”SUBMIT”> </FORM> </body></html> UNIVERSITATEA TEHNICA CLUJ -NAPOCA . Limbajului PHP combinat cu serverul de baza de date MySOL reprezinta o solutie foarte buna pentru realizarea rapida de aplicatii Web complexe.

Exemplu: echo “<br><b> Mesajul dv.3.Tehnologia PHP: In continuare voi prezenta principalele instrucţiuni ale acestui limbaj . 2. care influenteaza modul de formatare a textelor.”. Codul scris in PHP . det erminandu-le sa apara pe o linie noua . a fost introdus in baza de date!”. • • Instucţiunile compuse folosesc caractere { }. • • • • Atribuirea se realizeaza folosind “=” si numele variabilelor incep cu un caracter”$”.LUCRARE DE DISERTATIE. scrise cu ajutorul caractererelor aldine. serverul interpretandu-le ca atare si incluzandu-le in fisierul trimis browser-ului. Forma acestei constructii este: echo sir_expresie. Interogarile sunt utilizate folosind functia mysql_query() Sirurile de caractere sunt incluse in fisierul standard de iesire (trimis browserului) folosind comanda echo. UNIVERSITATEA TEHNICA CLUJ -NAPOCA . Conectarea la baza de date se realizeaza apeland succesiv functiile PHP mysql_connect() si mysql_select_db(). IULIE 2005 Datele de iesire catre browser se trimit utilizand constructia echo. Textul include etichete HTML. iar pentru scrierea a mai multor instrucţiuni pe un rând se utilizează separatorii “.este cuprins intre marcaje <?php si ?>. a fost introdus in baza de date!</b>”. In afara codului scris in PHP pot fi scrise marcaje HTML obisnuite. 38 Trimite browserului textul “Mesajul dv.

caractere $ sau caractere \.”aprilie”). //$c este un numar real. deci $d este un nr. prin atribuirea unei valori. //$f este o variabila logica. de catre PHP. -$b=3. //$g este un sir de valori.”feb”. //$e=9. • Declararea sirurilor de valori $luni[4]=”mai”. pentru a fi interpretate ca atare acestea pot fi precedate de \. double.LUCRARE DE DISERTATIE.” este in PHP operatorul de concatenare. ca in cazul scripturilor care prelucreaza datele continute in formulare.14.”martie”.”mar”). intreg. IULIE 2005 Elementele de baza ale limbajului PHP sunt urmatoarele: 39 Variabile: Dupa cum am precizat numele unei variabile incepe cu caracterul “$”. $mesaj=”Excursie la $a” deci variabilele prezentate in siruri delimitate prin ghilimele vor fi inlocuite prin valoarea lor . se face cu ajutorul functiei array(): $luni=array(“ianuarie”. UNIVERSITATEA TEHNICA CLUJ -NAPOCA . -$luni=array(“ian”. “februarie”. -$e=$b+$d. Exemplu: $a=”New York”. $luni[5]=”iunie”. -$d=”6”. -$f=TRUE. sau in mod reflex.Variabilele pot fi create de programator . In PHP variabilele pot fi de tip integer. Sirurile de carctere sunt delimitate prin caractere “(ghilimele). deci $mesaj=”Excursie la New York”. string. //$a este un sir de caractere //$b este un intreg. boolean sau array(sir). $luni[]=”iulie”. -$c=3. Caracterul “. Exemple: -$a=”informatica”. //$d este un sir de carctere. Daca in sir exista ghilimele .

IULIE 2005 echo ”Luna a doua este $luni[1]. ca in ciclul: while (list($key.Valorile primite de la browser pot fi accesate si prin sirurile asociative $HTTP_POST_VARS sau $HTTP_GET_VARS. Pentru a extrage valoarea asociata cheii “prenume” din sirul $vizitator $vizitator[prenume]. in functie de UNIVERSITATEA TEHNICA CLUJ -NAPOCA . scriptul asociat primeste un sir de caractere care contin perechi de valori nume=valoare separate prin caractere “&” Intr-un script PHP.”. numele diferitelor campuri $nume devin automat variabile globale in cadrul scriptului si au valorile din campurile formularului.Atribuirea $[]=”iulie”. 40 Deoarece primul element dintr-un sir are indicele 0. “e-mail”=> celendana2002@yahoo. Adaugare unei noi valori in sirul $vizitator se poate face scriind: $vizitator[“varsta”]=32. Aceasta este valabil indiferent de modul de trimitere (post sau get).com ). valoare :$value<br>\n”. • Siruri asociative: (cheie=>valoare). este corecta. elementul care va primi valoare fiind luni[6].$value)=each($vizitator)) { echo ”cheie : $key. } se va scrie • Accesarea variabilelor primite de la browser: Odata ce datele dintr-un formular au fost expediate . Pentru a imprima toate valorile din sirul $vizitator se poate folosi o constructie de tipul list()=each(). Elementele dintr-un sir asociativ sunt perechi de forma “prenume”=>”Elena Dana”.LUCRARE DE DISERTATIE. efectul comenzii echo va fi imprimarea sirului “Luna a doua este februarie”. Exemplu: $vizitator=array( “nume”=>”Moraru”.

41 • Modificarea tipului variabilelor: Modificarea tipului unei variabile se poate face in trei moduri: • $a=1 Folosind operatori de transtipaj: $b=(string)$a. (double). Spre deosebire de alte limbaje. doubleval().settype($a. cheie fiind numele campului formularului. IULIE 2005 modul de expediere a datelor. pentru a fi vizibile intr-o functie. (array). } $a=100. Folosind functiile intval(). echo suma(12) UNIVERSITATEA TEHNICA CLUJ -NAPOCA . variabilele globale trebuie declarate folosind declaratia global . $c=$a+$b. Aceste functii nu modifica tipul variabilei introduse ca argument dar returneaza o valoare apartinand tipului cerut: $a=”12”. (string). $b=intval($a) *2. Operatorii posibili sunt (integer).LUCRARE DE DISERTATIE. return $c. • Vizibilitatea variabilelor: In PHP o variabila declarata in afara oriecarei functii este o variabila globala iar o variabila declarata intr-o functie este o variabila locala . Accesul la o valoare se face scriind $HTTP_POST_VARS[cheie]. Exemplu: Function suma ($b) { global $a. stringval(). • • Folosind functia settype() $a=1. “string”).

este un sir de caractere de lungime 0 sau are valoarea intrega 0.Tipul intrarii (fisier sau director) este testat prin apelul functiei is_dir(0 si in caz pozitiv. si is_bool($var) testeaza tipul variabilei indicate ca argument. functii definite de programator pentru a evita scrierea repetata a unor secvente de cod sau pentru a usura intelegerea Rezultatul unei astfel de functii poate fi “FALSE” sau “TRUE”.] } Intr-o aplicatie scrisa in PHP pot fi intalnite doua tipuri de functii: • functii predefinite. is_double($var). Exemple: functiile opendir() respectiv closedir(0 deschid respectiv inchid un director iar functia readdir() citeste o intrare din acest director.LUCRARE DE DISERTATIE. UNIVERSITATEA TEHNICA CLUJ -NAPOCA . apartinand limbajului . intrarea este ignorata • codului. Exemplu: if(empty($nume_vizitator)) { echo “Va rog sa completati numele dv. is_srting($var). IULIE 2005 Functii Sintaxa unei functii scrise in PHP este urmatoarea: 42 Function nume([lista_parametri]) { corpul_functiei [return_expresie. Functia empty($var) are valoare “TRUE” daca variabila indicata ca argument este neinitializata. exit. } Functiile is_int($var). • Functii pentru testarea variabilelor: Functia isset($var) verifica daca variabilei $var indicata ca argument i s-a atribuit deja o valoare. is_array($var).!”.

IULIE 2005 43 UNIVERSITATEA TEHNICA CLUJ -NAPOCA .LUCRARE DE DISERTATIE.

ceea ce face posibila realizarea in acest limbaj a celor mai multe dintre prelucrarile posibile in alte limbaje. IULIE 2005 Lista parametrilor transmisi unei functii poate lipsi. ‘ . Daca functia nu returneaza nimic functia nu poate figura intr-o expresie. Ea suprima caracterele adaugate ca urmare a apelarii functiei addslashes(). integer.modifica un sir de caractere dat adaugand caractere ”\”(backslash) in fata unor caractere ca: “ . string sir_substitutie. peste 70 la numar.este o functie opusa functiei addslashes(). PHP pune la dispozitie si o serie de functii specifice. double. • addslashes() .LUCRARE DE DISERTATIE. string sir_de_prelucrat) UNIVERSITATEA TEHNICA CLUJ -NAPOCA . \. Prototipul functiei este: string addslashes(string sir). Functia este gandita sa ajute la formarea sirurilor de caractere care sunt inserate in campuri apartinand unor tabele dintr-o baza de date.Valoarea returnata de o functie poate apartine oricarui tip: string.realizeaza inlaturarea dintr-un sir de caractere a tuturor marcajelor HTML sau PHP. deosebit de utile cum ar fi: • strip_tags() . string marcaje_permise]). • stripslashes() .realizeaza cautarea intr-un sir de caractere a unui subsir si inlocuirea sa cu un alt sir. cu exceptia unora specificate in mod explicit. • str_replace() . array. 44 • Functii predefinite pentru prelucrarea sirului de caractere: PHP ofera o mare varietate de functii . Prototipul functie este: string stripslashes(string sir). Fiind orientat pe tratarea informatiilor continute in pagina Web. Prototipul functie este: string str_replace(string sir_cautat. Functia are urmatorul prototip: strip_tags(string sir [.

permite inlocuirea unei secvente de caractere dintr-un sir cu un alt sir. dat ca argument. Prototupul functiei este: int strcmp(string sir1. Functia returneaza o valoare pozitiva daca primul sir este mai mare. string sir2). Functia prototip este: string substr_replace(string sir_de prelucrat.LUCRARE DE DISERTATIE.In acest fel poate afisa intr-o pagina Web codul HTML pentru realizarea unei actiuni. int start [. int lungime]) • strcmp() – este o functie de comparare a doua siruri. Daca parametrul lungime lipseste. • printf() si sprintf() – sunt functii care opereaza ca in limbajul si permit scrierea formatata respectiv construirea unui sir de caractere cu un format dat. Aceste functii sunt utile cand modul de afisare a unor date este important. int start [. • htmlspecialchars() – este o functie care transforma caracterele < .. >. UNIVERSITATEA TEHNICA CLUJ -NAPOCA .returneaza o pozitie dintr-un sir indicata prin doua valori numerice. IULIE 2005 45 • substr_replace() . string sir_substitutie.. &amp. si &quot. int lungime]). • substr() . subsirul returnat va contine toate caracterele de la start pana la sfarsitul sirului. 0 daca sirurile sunt identice si o valoare negativa daca primul sir este mai mic. Prototipul functiei este: string substr(string sir_dat. & sau “ in reprezentarile lor HTML: &lt. &gt. Prototipul functiei este: String htmlspecialchars (string sir_dat).

IULIE 2005 Instructiuni de control: 46 • Instrunctiunea if Ca si in alte limbaje .. ! • Instructiunea if..LUCRARE DE DISERTATIE. scrisa folosind operatori relationali cunoscuti:< <= > >= == !=(sau<>) respectiv &&(dar si and. instructiunea if are doua forme: if(conditie) { actiune pentru conditie=adevarat(TRUE) } respectiv if(conditie) { actiune pentru conditie=adevarat(TRUE) } else { actiune pentru conditie=fals(FALSE) } Conditia poate fi o expresie logica .elsif In PHP pot fi scrise constructii de forma : If(conditie_1) { Actiuni pentru conditie_1=adevarat } elseif(conditie_2) { Actiune pentru conditie_2=adevarat } elseif(conditie_3) { UNIVERSITATEA TEHNICA CLUJ -NAPOCA . operatorul sau). operatorul si) || (dar si or.

“<br> \n”. } aceasta structura de cod este specifica activitatii de recuperare de informatii dintr-o baza de date. • Instructiunea do.. $rezultat=mysql_query($query) or die(mysql_error()).exp3) { actiune } UNIVERSITATEA TEHNICA CLUJ -NAPOCA . while($row = mysql_fetch_array($rezultat)) { echo $row[“nume”]. Sintaxa instructiunii este: while(conditie) { actiune } Exemple: $query=”select nume. prenume from vizitatori”.while indica repetarea unei actiuni atata vreme cat o conditie este adevarata. conditia este testata dupa executarea cel putin o data a actiunii.. IULIE 2005 Actiune pentru conditie_3=adevarat } else { Actiuni pentru restul situatiilor } 47 • Instructiunea while indica repetarea unei actiuni atata vreme cat o conditie este adevarata.$row[“prenume”]. • Instructiunea for are urmatoarea sintaxa: for(exp1.exp2.Spre deosebire de while .” “.LUCRARE DE DISERTATIE.

“Maria”. Instructiunea break intrerupe un ciclu sau un switch. Exemplu : <html> <?php $director =opendir (‘c:/apache/htdocs/postuniv/’). foreach ($nume as $membru) { echo “$membru este invitat la cina. “George”). } closedir ($director). while ($fisier=readdir($director)) { if (is_dir($fisier)) { continue.<br>\n”.LUCRARE DE DISERTATIE. } echo “$fisier<br> \n”. Sintaxa instructiunii este: Foreach($nume_sir as $variabila) { actiune pentru valoarea curenta } Exemplu: $nume = array(“Ion”. Instructiunea care urmeaza dupa break este cea care urmeaza dupa instructiunea switch sau dupa ciclul care contine break. Este echivalenta constructiei list () =each() . ?> </html> UNIVERSITATEA TEHNICA CLUJ -NAPOCA . echo “fisierele din directorul $director sunt:<br>\n”. Instructiunea continue este folosita tot in interiorul ciclurilor si comanda reluarea imediata a ciclului intrerupand sirul actiunilor din locul in care continue este inserat si sfarsitul acestuia. • Instructiunile break si continue. IULIE 2005 48 • Instructiunea foreach se foloseste exclusiv pentru prelucrarea elementelor sirurilor.

In cazul unui calculator functionanad sub Windows. Unul dintre cele mai rapide servere de baze de date SQL este MySQL. SQL este limbajul care serveste la comunicarea cu un srever de baze de date. ‘ or ‘\h’ for help. or \g. Pentru a da comenzile prezentate in continuare se va instala pe calculator MySQL si se va deschide o fereastra (DOS sau LINUX) din care se vor introduce comenzile.exe din directorul mysql\bin: C: \mysql\bin>mysql Welcome to the MySQL monitor. administrarea privilegiilor utilizatorului este usoara si eficienta. suporta peste 50. Linux.000.000 de campuri pe fiecare baza de date in parte. Noţiuni de SQL: Crearea unei baze de date este o necesitate in zilele noastre.poate chiar cea mai mare.LUCRARE DE DISERTATIE.23. Type ‘\c’ to clear the buffer mysql> UNIVERSITATEA TEHNICA CLUJ -NAPOCA . Iata cateva din facilitatile MySQL-ului. viteza de executie a comenzilor SQL este extrem de mare . Fara acestea o mare parte din activitatile desfasurate de oamenii din intreaga lume ar fi imposibil de realizat. • • • • numarul de utilizatori ce se pot conecta simultan la serverul de baze de date este nelimitat. Implementarea MySQL-ului in propriu server web nu necesita cheltuiele si poate fi instalat pe calculatoare ce functioneaza sub diverse sisteme de operare (Windows. Unix).28-gamma\ Type ‘help. Commands end with . conectarea pentru a lucra in mod interactiv cu serverul MySQL instalat pe acelasi calculator se realizeaza lansand in executie mysql. Your MySQL connection id is 2 to server version: 3. IULIE 2005 49 3.

La inceput o baza de date nu contine tabele. numere reale. siruri de caractere. PRIMARY KEY-este o instructiune ce creeaza un index pe baza primei coloane. IULIE 2005 50 3. Folosirea acestei instructiuni este obligatorie atunci cand se defineste o coloana de tip AUTO_INCREMENT. Pentru a obtine o lista cu toate bazele de date se foloseste comanda “Show DataBases”. O modalitate de creare a unei baze de date: O baza de date relationale se numeste astfel datorita capacitatii sale de a stabili relatii intre date din mai multe tabele.”. emitand comanda create table mysql> CREATE TABLE Orice comanda SQL trebuie urmata de separatorul “. cunoscut sub numele de Data Definition Languege(DDL). Stergerea unui tabel este un act irevocabil. UNIVERSITATEA TEHNICA CLUJ -NAPOCA . mysql>DROP TABLE tabel. Modificarea unui tabel se poate face folosind comanda ALTER TABLE mysql>ALTER TABLE tabel Adaugarea unei coloana la tabel se face cu ajutorul comenzii mysql>ALTER TABLE tabel ADD coloana tip [optiuni]. Stergerea unei baze de date poate fi realizata cu ajutorul instructiunii “drop”.LUCRARE DE DISERTATIE. enumerari…) • • • • • • Pentru a crea un tabel intr-o baza de date . Tabelele sunt divizate la randul lor de catre o serie de inregistrari care le-am putea considera ca fiind liniile tabelului. Pentru a crea un tabel intr-o baza de date se foloseste un sub-limbaj SQL special. unde tabel-numele . Dar se pot emite comenzi DDL si alte comenzi SQL prin intermediul unui interpretor SQL sau prin intermediul PHP. O linie a unui tabel este impartita in mai multe campuri care pot stoca diferite tipuri de date (numere intregi.1.tabelului care va fi modificat • • • • coloana-numele coloanei ce va fi adaugata tip-tipul noii coloane [optiuni]-toate optiunile dorite precum si PRIMARY KEY.

Pentru a ne putea conecta la un server MYSQL se invoca functia : • mysql_connect(nume_gazda. respectiv false in caz contrar. Pentru aceasta se invoca functia: • mysql_select_db(baza_de_date) Functia returneaza true daca poate obtine accesul la baza de date . Se inchide conexiunea cu serverul MYSQL. parola parola MYSQL asociata identificatorului de utilizator. 3. Exemplu: $db = mysql_connect (“localhost”. Biblioteca MYSQL din PHP furnizeaza doua functii de verificare a erorilor: • • mysql_errno()-returneaza un cod numeric de eroare mysql_error()-returneaza o descriere textuala a erorii Exemplu: mysql_select_db( “ testdb ”). un program PHP poate obtine accesul la datele rezidente intr-o baza de date MYSQL si le poate modifica. nume_utilizator. “php”. Folosind aceste functii . “salut”). Se deschide o conexiune cu serverul MYSQL. Majoritatea interactiunilor cu o baza de date se desfasoara dupa un model secvential : 1. Dupa ce programul a obtinut o conexiune cu serverul MYSQL. Se emit interogari SQL se obtine accesul la rezultatele interogarilor si se executa operatii non-SQL. IULIE 2005 51 3. if(mysql_errno()) UNIVERSITATEA TEHNICA CLUJ -NAPOCA . if (!$db) die ( “Nu s-a reusit deschiderea bazei de date. programul poate specifica baza de date la care va avea acces. 4.LUCRARE DE DISERTATIE. 2.2. Utilizarea bazelor de date MySQL: PHP include o biblioteca de functii care furnizeaza o interfata cu sistemul MYSQL de gestiune a bazelor de date. parola) nume_gazda este numele gazdei pe care ruleaza serviciul MYSQL. nume_utilizator este identificatorul de utilizator MYSQL care va fi folosit.”). Se specifica baza de date la care se va obtine accesul.

mysql_errno().LUCRARE DE DISERTATIE. “<br>”)}. 52 UNIVERSITATEA TEHNICA CLUJ -NAPOCA .mysql_error(). “ : “ . IULIE 2005 { die (“<br>” .

Pentru a verifica daca o interogare UPDATE. returneaza false.mysql_error(). in caz contrar .LUCRARE DE DISERTATIE.”: “>mysql_error().”<br>”). Pentru obtinerea valorii numarului de randuri se foloseste functia: • • mysql_num_rows() Pentru a obtine urmatorul rand din secventa setului de rezultate se foloseste functia: mysql_fetch_row() este mai convenabil sa se omita functia mysql_num_rows() si sa se In general foloseasca in schimb o instructiune while. care nu returneaza randuri ale unui tabel. DELETE. } while ($rand = mysql_fetch_row($rezultat)) { if (mysql_errno()) { die(“<br>” . care returneaza randuri ale unui tabel -Interogari UPDATE. INSERT sau DELETE a avut efectul dorit se poate folosi functia • mysql_affect_rows(). mysql_errno(). if (mysql_errno()) { die (* <br>” . Exemplu : $interogare = “SELECT * FROM angajat”. Ambele categorii de interogari sunt emise folosind functia 53 • mysql_query() Functia returneaza true daca serverul a reusit sa execute interogarea.mysql_errno().”: “. INSERT. IULIE 2005 Din punct de vedere al limbajului PHP exista doua categorii de interogari SQL: -Interogari SELECT. INSERT sau DELETE a esuat. } //aici se prelucreaza randul din setul de rezultate} UNIVERSITATEA TEHNICA CLUJ -NAPOCA .care returneaza numarul randurilor afectate de interogarea cea mai recenta. “<br>”). functia returneaza valoarea –1. In cazul in care cea mai recenta interogare UPDATE. $rezultat = mysql_query($interogare).

LUCRARE DE DISERTATIE. IULIE 2005 Pentru a inchide o conexiune cu un server MYSQL se invoca functia: 54 • mysql_close() In general nu este necesara invocarea acestei functii deoarece PHP inchide automat conexiunile deschise cu baza de date atunci cand un script isi inchide executia. UNIVERSITATEA TEHNICA CLUJ -NAPOCA .

el depinde de browser.să rulaţi calcule cu date introduse prin formulare. Fiind un limbaj de scriptare. Se pot plasa procese în spatele butoanelor. Într-un document HTML pot exista mai multe etichete <script> şi fiecare pereche poate încadra mai multe seturi de instrucţiuni JavaScript. IULIE 2005 55 4. UNIVERSITATEA TEHNICA CLUJ -NAPOCA . cât şi pentru aplicaţii complexe.LUCRARE DE DISERTATIE. Atributele etichetei <script>: defer – atribut boolean folosit pentru a anunţa browserul dacă scriptul din această secţiune generează un conţinut src – atribut care specifică locaţia unui URL a unui JavaScript sursă externă type – atribut care a înlocuit language şi care anunţă browserul ce limbaj se foloseşte între etichete Crearea de programe cu JavaScript: Se crează pagina HTML. Scripturile JavaScript sunt înglobate într-un document HTML folosind perechea de etichete <script> şi </script>. HTML oferă capacitatea de a crea pagini WEB statice. Deşi asemenea documente pot fi creative. apoi se inserează etichetele <script> în secţiunea head sau body a documentului. ori să efectuaţi acţiuni atunci când utilizatorul trece cursorul mouse-ului peste un element HTML sau peste un obiect document. JavaScript este dependent de mediu. Cea mai importantă caracteristică a lui este înglobarea în pagina HTML şi executarea sa din interiorul paginii. iar atributul src este folosit pentru a specifica numele fişierelor sursă JavaScript externe. atât pentru îmbunătăţirea paginilor HTML. Atributul type este necesar pentru a specifica limbajul în care este scris scriptul.JavaScript oferă capacitatea de a face ca paginile statice să devină dinamice. interesante şi în tot cazul utile. interactive faţă de acţiunile utilizatorilor. PROGRAMAREA JavaScript: JavaScript a devenit rapid un important instrument de dezvoltare şi programare Web.

care realizeaza o anumita actiune: Function nume (lista) { instructiuni } UNIVERSITATEA TEHNICA CLUJ -NAPOCA . care grupeaza un numar de instructiuni. Logici (cu valoarea false sau true). Null (indica lipsa unei valori). Logici. Pentru atribuiri conditionate. Elemente de baza ale limbajului: • • Literalii: false si true. Break si continue. Instructiuni: If. de tip: • • • • • • • • • • • • • • • • Numeric(intreg sau real). Sir de caractere. Functii = subprograme. While. etc. Expresii si opratori: Aritmetici.LUCRARE DE DISERTATIE. IULIE 2005 56 Toate instrucţiunile JavaScript aflate în blocul unei funcţii sunt interpretate. For. iar executarea nu se face până ce funcţia nu este apelată dintr-un eveniment JavaScript. Identificatori si variabile. Relationali. Rezultatul executării acestor instrucţiuni va fi vizibil pentru utilizatori atunci când văd prima dată pagina. Pre si postincrementare.

IULIE 2005 57 UNIVERSITATEA TEHNICA CLUJ -NAPOCA .LUCRARE DE DISERTATIE.

OnSubmit. Clase si proprietati: Clasa Array. Caseta de validare. Obiectul textarea. Obiectul select. Confirm(). OnClick. • • • De tip Navigator. Obiecte ascunse. Obiectul submit. Butoane radio. OnUnload. UNIVERSITATEA TEHNICA CLUJ -NAPOCA . Open(). OnSelect.etc. OnMouseOver.etc. IULIE 2005 58 • Functii predefinite: • • • • Obiecte: Alert().etc.LUCRARE DE DISERTATIE. Obiectul text. • • • • • • • • OnLoad. Continute in formulare: • • • • • • • • • • Evenimente: Butoane. De tip Location. Buton de tip reset.

etc. Clasa String. UNIVERSITATEA TEHNICA CLUJ -NAPOCA .LUCRARE DE DISERTATIE. IULIE 2005 59 • • Clasa Math.

getMounth()) document.LUCRARE DE DISERTATIE.write("<br>") </script> </HEAD> <BODY> </BODY> </HTML> 60 UNIVERSITATEA TEHNICA CLUJ -NAPOCA .getDate()) document write("."+azi.write("Azi suntem in "+azi. IULIE 2005 Exemplu: <HTML> <HEAD> <script language="JavaScript"> azi=new Date() document.