Programarea Dinamica a Paginilor Web In Ciclul Liceeal

Programarea dinamică a paginilor WEB în ciclul liceeal

Lucrare metodico-științifică pentru obținerea gradului didactic I

Introducere

Justificarea temei alese

În prezent procesul de învățare presupune, pe lângă abilitatea de a citi, scrie și a selecta informațiile necesare la un moment dat, de asemenea, capacitatea de a înțelege tehnologiile multimedia, inclusiv audio, video, hypermedia, și hipertext (Stinson & Clause, 2000). Noile tehnologii de informare și comunicare sunt în plină evoluție și noi modalități pentru exploatarea acestor tehnologii sunt în curs de dezvoltare (Leu & Kinzer, 2000).

Numeroase studii au fost efectuate pentru a arăta prezenta modul în care elevii pot fi încurajați să utilizeze mass-media și noile tehnologii în mod flexibil pentru a compune și pentru a comunica ideile lor. De asemenea au fost oferite și diverse modalități în care profesorii îi pot ajuta pe elevi să își îmbunătățească cunoștințele în diverse domenii prin crearea de aplicații multidisciplinare utilizând software gratuit sau ieftin, care poate fi descărcat de pe internet, inclusiv template-uri care să sprijine proiectarea de prezentări, referate, pagini de web la diverse materii.

Beneficiile pedagogice (îmbunătățirea competențelor digitale) dar și provocările (timp limită, performanța echipamentelor folosite, etc.) care apar atunci când elevii sunt angajați în proiecte de webdesign au fost studiate pentru a evidenția cum aceste mecanisme pot conduce la dezvoltarea unor capacități precum responsabilitatea, lucrul în echipă (pentru unele proiecte sunt necesare construirea de grupe de lucru și astfel oricând avem nevoie de lucrul celuilalt coechipier).

Toate aceste realități au trebuit să-și găsească o reflectare și asupra programelor școlare din cadrul disciplinei „informatică”. Astfel, începând cu anul școlar 2007-2008, în cazul claselor cu specializare „matematică-informatică”, programa clasei a XII-a la disciplina informatică a devenit mult mai flexibilă, permițând inițierea elevilor noile tehnici care s-au impus în domeniul programării paginilor web. Lucrarea de față își propune în primul rând să fie o unealtă didactică, un manual școlar care să îi poată ajuta pe elevi în procesul de învățare, conținând și câteva detalii mai tehnice, cum ar fi instalarea suportului software de care este nevoie pentru aplicarea noțiunilor învățate.

Limbajul PHP este un limbaj de programare destinat în primul rând Internetului, aducând dinamică unei pagini web. Este unul dintre cele mai importante limbaje de programare web open-source (codul sursă este public, fiind accesibil tuturor) și server-side (rularea sa nu se face pe calculatorul celui care vizualizează pagina, ci pe server-ul care o conține).

Este unul dintre cele mai folosite limbaje de programare server-side conform statisticilor NETCRAFT la 1 ianuarie 2013:

Popularitatea de care se bucură acest limbaj de programare se datorează următoarelor sale caracteristici:

Familiaritatea – sintaxa limbajului este foarte ușoară, fiind foarte la îndemână în special pentru programatorii care cunosc limbajul C;

Simplitatea – sintaxa limbajului este destul de liberă. Nu este nevoie de includere de biblioteci sau de directive de compilare, codul PHP inclus într-un document fiind trecut între niște marcaje speciale;

Securitatea – PHP-ul pune la dispoziția programatorilor un set flexibil și eficient de măsuri de siguranță;

Flexibilitatea – fiind apărut din necesitatea dezvoltării web-ului, PHP a fost modularizat pentru a ține pasul cu dezvoltarea diferitelor tehnologii. Nefiind legat de un anumit server web, PHP-ul a fost integrat pentru numeroasele servere web existente: Apache, IIS, Zeus, etc.

Gratuitatea – este, probabil, cea mai importantă caracteristică a PHP-ului. Dezvoltarea PHP-ului sub licența open-source a determinat adaptarea rapidă a sa la nevoile web-ului, eficientizarea și securizarea codului.

Pentru atingerea obiectivelor, inițial au fost studiate principalele tehnici de programare web care sa ajute la dezvoltarea website, webdesign, inițiere în html, css, php. Au fost efectuate lecții de predare al căror obiective era inițierea elevilor în programarea dinamică. Pentru pregătirea materialelor teoretice și aplicative au fost studiate o serie de tutoriale, cursuri, iar pentru o înțelegere mai bună de către elevi a noțiunilor prezentate au fost dezvoltate o serie de aplicații care să utilizeze toate aceste informațiile.

Structura lucrării

Lucrarea este structurată pe patru capitole mari la care se adaugă introducere, concluzii, bibliografie și anexe.

În Introducere am oferit câteva argumente pentru alegerea acestei teme. Tot aici am menționat procedeul prin care dorim să atingem obiectivele propuse în cadrul disciplinei predate și structura lucrării.

Capitolul I face o introducere generala în stadiul actual în programarea dinamica a paginilor web în învățământul liceeal. Se definesc termenii de e-learning și învățare asistată de calculator.

În Capitolul II sunt prezentate noțiunile teroretice referitoare la paginile web: descrierea acestora folosind limbajul HTML, cu menționarea noilor obiecte introduse de HTML5, stilizarea paginilor cu ajutorilor foilor de stiluri și interacțiunea cu o pagină web prin intermediul scripturilor Java. Toate aceste noțiuni sunt însoțite de scurte aplicații/exerciții care au rolul de a oferi elevilor o viziune mai clară asupra descrierii paginilor web.

Capitolul III oferă modul dinamic prin care paginile web pot fi construite. În cadrul acestui capitol am prezentat pe larg noțiuni legate de limbajul dinamic de programare a paginilor web –PHP: aspecte tehnice pentru instalarea software-ului necesar și rularea aplicațiilor php, sintaxa în php, funcții, macanismul de lucru cu sesiuni și cookies în php și exploararea bazelor de date MySQL. Aceste concepte au avut prezentate și cu ajutorul exemplelor oferite, scurte scripturi php care rezolvă o mică problemă și care reunite pot constitui un întreg site web pe care elevi îl vor putea construi pe parcursul orelor de laborator.

Capitolul IV (TREBUIE ADAUGAT CEVA)

În Bibliografie a fost alcătuită lista cu lucrări științifice, cursuri, tutoriale online, tutoriale video, site-uri web care au fost consultate pentru a realiza această lucrare.

În Anexe sunt adăugate codurile surse pentru dezvoltarea diferitelor aplicații web de către elevi.

Capitolul I Stadiul actual în programarea dinamica a paginilor web în învățământul liceeal

I.1. Sistemul de învățare e-learning

Termenul de e-learning pare a intra destul de repede în vocabularul tuturor fiind considerat de toți ca o soluție a viitorului. Conform unui articol apărut în http://www.elearning-forum.ro/, în sens larg, prin e-learning se înțelege „totalitatea situațiilor educaționale în care se utilizează semnificativ mijloacele tehnologiei informației și comunicării”.

Termenul, preluat din literatura anglo-saxonă, a fost extins de la sensul de învățare prin mijloace electronice, intersectând acțiunile educative cu mijloacele informatice moderne.

Definit astfel, mai mult ca e-education, aria semantică a conceptului e-learning interferează cu și se suprapune indefinit variabil pe o multitudine de termeni ce surprind varietatea experiențelor didactice ce pot beneficia de suport tehnologic: instruire asistată/ mediată de calculator, digital/ mobile/ online learning/ education, instruire prin multimedia etc.

Sub denumirea de software didactic/educațional, o gamă largă de materiale electronice (pe suport digital/ multimedia) sunt dezvoltate pentru a simplifica procesul de educație: hărți, dicționare, enciclopedii, filme didactice, prezentări în diverse formate, cărți (e-books), teste, tutoriale, simulări, software ce formează abilități, software de exersare, jocuri didactice etc.

Computerul și materialele electronice/ multimedia sunt utilizate ca suport în predare, învățare, evaluare sau ca mijloc de comunicare (pentru realizarea unor sarcini individuale etc.)”.

Evident ca învățământul tradițional nu își va pierde niciodată privilegiul dialogului direct dintre profesor și elevi, prin care se creează un cadru optim pentru modelarea personalității, menținerea mai pregnantă a spiritului de competiție dar și a suportului psihologic reciproc. Computerul oferă însă noi oportunități de instruire, cărora nu este obligatoriu să li se acorde exclusivitate.

Conform unui articol apărut în cadrul Centrului pentru Dezvoltare și Inovare în Educație, sarcina educației și formării bazate pe noile tehnologii ale informației și comunicării nu este de a demonstra că are rezultate imediate într-o întrecere cu alte tipuri de sisteme educaționale, ci de a substitui o parte din structurile actuale cu un nou, probabil superior, spectru de performanțe, în întâmpinarea schimbărilor inerente ce au loc în cultură și civilizație.

Cele mai durabile și mai eficiente inovații sunt acelea pe care beneficiarul le-a asimilat, adică le-a adoptat pentru că îi satisfac nevoile sale specifice.

În primul rând, se observă convertirea conținutului cultural din întreaga lume într-o formă digitală, făcând astfel produsele disponibile oricui, oriunde și oricând. Rețelele de comunicații cu arie largă și de mare viteză, legând computerele din apartamente sau de pe pupitrele elevilor la biblioteci digitale de mare capacitate schimbă condițiile culturale în care se desfășoară educația. Izolarea este de domeniul trecutului și are loc o substituție a insuficienței și perimării informațiilor cu amploarea și arhisuficiența lor. Problemele educației se schimbă profund, alternativa la o cunoaștere insuficientă și costisitoare fiind găsirea strategiilor ce permit accesul nelimitat la cultură.

În al doilea rând, sunt dezvoltate multiple modalități de a reprezenta informații, de a simula interacțiuni și a exprima idei, extinzând achizițiile inteligenței, alterând astfel spectrul civilizației, modificând cerințele participării la cultură. Dezvoltarea epistemologică capătă aspecte interesante. Gândirea relaționează strâns cu limbajul, simbolizarea formală din matematică și logică fiind privită ca o extensie a variatelor forme lingvistice curente. Mediul digital extinde evident sfera, fiind folosit pentru a achiziționa informații și pentru a exprima idei în diverse moduri – verbal, vizual, auditiv sau îmbinarea tuturor acestora. Ca rezultat, educatorilor le va fi din ce în ce mai dificil să favorizeze manipularea limbajului verbal în detrimentul celorlalte modalități de expresie.

În al treilea rând, oamenii exteriorizează diverse abilități curente – de a calcula, de a scrie corect, a memora, a vizualiza, a compara, a selecta – în instrumentele digitale cu care lucrează, dobândind astfel practic o adevărată măiestrie în ce privește aceste abilități, cândva rezultate ale educației. Tehnologiile digitale lărgesc potențialitățile personale. Procesoarele de texte, de exemplu, avertizează în cazul oricărui cuvânt scris incorect sau în cazul greșelilor gramaticale, foile de calcul permit oricui să facă rapid și corect calcule după formule extrem de complexe, bazele de date permit și celor cu slabe capacități de memorare să manipuleze seturi întregi de informații. Diverse alte forme de instrumente de lucru specializate reduc nivelul aptitudinal necesar pentru a participa efectiv la o gamă largă de activități culturale”.

Bibliotecile digitale, multimedia schimbă perspectiva asupra practicii educaționale. Introducerea Internetului este evenimentul duce la:

1. dezvoltarea tehnologică;

2. împărțirea responsabilității pentru educație cu diverse alte instituții – duc la:

curriculum orientat spre necesitățile particulare ale elevului

resurse distribuite

facilități virtuale

lecții asincron.

Astfel internetul devine, pe zi ce trece, arbitrul accesului la educație și cultură, iar forma cea mai potrivită de a veni în întâmpinarea nevoilor de cunoaștere și formare continuă este e-Learning.

I.2. Învățarea asistată de calculator

Utilizarea calculatorului în procesul de învățământ devine o necesitate în condițiile dezvoltării accelerate a tehnologiei informației. Pentru noile generații de elevi și studenți, deja obișnuiți cu avalanșa de informații multimedia, conceptul de asistare a procesului de învățământ cu calculatorul este o cerință.

Experții în sisteme de reforme în învățământ susțin tot mai mult ideea „că promovarea unui învățământ modern, prospectiv, flexibil, deschis unei piețe a muncii și continuu adaptabil la cerințele schimbării și dezvoltării complexe nu se mai poate face astăzi fără o regândire și o renovare structural sistemică a învățământului din perspectiva concepției integratoare a educației permanente”.

Conform aceleiași surse „Educația permanentă urmărește formarea și perfecționarea personalității omului pe parcursul întregii vieți. Realizarea unei educații permanente impune colaborarea interdisciplinară a mai multor domenii: informatică, psihologie, sociologie, economie, științe și altele. Astfel, procesul educațional este asociat nu numai cu școala sau calitățile intelectuale, el este strâns legat de totalitatea experienței de viață și a activităților umane, de maturizarea sentimentelor, de puterea imaginației și capacitățile intelectuale, de curiozitatea care însoțește căutarea răspunsului la toate întrebările și sentimentul responsabilității pentru opinii și acțiuni în activitatea socială”.

Principiul educației permanente constă în posibilitatea realizării unei educații profund individualizate, în deplină concordanță cu necesitățile și aspirațiile personale, de-a lungul întregii vieți.

Noile tehnologii educaționale sunt o consecință directă atât a evoluției metodelor psihopedagogice din educație, cât și a noilor tehnologii IT&C (tehnologii Web, multimedia, tehnologii de comunicație). Mijloacele didactice s-au diversificat de-a lungul timpului: de la suportul de curs tipărit, la programele de învățare prin televizor (transmisie directă sau înregistrare video), la informații multimedia interactive în timp real prin intermediul Internet-ului.

Metoda didactică impusă de societatea informațională este instruirea asistată de calculator care valorifică principiile instruirii programate în contextul noilor tehnologii informatice și de comunicații.

A intrat deja în obișnuința zilnică utilizarea calculatorului, pentru comunicare, informare, instruire.

Conceptul de asistare a procesului de învățământ cu calculatorul include:

– predarea unor lecții de comunicare de cunoștințe;

– aplicarea, consolidarea, sistematizarea noilor cunoștințe;

– verificarea automată a unei lecții sau a unui grup de lecții.

Numită de unii ca “inovația tehnologică cea mai importantă a pedagogiei moderne”, instruirea asistată de calculator (IAC) contribuie la eficiența instruirii, este un rezultat al introducerii treptate a informatizării în învățământ.

Interacțiunea elev-calculator facilitează accesul elevului la informații mai ample, mai bine organizate, structurate variat și prezentate în modalități diferite de vizualizare. De fapt, nu calculatorul în sine ca obiect fizic, cu configurație multimedia, produce efecte pedagogice imediate, ci calitatea programelor create, a produselor informatice, alese după criterii de eficiență.

Existența echipamentelor hardware (calculator), a software-lui (programelor) și a capacității de adaptare a lor, de receptare și valorificare în mediul în care se face instruirea duce la o modernizare pedagogică.

Capitolul II Concepte teoretice ale paginilor web

II.1. Generalități

Conceptul de crearea de rețele de interconectare, servere de date și pagini web are rădăcini încă din anul 1968, când guvernul S.U.A. intenționează să interconecteze universitățile, departamentele militare și de apărare ale țării, astfel încât ele să coopereze în cadrul unor proiecte de cercetare comune. Au fost astfel puse bazele unei agenții denumite Advanced Research Projects Agency (ARPA). Principalul obiectiv al acestui proiect era să se realizeze stocarea tuturor informațiilor pe mai multe calculatoare, întrucât pe un singur calculator nu ar fi fost deloc sigură: ar putea fi țintă vulnerabilă a unui eventual atac, informațiile pot fi pierdute din cazul unei defecțiuni tehnice majore, etc. Pentru a preveni astfel de situații se pot copia și distribui informațiile pe mai multe calculatoare, în întreaga țară, folosind o rețea.

În 1975, câteva dintre limbajele sau protocoalele pe care calculatoarele le foloseau pentru a comunica între ele s-au standardizat. Majoritatea universităților importante și a departamentelor de apărare din S.U.A. s-au legat împreună într-o rețea numită DARPANET, toate calculatoarele folosind același protocol pe care astăzi îl cunoaștem sub denumirea de TCP/IP. Rețeaua, cu timpul, a fost înlocuită de mai multe rețele, care astăzi împânzesc globul pământesc. Începând cu anul 1980, mai multe colegii și universități au fost conectate la Internet. Acest lucru a permis universităților să-și împartă informații despre cercetările lor, programe și știri recente. În anii ’90 Internetul s-a deschis și în scopuri comerciale. În curând, multe alte căi de utilizare a informațiilor transmise prin intermediul acestei gigantice rețele au fost dezvoltate.

În prezent, Internetul oferă posibilitatea de a trimite scrisori electronice pe întregul glob în doar câteva secunde. Se pot căuta informații despre orice subiect dorești. Expresia „World Wide Web” (WWW) definește o colecție de documente care se întinde în câteva sute de milioane de calculatoare. Practic, WWW este un sistem de documente și informații de tip hipertext legate ele între ele, care pot fi accesate prin rețeaua mondială de Internet. Documentele, care rezidă în diferite locații pe diverse calculatoare-server, pot fi regăsite cu ajutorul unei adrese unice. Hipertextul este prelucrat cu un ajutorul unui program de navigare în web numit browser care descarcă paginile web de pe un server web și le afișează pe un terminal.

Prin conceptul de hipertext se înțelege o formă de document electronic, o metodă de organizare a informațiilor în care datele sunt memorate într-o rețea de noduri și legături, putând fi accesată prin intermediul programelor de navigare interactivă, și manipulată de un editor structural.

Conceptul de bază în definirea hipertextului este "legătura" (link-ul), fie în cadrul aceluiași document, fie către alt document. Legătura de tip link permite organizarea neliniară a informațiilor.

Un sistem hipertext permite autorului său să creeze așa-numite "noduri", să le lege între ele, iar unui cititor navigarea de la un nod la altul. Astfel un nod reprezintă un concept putând conține orice fel de informație: text, grafică, imagini, animații, sunete, etc. Nodul sursă al unei legături se numește "referință" iar cel destinație "referent" sau ancoră, punctele de legătură din respectivele noduri fiind marcate. Activarea marcajelor unei legături duce la vizualizarea nodurilor. Asocierea cu unele elemente mediale a dus la extinderea noțiunii de hipertext către "hipermedii".

Noțiunea de website (sau pur și simplu site, ori „site web”) desemnează o grupă de pagini web multimedia (conținând texte, imagini fixe, imagini mișcătoare și chiar sunete), accesibile în Internet în principiu oricui, de obicei pe o temă anume, și care sunt conectate între ele prin așa numite hyperlinkuri. Diversele situri web pot fi oferite de către o companie, un proiect, o rețea de utilizatori, o persoană particulară, o administrație publică și multe altele.

Pentru crearea paginilor web s-a impus limbajul HTML (HyperText Markup Language) – un limbaj de marcare, al cărui scop constă în prezentarea într-un anumit format a informațiilor:paragrafe, tabele, fonturi, culori, ș.a.m.d.

Calculatorul pe care se găsește site-ul se numește „server”, iar calculatoarele care accesează conținutul site-ului se numesc „client”.

Orice calculator client trebuie să dispună de un program specializat, numit „browser”, cu ajutorul căruia să se poată interpreta și deci vizualiza fișierele HTML.

Pe server trebuie să se găsească un program care răspunde cererilor browser-ului aflat pe calculatorul client. Cererea efectuată de către browser și răspunsul server-ului se fac prin

respectarea unui anumit protocol. Acest protocol se numește HTTP (HyperText Transfer Protocol).

Figura 2 Client-Server – link către sursa

II.2. Descrierea paginilor web – limbajul HTML

HTML este un limbaj de marcare, cel mai folosit în scrierea paginilor web. Inițial, acest limbaj a fost dezvoltat pentru a defini structura unui document, alcătuit din antet, paragrafe, liste, etc. și a împărții informațiile astfel structurate între diferiți cercetători.

HTML oferă diverse tipuri de metadata și modalității de redare a conținutului unui document; toate aceste indicații de redare pot fi vizualizate cu utilizând un software de redare specializat, de exemplu un browser (Internet Explorer, Mozilla Firefox, Chrome, etc. Metadatele din cadrul unui document pot include informații despre titlul și autorul documentului, cum este împărțit documentul în diferite cadre, liste, paragrafe, titluri etc.

Fișierele HTML au un format text ce poate fi citit și editat de oameni utilizând un editor de text simplu. Scrierea sau modificarea acestor fișiere solicită cunoștințe solide de HTML și este consumatoare de timp. Există o serie de editoarele grafice ce permit generarea de cod HMTL pentru pagini web, însă aceste programe generează un cod de multe ori de proastă calitate. HTML se poate genera și direct folosind tehnologii de codare din partea serverului cum ar fi PHP, JSP sau ASP.

Crearea unui fișier HTML este relativ simplă și se poate realiza cu ajutorul oricărui editor text, cu mențiunea ca acest editor să ofere posibilitatea de a evidenția elementele de marcare (tag-urile) și să poată detecta erorile care pot apărea la scrierea codului. În cadrul orelor de opțional s-a folosit ca și software pentru programarea web Aptana.

Structura unui document HTML

Structura de bază a unui document HTML este următoarea:

Figura 3 Structura unui document HTML

Din analiza imaginii de mai sus se poate observa că orice document HTML începe și se termină cu <html> și </html>. În interiorul acestor două etichete, documentul este împărțit în două secțiuni:

secțiunea de antet, delimitată de <head>…</head>; aceasta conține informații referitoare la titlul documentului, autor, etc. Informațiile din interiorul acestei secțiuni nu sunt afișate.

corpul documentului <body>…</body>; aici este cuprins conținutul real al paginii HTML, adică ceea ce va fi afișat în fereastra browser-ului.

Un prim document HTML ar arata astfel

Aplicația 1 Primul document HTML

Rezultatul în browser 1

Etichete și atribute HTML

Elemente de formatare a textului

Limbajul HTML conține elemente ce permit stilizarea modului de afișare a unui text.

Etichetele <font>…</font> au rolul de a stabili caracteristicile textului cuprins între ele. Atributele etichetei sunt:

Color pentru a indica culoarea fontului; aceasta poate fi precizată prin numele culorii sau printr-o constantă în hexazecimal conform standardului de culoare RGB (Red Green Blue).

Face stabilește familia fontului. Există cinci familii generice de fonturi care sunt de regulă disponibile pe toate calculatoarele: serif, sans serif, cursive, monospace și fantasy. Pot fi introduse mai multe fonturi separate prin virgula, însă browser-ul va utiliza primul font pe care îl cunoaște.

Size specifică mărimea fontului (trebuie să fie un număr cuprins între 1 și 7).

Weight pentru a indica grosimea fontului. Valorile posibile pentru acest atribut sunt 100 900 (100 pentru fontul cel mai subțire și 900 pentru cel mai gros).

Modul de afișare a textului poate fi stilizat și prin intermediul următoarelor elemente:

<BR> forțează afișarea a ceea ce urmează pe rândul următor.

<B>…</B>, <STRONG>…</STRONG> textul specificat între cele două tag-uri este afișat îngroșat (bold).

<I>…</I>, <EM>…</EM>, <DFN>…</DFN>,<CITE>…</CITE> are rolul de a afișa italic (înclinat) textul cuprins între cele două tag-uri.

<U>…</U> textul cuprins între cele două tag-uri este afișat subliniat.

<S>…</S>, <DEL>…</DEL> textul este afișat tăiat (cu o linie orizontală).

<BIG>…</BIG> textul cuprins între cele două tag-uri ale sale este afișat mai mare decât textul în care este cuprins.

<SMALL>…</SMALL> : textul cuprins între cele două tag-uri ale sale este afișat mai mic decât textul în care este cuprins.

<SUP>…</SUP> textul este afișat ca o putere.

<SUB>…</SUB> textul este afișat ca un indice.

În codul de mai jos găsiți tag-urile exemplificate:

Aplicația 2 Blocuri Paragraf

Rezultatul în browser 2

Blocuri de text

Aceste elemente sunt folosite pentru structurarea textului. La folosirea unei astfel de etichete, trecerea la rândul următor se face automat.

Paragrafe

Cu ajutorul tag-urilor <P> … </P> se introduce un nou paragraph. În cadrul unui document HTML, Enter nu va avea nici un efect. Astfel, prin folosirea elementului paragraph, automat se va adăuga o linie goală înainte și după acesta. Alinierea textului în cadrul acestui bloc se face cu ajutorul atributului align, având valorile posibile " left ", " center " sau " right ".

În codul de mai jos găsiți tag-urile exemplificate:

Aplicația 3 Blocuri paragraf

Rezultatul în browser 3

Blocuri de titlu

Pentru scrierea titlurilor se utilizează etichetele <H1>…<H1>, <H2>…<H2> … <H6>…<H6>. Numărul de după H indică mărimea fontului (<H1> specifică fontul de dimensiune maximă, <H6> fontul de dimensiune minimă) iar textul care apare între tag-uri este scris îngroșat (bold). Aceste etichete accepta atributul align pentru alinierea titlului blocului de text la stânga, centru sau dreapta.

În codul de mai jos găsiți tag-urile exemplificate (apl4.html)

Aplicația 4 Blocuri de titlu

Rezultatul în browser 4

Linii orizontale

Eticheta <hr> este folosită pentru a fi inserate linii orizontale în cadrul unui document html. Linia orizontala poate utiliza următoarele atribute:

align({left, center, right}) specifică alinierea liniei la stânga, centru sau dreapta.

width specifică lungimii liniei;

size specifică grosimea liniei;

noshade când este prezent specifică o linie fără umbră;

color permite definirea culorii liniei.

In aplicația de mai jos sun exemplificate diferite tipuri de linii (apl5.html):

Aplicația 5 Linii orizontale – Tipuri

Rezultatul în browser 5

Blocuri center

Blocul introdus de etichetele <center>…</center> aliniază centrat toate elementele pe care le conține.

In aplicația de mai jos sunt exemplificate diferite tipuri de linii centrate (apl6.html):

Aplicația 6 Blocuri center – Linii orizontale

Rezultatul în browser 6

Blocuri div

Eticheta <div> este folosită pentru a specifica o secțiune în cadrul unui document html. Pentru a stabili caracteristicile etichetei se folosește atributul align cu valorile left (aliniere la stânga), center ( aliniere centrala ) sau right ( aliniere la dreapta ). Un bloc <div>…</div> poate include și alte elemente care vor moșteni efectul atributului align.

În aplicația de mai jos sun exemplificate diferite tipuri de linii (apl5.html):

Aplicația 7 Blocuri DIV

Liste

Listele sunt acele elemente care permit ca anumite enunțuri (texte, elemente) să fie organizate ( numerotate sau marcate) într-un anumit fel.

Liste ordonate (Ordered Lists)

O listă ordonată de elemente este un bloc de text delimitat în cadrul documentului HTML de etichetele corespondente <ol>…</ol> (" ol " vine de la " ordered list " = lista ordonată). Fiecare element al listei (item) este introdus cu eticheta <li> (list item). Numerotarea listei se face cu cifre, dar poate fi modificată prin folosirea atributului type astfel:

<OL type="a"> numerotarea se va face cu litere mici (a, b, c, …)

<OL type="A"> numerotarea se va face cu litere mari (A, B, C, …)

<OL type="i"> numerotarea se va face cu numere romane mici (i, ii, iii, iv …)

<OL type="I"> numerotarea se va face cu numere romane mari (I, II, III. IV, …)

<OL> (implicit) numerotarea se va face cu numere arabe obișnuite (1, 2, 3, …)

Lista este identată față de restul paginii și fiecare element al listei începe pe un rând nou.

Aplicația 8 Liste ordonate

Rezultatul în browser 8

Liste neordonate (Unordered List)

O lista neordonata este un bloc de text delimitat în cadrul unui document HTML de etichetele <ul>…</ul> (" ul " -" unordered list " = lista neordonata). Fiecare element al listei este introdus de eticheta <li>. Eticheta <ul> și <li> pot avea atributul type care stabilește caracterul afișat în fața fiecărui element al listei. Valorile posibile al acestui atribut sunt:

"circle" (cerc)

"disc" (disc plin) (valoarea prestabilita);

"square" (pătrat)

Listele neordonate pot fi imbricate pe mai multe niveluri

Aplicația 9 Liste neordonate

Liste de definiție (Definition List)

O listă de definiție este un bloc delimitat de etichetele <DL>…</DL>. Elementele lor sunt de două tipuri:

termenul care este definit introdus de eticheta <DT>…</DT> (tag-ul de sfârșit nefiind obligatoriu).

definiția propriu-zisă introdusă de eticheta <DD>…</DD> (tag-ul de sfârșit nefiind obligatoriu).

Aplicația 10 Liste de definiții – Dicționar tehnic

Tabele

Tabelele sunt elemente HTML foarte importante întrucât acestea pot reprezenta scheletul unei pagini web. Pentru a insera un table se folosesc tag-urile <TABLE>…</TABLE>. Un tabel este format din rânduri și coloane. Pentru a insera un rând în tabel se folosește tag-ul <TR>…</TR>. La rândul lor, celulele din cadrul rândului se descriu între <TD>…</TD>. Tag-urile </TR> și </TD> pot fi omise.

Atributele unui tabel sunt următoarele:

Border reprezintă grosimea în pixeli a chenarului tabelului. Dacă acest atribut este omis, în mod prestabilit un tabel nu are chenar; altfel, dacă se specifică doar atributul, omițând grosimea, aceasta va fi luată, implicit, ca fiind 1.

Align reprezintă alinierea tabelului în cadrul paginii web. Poate avea valorile left, center, right. Alinierea este importantă pentru textul ce înconjoară tabelul întrucât:

daca tabelul este aliniat stânga ( <table align="left"> ), atunci textul care urmează după punctul de inserare al tabelului va fi dispus în partea dreapta a tabelului.

daca tabelul este aliniat dreapta ( <table align="right"> ), atunci textul care urmează după punctul de inserare al tabelului va fi dispus în partea stânga a tabelului.

daca tabelul este aliniat pe centru ( <table align="center"> ), atunci textul care urmează după punctul de inserare al tabelului va fi afișat pe toata lățimea paginii, imediat sub tabel.

Cellpadding permite stabilirea unui spațiu care va fi lăsat, în fiecare celulă a tabelului, între conținutul celulei și marginile acesteia. Dacă nu se specifică acest atribut, el este în mod implicit considerat 0.

Cellspacing permite stabilirea spațiului care va fi lăsat între chenarele celulelor vecine în tabel (și inclusiv între ele și chenarul exterior al tabelului). Dacă nu se specifică acest atribut, el este în mod implicit considerat 2

Width poate stabili cât de lat să fie tabelul. Lățimea poate fi dată în procente, caz în care se va calcula ca și procent din lățimea ferestrei browser-ului (ex: width=”50%”) sau în pixeli (ex: width=”500”).

Height poate stabili cât de înalt să fie tabelul. Lățimea poate fi dată, la fel ca și în cazul atributului width, în procente sau în pixeli.

Bgcolor stabilește culoarea de fundal pentru celulele tabelului.

Bordercolor stabilește culoarea pentru chenarul tabelului.

Un tabel trebuie privit ca o rețea dreptunghiulara de celule. Cu ajutorul a doua atribute ale etichetelor <td> și <th>, o celula se poate extinde peste celule vecine:

Colspan: valoare asociată determină numărul de celule care se unifică pe rânduri (orizontală).

Rowspan: valoare asociată determină numărul de celule care se unifică pe coloane (verticală).

Aplicația 11 Tabele

Rezultatul în browser 11

Inserare imagini

Formate imagine

Folosirea imaginilor în cadrul unui site are rolul de a oferi o mai bună înțelegere a mesajului și rafina designul paginii; totuși trebuie menționat faptul că excesul de imagini va duce la o încărcare greoaie a site-ului.

Imaginile grafice sunt construite din pixeli, care sunt puncte distincte de informație de imagine. Fiecare pixel necesită un bit de culoare. Principalele caracteristici ale formatelor de imagine sunt: numărul de culori, compresia, transparența, întrețeserea și animația. Printre formatele grafice cele mai răspândite se pot aminti:

GIF (Graphics Interchange Format) utilizează doar 256 de culori, având nevoie de 8 biți pentru stocare. De asemenea oferă posibilitatea reducerii numărului de culori, astfel, dacă este nevoie doar de 2 culori, se utilizează numai un bit, ceea ce reduce dimensiunea fișierului de 8 ori.

JPEG (Joint Photographic Expert Group) utilizează 24 de biți de culoare.

PNG (Portable Network Graphic – Format Grafic portabil în rețea) utilizează 32 de biți de culoare.

Toate aceste trei formate grafice pot comprima imaginea pentru a reduce dimensiunile fișierelor. Comprimarea se poate face, în mod diferit, pentru fiecare format, și, din aceste motive, ele pot avea dimensiuni mai mici într-un format decât în altul. Formatele GIF și PNG admit culoarea transparentă, în timp ce formatul JPEG nu admite transparența. Formatele GIF și PNG admit animația, în timp ce, cu formatul JPEG, nu se poate obține animație. Toate cele trei formate acceptă întrețeserea. De exemplu, când se vizualizează o pagină web, se pot observa imaginile care apar linie cu linie, de la forma brută până la redarea finală, aceasta reprezintă întrețeserea. Deși dimensiunea fișierelor crește cu până la 10%, cu ajutorul acestei întrețeseri, vizitatorul poate să-și facă o imagine despre ceea ce se va descărca.

Având în vedere cele cinci caracteristici ale formatelor de imagine, acestea pot fi recomandate:

GIF – pentru majoritatea imaginilor din web, butoane, panouri publicitare, desene etc., datorită dimensiunii mici a fișierelor.

JPEG pentru fotografii, când se dorește să se redea cât mai exact culoarea reală a imaginii.

PNG – pentru desene complexe, dar și pentru fotografii, acesta fiind formatul care îmbină caracteristicile celor două.

Imaginile pot fi descărcate de la adrese absolute sau relative. Adresele URL (Uniform Resource Locator) reprezintă standarde de identificare a unei resurse (o imagine, un fișier, o pagină web) și pot fi adrese URL absolute și relative.

Adrese URL absolute

Adresele absolute identifică locația unui fișier imagine de pe Internet sau alte calculatoare conectate la Internet și au sintaxa:

protocol/nume_calculator/cale/nume_fișier

Un exemplu de adresă URL absolută: http://marius.scoalacajvana.ro/images/tic.jpg unde:

htpp:// – este protocolul Internet utilizat;

scoalacajvana.ro – este numele calculatorului;

images – este calea până la fișierul imagine dorit;

tic.jpg – este fișierul imagine

Adrese URL relative

O adresă URL relativă este o scurtătură care indică o resursă din același website, făcând referire la directorul curent. Nu poate fi utilizată pentru a creea link-uri către pagini aflate pe alte site-uri web. De exemplu, pentru a accesa pagina elev.html, care se află în subdirectorul SituatieScolara se utilizează codul de mai jos:

<a href=”/ SituatieScolara /elev.html”>Note</a>

Dacă se dorește crearea unui link către o pagină care se află în directorul rădăcină, se utilizează codul de mai jos:

<a href=”/Acasa.html”>Pagina de Start</a>

Dacă se dorește crearea unui link către o pagină care se află într-un director mai mare (părinte) decât pagina de trimitere, codul utilizat este:

<a href=”../alt-director.html”>Resursa externă</a>

Astfel referirea la directorul părinte se poate face prin “../” , iar la directorul rădăcină se poate face prin “/”.

În general, imaginile cu care se lucrează în cadrul unui website vor avea adresa URL exprimată în funcție de directorul ce conține documentul HTML care face referire la imagine, adică adresă relativă.

Eticheta IMG

Imaginile se inserează în pagini cu ajutorul etichetei <img>. Acesta poate fi inserat oriunde în pagină și prezintă următoarea sintaxă: <img listă-atribute>.

Atributele elementului <img> sunt:

src este un atribut obligatoriu întrucât identifică imaginea care se dorește a fi inserată. Valoarea atributului este adresa URL absolută sau relativă către imaginea dorită.

alt este folosit pentru a întâmpina situația în care din diferite motive imaginea nu se poate încărca. Valoarea acestui atribut este textul ce va apărea în locul imagini.

align indică browser-ului cum va fi aliniată imaginea față de text. În lipsa unei opțiuni, poza este plasată acolo unde este scrisă în cod. Valorile acestui atribut sunt:

left – aliniere la stânga și textul „curge” pe lângă imagine în dreapta ei, începând din partea superioară;

right – aliniere la dreapta și textul „curge” pe lângă imagine în stânga ei, începând din partea superioară ;

top – textul este plasat în partea superioară a imaginii;

middle – textul are plasat, la mijlocul imaginii, numai primul rând, restul continuând sub imagine;

bottom – textul este plasat în partea de jos a imaginii și continuă sub imagine.

border este folosit pentru a adăuga un chenar de o anumită grosime unei imagini. Valoarea implicită este 0.

width și height sunt folosite pentru a redimensiona o imagine. Redimensionarea unei imagini se poate face în mod absolut în pixeli sau prin raportare la ecran, astfel că valorile acestor atribute pot fi date în numere naturale, ce vor reprezenta dimensiunea în pixeli sau în procente, și reprezintă o fracțiune din dimensiunea ferestrei.

Aplicația 12 O pagina cu imagine

Rezultatul în browser 12

Legături (link-uri)

Orice resursă Web, de pe Internet sau internă poate fi accesată cu ajutorul legăturilor (referințe, link-uri). Acest mecanism are următoarele roluri:

permit unui vizitator trecerea de la o pagină la alta de pe Web și poate reveni la pagina inițială prin apăsarea butonului Back al browser-ului;

permit unui vizitator sa primească un anumit fișier (prin download);

permit unui vizitator să asculte un mesaj sonor sau să vizioneze un film;

permit vizitarea unei pagini începând dintr-un anumit loc, renunțând la barele de defilare;

permit trimiterea unui e-mail.

Marcajul <a>

Pentru a crea o legătură se folosește marcajul <a> numit și ancoră, cu următoarea sintaxă:

<a lista-atribute> Conținut </a>

Conținutul dintre marcajele <a> și </a> poate fi un text și/sau imagine. Acesta este afișat de browser sub formă de link (colorat/subliniat), și poate accepta comenzi de la mouse (un click) sau de la tastatură (ENTER). În momentul în care cursorul de mouse se află deasupra unui link acesta ia forma unei mâini, indicându-ne astfel că browser-ul este pregătit să descarce resursa Internet de la adresa URL indicată.

Atributele tag-ului <a> sunt:

href este obligatoriu pentru tag-ul legătură, are sintaxa href="adresa URL" și are rolul de a identifica o adresă URL absolută (de pe Internet) sau relativă (locală).

<a href="http://www.grupulscolarcajvana.ro">Grupul Scolar Cajvana</a>

target definește fereastra în care se va încărca noua pagină. Fereastra de încărcare poate avea ca și nume orice șir de caractere sau valori constante astfel:

_blank pagina va fi încărcată într-o nouă fereastră;

_parent pagina va fi încărcată în fereastra părinte;

_top pagina va fi încărcată în fereastra top a cadrului;

_self pagina va fi încărcată în aceeași fereastră(implicită);

<a href=”http://www.scoalacajvana.ro” target=”_blank”>Grupul Scolar Cajvana</a>

title oferă informații suplimentare despre link-ul curent. Când mouse-ul este deasupra conținutului tag-ului <a> conținut </a> acesta se transformă într-o mână și va afișa valoarea atributului title, într-o sugestie de instrument (într-un cadru).

<a href="http://www.scoalacajvana.ro" title="Grupul Scolar Cajvana, SUCEAVA " > Grupul Scolar Cajvana </a>

Dacă se dorește accesarea unei pagini de pe alt site, valoarea atributului href este o adresă URL absolută.

Exemplu:

Mai multe informații despre <br> <a href="http://www.edu.ro"> Ministerul Educației </a>

Același rezultat obținem dacă scriem și numele fișierului index (default) care se încarcă

<a href="http://www.edu.ro/index.php"> Ministerul Educației </a>

Un link poate fi format și din text și din imagine adică:

Grupul Scolar Cajvana <a href="http://www.grupulscolarcajvana.ro">GSC <img src= "http://www. grupulscolarcajvana.ro /galerie/content/Exteriorul colegiului/IMG_1631.jpg" width=70 height=70></a>

Un site trebuie să aibă fișierele organizate într-o structură arborescentă de directoare. Să presupunem că avem următoarea structura arborescentă :

Conform structurii arborescente date în partea dreaptă, din pagina A.html se pot accesa celelalte pagini, utilizând următoarele referințe:

../Fa/index.html

../Fc/B.html

../Fd/A1.html

../Fe/A2.html

../Fe/Ff/A21.html

../Fe/Fg/A22.html

Se pot face referințe și la adrese URL absolute de pe Internet, care nu sunt resurse Web. În acest caz în adresele URL absolute se înlocuiește protocolul http cu alte protocoale non Web (ftp, https, telnet, etc.).

Referințe către fișiere non HTML se pot stabili către orice tip de fișiere, nu numai html, ca de exemplu .pdf, .txt, .gif, .rar, .zip, etc. În aceste condiții se întâlnesc două situații:

browser-ul nu poate lucra cu fișierul întâlnit și atunci încearcă să-l descarce, executând operația download.

browser-ul cunoaște tipul de fișier și acesta va fi deschis în fereastra sa.

Exemplu:

Dacă dorim să trimitem un e-mail dintr-o pagină, se creează o legătură la o adresă e-mail. Legătura va avea atributul href a cărui valoare este mailto (protocol pentru poștă), urmată de”:” și de o adresă de e-mail validă. Pentru a evidenția o adresă, se poate folosi eticheta <adress>

La click pe legătura de e-mail se deschide automat aplicația de email configurată pe calculatorul utilizatorului. Aceasta va conține în câmpul To adresa de email specificată la mailto.

Formulare

Formularele sunt elemente ale limbajului HTML ce conțin o grupare de componente care permit transmiterea de date către un server. Serverul trebuie sa aibă instalată diverse instrumente care să îi permită să răspundă și să prelucreze datele primite.

Sesiunea de lucru cu un formular cuprinde următori pași:

Utilizatorul completează formularul și îl expediază către server;

Aplicația dedicată de pe server analizează formularul completat și (dacă este necesar) stochează datele într-o bază de date;

Serverul trimite un răspuns utilizatorului (în pagina web) cu rezultatele obținute.

Un formular este descris într-un bloc prin intermediul etichetelor corespondente <form>și </form>.

Atributele acestuia sunt:

action=”adresa”, este specificată adresa script-ului către care vor fi trimise datele de pe formular. Scriptul primește datele formularului, prelucrează datele și expediază un răspuns către utilizator, dacă este necesar;

method, specifică metoda prin care sunt transmise datele către server. Cele două posibilități sunt:

get, datele din formular sunt adăugate la adresa URL precizată de atributul action și sunt vizibile în fereastra de browser. Această metodă nu permite cantități mari de date (maxim 1 Kb), între adresa URL și date este inserat un "?" iar între diferite seturi de date este introdus un "&".

http://www.grupulscolarcajvana/test.php?nume1 = valoare1&nume2 = valoare2"

post, datele sunt expediate separat și sunt permise cantități mari de date;

Un formular conține o serie de componente specifice care permite unui utilizator introducerea de date în formate foarte variate, ulterior aceste informații fiind expediate și prelucrate corespunzător. În continuare sunt prezentate câteva din componentele frecvent utilizate în lucrul cu formularele.

Elementul <INPUT>

Prin intermediul acestui element se pot defini mai multe tipuri de controale care permit prelucrarea unor informații diverse.

Atributele acestui element sunt:.

TYPE=tip_control, precizează tipul datelor ce se cer utilizatorului prin elementul INPUT sau acțiunea ce trebuie întreprinsă de browser. Pentru tip_control sunt posibile următoarele valori:

TEXT – controlul este de tip câmp de editare și se poate introduce text pe un singur rând. Aceasta este și valoarea implicită, în cazul în care nu este specificat tipul controlului, pentru tipul elementului INPUT.

PASSWORD – textul introdus nu este afișat și este un control de tip parolă.

CHECKBOX – se realizează o căsuță de selecție care poate fi setată de către utilizator cu mouse-ul (selectat/neselectat)

RADIO – se definesc butoane de opțiune. Pentru implementarea unui grup de butoane, din care numai unul să fie selectat la un moment dat, se vor scrie mai multe elemente INPUT, având același nume (valoarea atributului NAME ce urmează a fi descris);

RESET, creează un buton de acțiune care inițiază toate elementele unui formular.

SUBMIT, creează un buton, care acționat va transmite toate datele formularului către URL-ul specificat în ACTION;

NAME=”name”, specifică numele elementului INPUT. Acest nume este folosit de server pentru a identifica controlul în mod unic și a prelua informațiile dorite.

VALUE= ”valoare”, specifică în funcție de tipul elementului INPUT, valoarea care va fi transmisă către server, sau textul inscripționat pe butonul de tip RESET sau SUBMIT.

SIZE=”număr”, este un atribut folosit doar pentru elementele INPUT de tip text și precizează dimensiunea câmpului text (dimensiunea implicită este de 20 de caractere)

MAXLENGTH=”număr”, este un atribut specific elementului INPUT de tip text și precizează numărul maxim de caractere ce poate fi introdus de utilizator.

CHECKED, este un atribut specific elementelor INPUT de tip RADIO sau CHECKBOX și precizează că elementul respectiv este selectat. În cazul în care se lucrează cu un grup de butoane, este recomandat ca la un moment dat doar un singur buton să fie selectat.

Elementul <TEXTAREA>

Permite utilizatorului introducerea unui text pe mai multe rânduri într-o fereastră de editare. Dimensiunea ferestrei, număr de linii și coloane pot fi precizate ca valori ale atributelor ROWS și COLS.

Elementul <SELECT>

Definește o listă de opțiuni din care utilizatorul poate selecta mai multe. Elementele listei sunt precizate cu ajutorul elementului <OPTION>.

Atributele lui <SELECT> sunt:

NAME=”nume”, numele de identificare a controlului

SIZE=”număr”, precizează numărul de opțiuni

MULTIPL, dacă acest atribut este prezent utilizatorul poate selecta mai multe opțiuni din listă cu ajutorul tastei CTRL.

<OPTION> mai prezintă și următoarele atribute:

SELECTED, la încărcarea paginii, aceea opțiune este implicit selectată

VALUE, este valoarea ce se va transmite, în cazul în care aceea opțiune va fi selectată.

Formular complex:

Codul de culori în html

O serie de elemente din HTML permit utilizarea de atribute de culoare. Acestea pot fi specificate în două moduri:

prin constanta HTML ce reprezintă numele culorii (în engleză, bineînțeles). Există 216 astfel de constante recunoscute de majoritatea browser-elor. Ne vom limita în a le enumera doar pe cele 16 care sunt considerate de bază, exemplificându-le pe fiecare. O serie dintre culori (însă nu toate) au și constante în variantele „dark” (închis) respective „light” (deschis). De exemplu: darkred sau lightblue.

prin constanta de tip RGB (Red, Green, Blue):

Principiul de bază al redării electronice ale unei imagini în culori se bazează pe amestecarea în proporții diferite ale culorilor Roșu, Verde și Albastru. În acest mod, se poate obține orice

culoare se dorește. În cazul culorilor pe care le poate reda un browser HTML, fiecare dintre aceste componente de culoare poate avea 256 de stări posibile: de la 0, care înseamnă că respectiva culoare lipsește cu desăvârșire, până la 255, care înseamnă că respectiva culoare este folosită la intensitatea maximă.

În acest fel, prin amestecuri diferite, putem obține 2563, deci aproximativ 16 milioane de nuanțe diferite. Componentele de culoare în HTML se specifică folosind numere hexazecimale. Astfel, fiecare dintre numerele dintre 0 și 255 se codifică în hexazecimal printr-un număr între 00 și FF. Constanta HTML pentru specificarea unei culori are forma generală #RRGGBB, în care RR, GG respectiv BB reprezintă câte un număr hexazecimal cuprins între 00 și FF.

Iată câteva exemple de culori obținute folosind constante de forma celei de mai sus:

Introducere în HTML5

HTML5 este cea mai recentă versiune de HTML, cu scopul de a simplifica dezvoltarea de aplicații web. Sintaxa HTML5 este mult mai ușoară comparativ cu versiunile anterioare de HTML, și oferă o serie de caracteristici noi.

Doctype

Declarația DOCTYPE indică browser-ui web versiunea limbajului de marcare a paginii. În noua versiune aceasta este mult simplificată și arată astfel:

<!DOCTYPE html>

Script

Tag-ul script este folosit pentru a defini partea de client (JavaScript). În versiunile anterioare era necesar folosirea atributului type; în HTML5 acest lucru nu mai este necesar.

<script src="/scripts/something.js">

Tag-ul script introduce un nou atribut opțional «async», care indică browser-ului să execute script-ul asincron cu restul paginii, astfel încât script-ul va fi executat până când pagina încă se încarcă. Acest lucru se scrie astfel:

<script src="/scripts/something.js" async="async">

Link

Tag-ul link este folosit pentru a defini o relație dintre documente și resursele externe. Această etichetă este frecvent utilizată pentru a include fișiere CSS. În HTML5, atributul type este opțional, similar și pentru tag-ul script.

<link rel="stylesheet" href="style.css" />

Header

Tag-ul header conține titlul paginii web, logo-ul, slogan, meniuri, etc.

<header>

Nav

Tag-ul nav este folosit pentru a naviga prin meniu.

<nav>

Section

Tag-ul section este folosit pentru a separa diferite secțiuni ale paginii. Acesta grupează conținutul care se află între antet și subsol. Dacă este necesar, secțiunile pot fi imbricate între ele.

Figure

Tag-ul figure este folosit pentru comentarii la ilustrații, diagrame, fotografii, și la listele de cod, etc. Tag-ul figcaption este utilizat ca titlu pentru tag-ul figure.

Footer

Este folosit pentru a reprezenta secțiunea subsol și este, de obicei, situat în partea de jos a paginii. Footer conține de obicei informații precum numele autorului, privind drepturile de autor, link-uri către termenii de utilizare și politica de confidențialitate, etc. Informațiile de contact în footer trebuie să fie scrisă în tag-ul address.

Elementele exluse

În afară de cele elementele noi incluse, există unele care nu mai sunt acceptate în HTML5. Aici sunt unele dintre elementele șterse: <frameset>, <frame>, <noframes>, <font>, <strike>, <del>, <u>, <center>, <big>, <applet>.

II.3 Stilizarea paginilor web – CSS

CSS (Cascading Style Sheets) sau foi de stil în cascadă, reprezintă mecanismul pentru a adăuga elemente de stil (tipuri de caractere, culori, aliniere, spațiere, font, poziția elementelor, margini, etc.) unui document web.

Sintaxa construcției CSS

O construcție CSS are două părți: un selector, și una sau mai multe declarații:

unde:

selector – identifică elementul HTML, căreia i se aplică stilul dat;

acoladele – delimitează, care proprietăți și cu ce valori se aplică elementului HTML;

proprietăți – sunt elementele de aspect care vrem să le modificăm;

valori ale proprietăților – sunt noile valori pe care vrem să le atribuim proprietății respective.

Fiecare proprietate suportă, anumite tipuri de valori, de exemplu culoarea poate fi dată în trei moduri:

hexazecimal – #ffaa99;

prin denumire – red;

cu valori rgb – rgb(123,255,17).

Declarațiile CSS se încheie întotdeauna cu ";".

Comentarii CSS

Comentariile se folosesc pentru a explica codul și pot fi utile când modificați codul sursă pe parcurs. Comentariile sunt ignorate de către browsere. Un comentariu CSS începe cu "/*", și se termină cu "*/".

Utilizarea foilor de stil

O foaie de stil poate fi inserată în trei moduri:

Foaie externă de stil;

Foaie internă de stil;

Stil inline.

O foaie de stil externă este ideală atunci când stilul respectiv se aplică mai multor pagini. Cu o foaie CSS externă, puteți modifica aspectul întregului site modificând un singur fișier.

O foaie internă de stil trebuie folosită când un singur document are un anumit stil. Un stil inline nu este recomandat întrucât pierde multe din avantajele foilor de stiluri amestecând conținutul cu prezentarea.

În cazul folosirii foilor de stil, fiecare pagină trebuie să se lege la foaia de stil folosind tag-ul <link> în interiorul secțiunii head:

unde:

atributul rel – specifică relația dintre documentul apelant și documentul legat. Are numeroase valori posibile, dar în cazul de față valoarea sa trebuie să fie stylesheet;

atributul href – cum am văzut și la elementul link, specifică adresa (URL) de unde se introduce fișierul foaie de stil.

Selectorii CSS

CSS-ul are mai multe tipuri de selectori. Selectorii cei mai des folosiți, prin urmare și cei mai importanți sunt:

selector element: aplică proprietățile conținute, tuturor elementelor de acest tip.

Exemplu h5 { color:blue; } toate elementele h5 din pagina vor avea culoarea albastra.

selector class: este utilizat pentru a specifica stilul unui grup de elemente. Astfel, puteți seta un stil particular pentru toate elementele HTML care face parte din aceeași clasă. Selectorul class folosește atributul HTML class și este definit cu ".". În exemplul următor, toate elementele HTML cu atributul class="center" vor fi aliniate la centru:

selector id: este utilizat pentru a specifica stilul unui singur element . Selectorul id folosește atributul id al unui element HTML, și este definit cu "#".

Exemplu: Stilul următor va fi aplicat elementului care are atributul id="para".

Listing code cu exemplu

Observație – Eset recomandat ca numele claselor, id-urilor și a elementelor să înceapă cu o literă!

Formatarea background-ului

Proprietățile utilizate în CSS pentru a defini fundalul unui element sunt:

Formatarea textului

Proprietățile pentru formatarea unui text sunt următoarele:

Fonturi

Proprietățile CSS pentru fonturi definesc familia de fonturi, îngroșarea, mărimea și stilul unui text.

Familiile de fonturi în CSS

În CSS, numele unei familii de fonturi se poate defini în două moduri:

Familie generică – un grup de familii de fonturi care au un aspect similar (ca "Serif" sau "Monospace");

Familie de fonturi – o familie specifică de fonturi (ca "Times New Roman" sau "Arial").

Toate proprietățile pentru fonturi în CSS

Unități de măsură utilizate în CSS

Unitățile de măsură sunt utilizate în CSS pentru a controla distanța față de marginile browser-ului, față de alte elemente HTML, pentru a controla înălțimea literelor sau a unui text.

În CSS utilizăm două tipuri de unități de măsură:

Absolute

Relative

Unitățile de măsură absolute

Caracteristica principală a unităților de măsură absolute este independența de orice mediu electronic – sistem de operare, browser, rezoluție monitor – în care este aplicat. Măsurile absolute sunt specifice lunii reale, cum ar fi milimetrul, centimetri, puncte, inch, etc. Aceste unități de măsură sunt fixe în relație cu mediul sau elementele la care se aplică.

Unitățile de măsură absolute utilizate în CSS:

Unitățile de măsură absolute sunt recomandate a fi utilizate pentru imprimarea unui document, unde unitățile de măsură fizice, cum ar fi mm, cm, etc., sunt recunoscute, în timp ce utilizarea lor pentru monitorul calculatorului nu sunt recomandate, deoarece aceste unități de măsură absolute sunt independente de browser și rezoluția monitorului unui calculator.

Unitățile de măsură relative

Unitățile de măsură relative se caracterizează prin faptul că sunt dependente de mediul în care se aplică – sistem de operare, rezoluție monitor, browser. Aceste unități de măsură sunt relative în relație cu mediul sau elementele la care se aplică.

Unitățile de măsură relative utilizate de CSS:

Unitățile de măsură relative sunt recomandate a fi folosite pentru aspectul unei pagini web, deoarece sunt dependente de browser și rezoluția monitorului. Unitatea em este utilizată pentru dimensiunea fontului, pixeli sunt utilizați pentru rezoluția monitorului și procentajul se aplică în funcție de proprietatea utilizată.

Modelul box în CSS

Toate elementele HTML pot fi considerate a fi de tip box (casetă). În CSS, termenul "box model" este folosit când se discută despre proiectare și aspect. În CSS modelul box este în esență o casetă care înconjoară un element HTML și este formată din: margini, chenare, distanța dintre chenar și conținut (padding) și conținut. Modelul box ne permite să plasăm chenare în jurul elementelor și să amplasăm elementele în relație cu alte elemente. Imaginea de mai jos ilustrează modelul box:

Explicarea componentelor:

Margin – O zonă goală în jurul unui chenar. Marginea nu are culoare de fundal și este complet transparentă.

Border – Un chenar care înconjoară conținutul.

Padding – O zonă goală în jurul conținutului. Această zonă este afectată de culoarea de fundal a casetei.

Content – Conținutul casetei, unde apar textul și imaginile.

Pentru a stabili corect înălțimea și lățimea unui element în orice browser, trebuie să înțelegem cum lucrează modelul box.

Dimensiunile unui element:

Important:

Când specificam în CSS proprietățile width și height ale unui element, stabilim de fapt dimensiunile numai pentru zona de conținut din desenul de mai sus. Pentru a cunoaște adevăratele dimensiuni ale unui element, trebuie să adăugă padding-ul, chenarul și marginea.

Lățimea totală a elementului din exemplul următor este 300px:

width: 250px;

padding: 10px;

border: 5px solid gray;

margin: 10px;

Dacă socotim:

250px (lățimea conținutului) + 20px (padding-ul stâng și drept) + 10px (chenarul din stânga și din dreapta) + 20px (marginea din stânga și din dreapta) = 300px

Să presupunem că există doar 250px spațiu pentru un element și să construim un element cu lățimea totală de 250px:

Astfel, lățimea totală a unui element trebuie calculată astfel:

Lățimea totală a elementului = lățime + padding-ul stâng + padding-ul drept + chenarul stâng + chenarul drept + marginea stângă + marginea dreaptă

Înălțimea totală a unui element trebuie calculată astfel:

Înălțimea totală a elementului = înălțime + padding-ul de sus + padding-ul de jos + chenarul de sus+ chenarul de jos + marginea de sus + marginea de jos

Chenare

Margini

Proprietatea CSS margin definește spațiul din jurul unui element (în afara chenarului). Marginea nu are culoare de fundal și este complet transparentă. Cele patru margini ale elementului pot fi modificate în mod independent, folosind proprietăți separate. O proprietate scurtă poate fi, de asemenea, folosită pentru a schimba toate cele patru margini simultan.

Valori posibile:

Toate proprietățile pentru margini

Poziționarea elementelor

II.4 Validarea datelor din cadrul paginilor web – JavaScript

Introducere

JavaScript este cel mai popular limbaj de programare orientat pe obiecte pentru scripturi și care funcționează pe toate browser-ele mai importante (IE, Chrome, Opera, Firefox). Acesta a fost proiectat pentru a adăuga interactivitate paginilor HTML. În ciuda numelui între JavaScript și Java nu există nici o legătură. JavaScript are o sintaxă apropiată de cea a C-ului; din acest motiv un programator care cunoaște C poate cu ușurință să învețe JavaScript.

Principalele funcții ale JavaScript sunt:

Oferă programatorilor HTML un instrument de programare;

Inserează în mod dinamic text în cadrul paginilor HTML;

Reacționează la evenimente;

Citește și scrie elementele HTML;

Permite validarea datelor înainte de a fi trimise către server;

Este folosit pentru a creea cookies;

Browser-ele rețin în memorie o reprezentare a paginii web sub forma unui arbore de obiecte, punând aceste obiecte la dispoziția JavaScript-ului, care le poate citi și manipula. Acest arbore de obiecte poartă numele de DOM (Document Object Model).

Inserare JavaScript într-o pagină HTML

Inserarea un JavaScript într-o pagină HTML se realizează în interiorul etichetelor <script>…</script>. Pentru scrierea și executarea programelor JavaScript se poate utiliza un editor simplu de text, de exemplu Notepad pentru Windows.

Cod sursa 2 – Inserarea unui script JavaScript într-o pagină HTML

Exemplu de mai sus afișează pe o pagină HTML mesajul ”Prima funcție JavaScript!”. Comanda document.write reprezintă modalitatea prin care se poate scrie text într-o pagină. Fiecare instrucțiune se încheie cu punct și virgule (;) și este executată de browser în ordinea în care sunt scrise.

Variabile JavaScript

Spre deosebire de alte limbaje de programare care impun declararea variabilelor însoțite de tipul de date pe care acestea le conțin (real, întreg, character, etc.), JavaScript procedează altfel. La crearea unei variabile, valoarea pe care o atribuim determină tipul variabilei.

Cod sursa 3 – Definirea variabilelor în JavaScript

Instrucțiuni JavaScript

Pentru a programa în limbajul JavaScript se pot folosi următoarele instrucțiunii:

Table 1 Tipuri de instrucțiuni JavaScript

Pentru a evidenția lucrul cu setul de instrucțiuni în JavaScript propunem drept exercițiu calculul cifrelor unui număr natural:

Cod sursa 4 Exercițiu pentru lucrul cu instrucțiuni în JavaScript

Figura 5 Rezultatul scriptului cod sursa 3

Funcții JavaScript

O funcție este un grup de instrucțiuni ce pot fi tratate ca o singură entitate. Pentru utilizarea unei funcții este necesar mai întâi definirea acesteia și apoi apelarea ei în interiorul unui script.

Cod sursa 5 Declararea funcțiilor JavaScript

Principalele elemente în definirea unei funcții sunt:

function, indică interpretorului JavaScript că blocul de cod care urmează trebuie să fie tratat ca pe o funcție;

numele funcției (functie1, functie2);

setul de paranteze ( ), care conține lista parametrilor funcției;

acoladele închise și deschise, care marchează debutul corpului funcției;

corpul funcției, în cazul nostru metoda alert(); aceasta afișează textul din paranteze într-o casetă de dialog.

Figura 6 Rezultat browser apel script cod sursa 3

Figura 7 Rezultat browser apel script cod sursa 3

Funcțiile definite anterior afișează diferite mesaje. Se pot declara funcții care să returneze o valoare.

Obiectele limbajului JavaScript

Variabilele JavaScript servesc la stocarea unor valori numerice, caracter, șir de caractere, booleene etc. De asemenea, JavaScript permite și gestionarea obiectelor.

Obiectele JavaScript sunt de trei tipuri:

Obiecte interne (integrate) – fac parte din limbajul JavaScript.

Obiectele navigatorului – nu fac parte din limbajul JavaScript, dar sunt recunoscute de navigatoare.

Obiecte personalizate – obiecte create de utilizator.

Lista obiectelor interne este:

Fiecare din obiectele prezentate mai sus prezintă o serie de metode și proprietăți care pot fi folosite (vezi Anexa 1).

Evenimente în JavaScript

JavaScript este un limbaj condus de evenimente. Majoritatea aplicațiilor scrise în JavaScript vor răspunde la un eveniment inițiat fie de către utilizator, fie de către browser.

Reacția la un eveniment poartă numele de prelucrarea evenimentului, iar codul JavaScript corespunzător poartă numele de gestionar de evenimente. Un gestionar de evenimente este o metodă puțin specială care va fi apelată în mod automat de către navigator ori de câte ori va surveni un eveniment particular.

Table 2 Lista evenimente JavaScript

De exemplu, dacă evenimentul click se produce atunci când utilizatorul execută clic pe un obiect, evenimentul click este trimis gestionarului de evenimente, dacă acesta există. Pentru a defini un gestionar de evenimente adăugați prefixul on la numele evenimentului.

Astfel pentru a specifica faptul că mouse-ul se deplasează pe suprafața unei imagini se scrie:

Cod sursa 6 Lucrul cu evenimente în JavaScript

Figura 8 Rezultat browser cod sursa 5

Validarea unui formular

Validarea formularelor reprezintă, fără îndoială aplicația cea mai prețioasă a limbajului JavaScript. Validarea unui formular constă în verificarea, cu ajutorul unui script a corectitudinii informațiilor introduse de către utilizator.

Puteți utiliza limbajul JavaScript pentru:

validarea datelor introduse de utilizator. Puteți valida câmpuri de intrare, grupuri de câmpuri sau întregul formular, utilizând gestionari de evenimente și funcții JavaScript.

construirea formularelor interactive, în care o parte sau întreaga prelucrare are loc pe parte de client.

a testa conformitatea datelor introduse de utilizator cu politicile de procedură impuse (exemplu de politică de procedură: data de livrare a unei comenzi nu poate fi în ziua de sâmbătă/duminică a săptămânii).

a testa prezența datelor în câmpurile obligatorii ale unui formular (un câmp este prezent dacă nu este vid).

Aplicație:

Scrieți un program JavaScript care verifică dacă conținutul celor trei câmpuri ale unui formular: nume, prenume, adresa email nu este vid. În caz de eroare afișați unul din mesajele de mai jos:

”Vă rugăm să introduceți numele dumneavoastră!”

”Vă rugăm să introduceți prenumele dumneavoastră!”

”Vă rugăm să introduceți emailul dumneavoastră!”

De asemenea trebuie verificat că adresa de email este validă.

Cod sursa 7 Validarea unui formular

Capitolul III Programarea web dinamică – limbajul PHP

III.1 Generalități și principiul de funcționare

PHP reprezintă un limbaj de programare ce permite modificarea paginilor web înainte ca acestea sa fie transmise de server către browserele utilizatorilor. PHP poate genera conținut HTML pe baza unor fișiere existente sau pornind de la zero, poate sa afișeze o imagine sau orice alt conținut accesibil prin web, sau sa redirecționeze utilizatorul către alte pagini. în cadrul acestui proces, PHP poate consulta baze de date, fișiere externe sau alte resurse, poate trimite email-uri sau executa comenzi ale sistemului de operare. Întrucât procesarea se realizează la nivelul serverului web, înainte ca paginile web sa ajungă în browser, PHP este considerat un limbaj de programare server-side.

PHP este un limbaj de programare de tip interpretat. Asta înseamnă ca fișierele ce conțin cod-sursa PHP sunt interpretate ca atare în momentul execuției, de către PHP. Așadar, pentru execuția unei porțiuni de cod PHP este folosit codul-sursa așa cum a fost scris el, și nu este transformat intr-o forma intermediara (binara sau cod-masina) cum se întâmpla la Java sau C/C++. Acest lucru oferă flexibilitate, întrucât orice modificare a fișierelor sursa va fi aplicata imediat la următoarea execuție, fără alți pași intermediari. Exista și dezavantaje la acest mod de lucru, cum ar fi timp mai mare de execuție a codului, dar în anumite situații avantajele pot cântări mai mult decât dezavantajele. Datorita faptului ca limbajul este unul interpretat, PHP mai este numit și limbaj de scripting.

In sens mai larg, PHP este un limbaj de programare universal (sau general-purpose), oferind toate facilitățile oricărui limbaj avansat. Codul scris în PHP poate face aproape aceleași lucruri ca un cod de C/C++ sau Java. Cu toate astea, PHP s-a impus în zona web, ca limbaj server-side, ce extinde funcționalitatea serverelor web. Din acest motiv programarea în PHP mai este denumita și programare web sau programare web server-side.

Interpretorul PHP acționează ca o componenta adiționala, o extensie a serverului web care este invocata de ori cate ori o pagina PHP este accesata. Aceasta componenta procesează codul-sursa din pagina și apoi transmite rezultatul înapoi la web-server, ajungând în final în browserele utilizatorilor. Acest proces este prezentat în imaginea din dreapta de mai jos.

Din imaginile de mai sus, se observa ca atunci când nu exista un interpretor PHP, paginile sunt transmise direct către utilizatori așa cum sunt salvate pe disc, fără modificări. Pentru a actualiza conținutul acestora, este nevoie de intervenție directa asupra lor și salvarea modificărilor pe server. Aceste pagini sunt denumite "pagini statice".

Spre exemplu, presupunând ca avem o pagina statica ce afișează membrii unei comunități, la fiecare înscriere a unei noi persoane, pagina ar trebui modificata manual de către cineva cu acces la serverul web. Lucrurile se complica daca acea lista este personalizata, cu trimiteri către alte informații (cum ar fi detalii de contact pentru fiecare, etc.) sau cu un design întortocheat. Toate aceste probleme pot fi rezolvate cu ajutorul PHP. Folosind o secvența de cod PHP am putea prelua lista de membri dintr-o baza de date, eliminând problema actualizării – nu va mai fi nevoie sa se modifice pagina odată cu fiecare membru nou, scriptul PHP va afișa în mod automat noile persoane adăugate în baza de date. Este rezolvata și problema linkurilor personalizate, sau a designului – toate elementele specifice unei persoane pot fi generate în mod automat.

Aceste pagini sunt, așadar, modificate de către PHP la momentul accesării lor de către utilizatori. în funcție de parametrii primiți și de secvența de cod definita de programator, aceeași pagina poate avea conținut diferit. Aceasta proprietate este denumita dinamism, iar o astfel de pagina este considerata pagina dinamică.

III.2 Aspecte tehnice pentru rularea aplicațiilor PHP

Cel mai simplu mod de a lucra cu PHP este sa fie instalat pe calculatorul personal. Este nevoie ca propriul calculator sa devina un server web. Acest lucru este posibil instalând o aplicație capabilă sa accepte cerințe și sa transmită pagini web ca răspuns. O astfel de aplicație este Apache HTTP Server. La aceasta aplicație, trebuie atașat interpretorul PHP care va interveni în procesul de servire a paginilor web.

Instalarea interpretorului PHP pe Windows

Cea mai simplă modalitate de a avea totul pregătit pentru a lucra cu PHP sub Windows este un pachet care să include serverul web Apache, interpretorul PHP, sistemul de gestiune a bazelor de date MySQL și aplicația de administrare a bazelor de date phpMyAdmin. În continuare sunt descriși pe scurt pașii necesari instalării programului EasyPHP, o aplicație care include toate aceste componente.

Descărcați EasyPHP. Mergeți la http://www.easyphp.org/ -> Download EasyPHP

Instalați EasyPHP (păstrând configurările implicite). Nota: trebuie sa dezinstalați Apache, PHP sau MySQL de pe calculator (daca le aveți deja) înainte de a instala EasyPHP.

Porniți programul EasyPHP (de cele mai multe ori va porni automat)
Nota: la avertizările de la firewall (cel de Windows XP/Vista/7 sau orice alta aplicație de securitate) trebuie sa se aleagă "Allow" sau "Unblock", altfel este posibil ca serverul web sa nu funcționeze.

Figura 11 Pornirea serverului phpmyadmin

În fereastra de EasyPHP apăsați F8 (sau click-dreapta pe iconița EasyPHP de lângă ceas și alegeți Explore). Se va deschide un folder, care reprezintă locația de unde vor fi luate fișierele când sunt afișate în browser. Aceasta locație poarta numele de Document Root și aici trebuie puse toate fișierele .php pe care le scrieți.

Figura 12 Directorul rădăcină pentru site-ul web

Salvați un fișier de test în locația de mai sus. Dați-i un nume sugestiv, gen test. php. Editați fișierul astfel încât sa conțină următoarea secvența:

<?php print "Hello World! Primul script PHP"; ?>

Intr-un browser mergeți la http://localhost/ (sau la http://127.0.0.1/). Va fi afișata o pagina cu linkuri către fișierele/folderelor din Document Root care pot fi accesate. Faceți click pe test. php. O alta modalitate de a accesa un fișier este sa mergeți direct la http://localhost/[cale]/[nume].php, de exemplu http://localhost/test.php.

Figura 13 Configurarea corectă a serverului web

Accesând http://localhost/test.php ar trebui sa fie afișata o pagina alba cu mesajul de mai sus.

Figura 14 Rezultat script de testare PHP

Rețineți! 

Toate fișierele PHP pe care le scrieți (inclusiv cele de test preluate de pe acest site) *trebuie*salvate în folderul Document Root (în exemplu de mai sus locația implicită este E:/PROGRA~1/EASYPH~1.1VC/data/localweb). Web-server-ul local instalat de EasyPHP va caută fișierele doar în aceasta locație. Daca fișierele sunt salvate în alta parte ele nu vor fi disponibile.

De exemplu, avem un fișier care conține doar următorul cod: (atenție la semnul ! în afara tagurilor)

<?php print "Salut!"; ?> !

Să presupunem ca fișierul se numește salut.php

Daca îl accesam în browser folosind adresa "http://localhost/salut.php" (prin intermediul serverului web local) atunci *interpretorul PHP este invocat*, scriptul este executat iar rezultatul procesării afisat de browser va fi "Salut!".

Daca accesam fișierul direct de pe disc, scriind în browser calea lui "file:/// E:/PROGRA~1/EASYPH~1.1VC/data/localweb/salut.php" se va afișa (in cel mai fericit caz) doar "!". Asta pentru ca interpretorul PHP *nu este invocat*, iar fișierul este transmis ca atare, cu secvența de cod PHP ne-interpretata (accesați view-source din browser pentru a verifica).

III.3 Noțiuni de bază

Tag-uri php, instrucțiuni, punct și virgulă

Codul PHP trebuie inclus în fișiere cu extensia .php ce vor fi deservite utilizatorilor finali și trebuie delimitat de restul conținutului prin tagul de început <?php și tagul de sfârșit ?>. Practic tot ce se afla în interiorul acestor etichete va fi interpretat ca fiind cod-sursa PHP (cod ce va fi executat de interpretorul PHP). Textul din afara celor 2 taguri este lăsat neschimbat, fiind ulterior interpretat de browser. Se pot folosi și alte etichete în funcție de configurația serverului web, dar acestea nu sunt recomandate.

Script 8 tag-uri de php

Codul PHP este format din instrucțiuni – comenzi date către interpretor, în urma cărora se executa ceva. PHP este folosit în principal pentru a genera cod HTML, așa ca de cele mai multe ori instrucțiunile folosite sunt cele de afișare. în aplicații mai complexe se pot însa folosi și instrucțiuni de conectare la bazele de date, de citire/scriere/manipulare fișiere, instrucțiuni de trimitere email-uri și altele. Instrucțiunile se pot grupa în blocuri delimitate de acolade { }. Aceste blocuri, numite și "instrucțiuni complexe" se comporta ca și cum ar fi o singura instrucțiune (vezi mai jos exemple de blocuri).

Toate instrucțiunile (in afara de blocuri) trebuie sa fie terminate cu punct și virgula ( ; ). Lipsa acestuia generează o eroare.

Afișarea textului în PHP

În multe din scripturile scrise de începători conținutul rezultat în urma execuției este un text (de obicei în format HTML). Pentru a obține acest text, secvențele de cod trebuie sa cantina instrucțiuni explicite care sa "spună" interpretorului ce anume trebuie afisat.

Instrucțiunile de afișare sunt print, echo și printf. Primele doua sunt echivalente și fac același lucru (exista unele diferențe de forma, vezi exemplul de mai jos, dar poate fi folosita oricare dintre ele); printf este folosita mai rar datorita sintaxei oarecum greoaie.

Rezultatul unui script PHP este de cele mai multe ori un text simplu în format HTML. Cu alte cuvinte, în majoritatea cazurilor PHP returnează o pagina HTML ce va fi afișata în browser. La început, acest lucru poate genera confuzii, întrucât sursa HTML este diferita de ceea ce se afișează efectiv în browser.

Spre exemplu, fie următoarea secvența de cod:

<?php

print "Salut";

print "Acesta este un script simplu";

?>

Salvând aceasta secvența intr-un fișier PHP și accesându-l prin intermediul unui web-server, veți observa ca rezultatul este următorul:

Deși este confuz, rezultatul este corect. Codul PHP afișează doar caracterele care i-au fost indicate. Sfârșitul de linie reprezintă un caracter separat, ne-printabil, dar care controlează cum apare textul pe ecran. în cazul nostru, nu s-a transmis acest caracter (numit și new-line) și prin urmare PHP nu l-a afisat.

Sa rescriem exemplul de mai sus pentru a se afișa și caracterul "sfârșit de linie"

Verificând iar în browser veți constata ca nu s-a schimbat nimic. La prima vedere. în realitate rezultatul este afisat pe 2 linii, în textul trimis de PHP către browser. Întrucât pagina este interpretata ca fiind HTML, browserul ignora caracterele new-line. Pentru verificare vizualizați sursa paginii (meniul View din browser -> view source).

Este foarte important sa se înțeleagă diferența dintre ceea ce se returnează în urma execuției unui script PHP și ceea ce se afișează propriu-zis în browser. Pe scurt, PHP printează cod HTML care este afisat diferit de browsere. De asemenea, trebuie înțeles faptul ca funcția print nu afișează textul pe mai multe linii daca nu se specifica acest lucru în mod express cu caracterul ”new-line \n” sau ”page break <br/>”.

Comentarii în PHP 

Comentariile sunt porțiuni de cod care nu se executa. Sunt folosite de programatori de regula pentru a da diverse explicații despre logica aplicatiei, variabile și altele. Comentariile nu afectează execuția unui script și pot fi șterse din cod fără nici un efect.

Este un lucru foarte util să folosiți comentarii în cod pentru a explica modul de rezolvare a problemei abordate, sau pentru a da detalii despre operațiile efectuate. Acestea vă vor ajuta mai târziu daca veți vrea să modificați codul scris, sau vor oferi altor persoane informații (valoroase) despre cum ați gândit codul respectiv.

Variabile în PHP

Variabilele sunt elemente ce au o anumita valoare la un moment dat. Valoare unei variabile se poate schimba de-a lungul execuției unui script.

Lucrul cu variabile în PHP este foarte ușor întrucât nu trebuie specificat un tip pentru ele (de genul "variabila text", "variabila numerica") ci acesta este determinat în mod automat.

Variabilele sunt diferențiate de celelalte elemente ale limbajului prin caracterul $. Astfel, o variabila are forma $nume.

Declararea variabilelor

În PHP declararea variabilelor se realizează în același timp cu inițializarea lor (cu atribuirea unei valori de început). Atribuirea unei valori se realizează cu ajutorul instrucțiunii de atribuire ce are forma <nume variabila> = <valoare>;

PHP face distincție intre literele mari și mici. Astfel, următoarele variabile sunt diferite:

$variabila = "negru";

$vaRiabilA = "alb";

$Variabila = 1;

Atribuirea de valori

Se realizează la fel ca și declararea prin intermediul instrucțiunii de atribuire.

Ponturi de PHP   

Diferența dintre ghilimele simple și duble la declararea variabilelor

Ghilimelele duble permite compilatorului sa "citească" variabilele ce apar în interiorul textului.

Verificarea daca o variabila e definita

Se pot folosi 2 funcții:

isset($variabila) verifică daca variabila a fost definite;

empty($variabila) verifică dacă a fost definită și dacă are o valoare considerata vida. O variabila este vida daca are următoarele valori: "" (text de lungime 0), 0 (cifra 0), "0" (textul "0"), null, false, array() (vector gol). Pentru aceste valori, funcția empty returnează true.

Constante

Constantele sunt entități care nu își schimbă valoarea pe parcursul execuției. Sunt utile pentru a recunoaște ușor valorile folosite în cod. Acestea se definesc folosind define.

De exemplu, e mai ușor de înțeles următorul cod, când se folosește o constanta decât daca s-ar folosi cifra 5

Este recomandat ca numele constantelor să fie scris cu majuscule (pentru a fi mai ușor identificate) deși nu este obligatoriu.

Funcții în PHP

Funcțiile sunt blocuri de cod PHP (secvențe de cod) bine delimitate și identificate printr-un nume, ce executa un set de operații. Funcțiile pot fi executate de mai multe ori în cadrul unui script prin simpla apelare a numelui lor.

Exista funcții predefinite, specifice limbajului PHP (cum ar fi print, empty, etc.) ce pot fi folosite în orice moment și există funcții definite de utilizator, scrise practic de programatori. Pentru ca acestea să poată fi folosite este nevoie sa fie declarate (si implementate).

Script 1 Exemplu de funcție definita de utilizator

Rezultatul codului PHP este reprezentat mai jos:

Am scris, așadar, o singura data codul care afișează lunile anului și l-am apelat de cate ori am avut nevoie. Apelarea funcției se face prin specificarea numelui urmat de paranteze. Intre paranteze se pot specifica parametrii, după cum vom vedea mai jos.

Foarte important de știut este faptul că variabilele definite în afara funcțiilor nu sunt disponibile în interiorul lor. Astfel, codul de mai jos nu va funcționa așa cum ne așteptam:

Funcția nu va afișa mesajul, așa cum v-ați fi gândit la prima vedere. Asta pentru ca ce este definit în afara funcției nu este recunoscut în interior. în mod similar, variabilele definite în interiorul unei funcții se pierd și NU sunt disponibile în afara acesteia.

Exista totuși o modalitate prin care variabilele definite în afara unei funcții sa fie 'aduse' în interiorul ei: folosind instrucțiunea global.

Funcții matematice

Limbajul PHP dispune de majoritatea funcțiilor matematice uzuale. Câteva dintre ele sunt prezentate mai jos cu titlu exemplificativ.

Funcția phpinfo()

Funcția phpinfo oferă informații despre instalarea PHP curenta și despre serverul pe care aceasta este executata. Rolul acestei funcții este pur informativ; funcția nu poate fi folosita intr-un script care are un alt scop bine definit. De aceea, este recomandata apelarea acestei funcții intr-un script PHP separat, întrucât aceasta creează o pagina HTML completa.

Valori returnate. Parametri 

De multe ori este nevoie ca o funcție sa returneze o valoare. Majoritatea funcțiilor predefinite fac lucrul asta; spre exemplu empty returnează TRUE sau FALSE în funcție de starea și conținutul unei variabile transmise ca parametru.

Si funcțiile definite de utilizator pot returna o valoare, cu ajutorul instrucțiunii return. Exemplu:

De asemenea, funcțiile pot primi date ce pot fi folosite în interiorul lor pentru diverse prelucrări. Aceste date de intrare sunt transmise sub forma de parametrii. Pentru ca o funcție sa poată primi parametrii, aceasta trebuie sa ii declare intre parantezele rotunde, ca în exemplul de mai jos:

Variabile speciale 

PHP dispune de câteva variabile implicite. Acestea sunt pre-populate de PHP în momentul execuției, deci nu trebuie definite sau inițializate. Sunt disponibile în orice porțiune a codului și în orice script PHP și pot fi folosite fără sa fie nevoie de alte pregătiri. Anumite variabile (ca de exemplu $_POST) au valori doar în anumite situații (spre exemplu, doar atunci când sunt folosite formulare).

Mai jos sunt descrise pe scurt aceste variabile, cu mențiunea ca în lecțiile următoare vor fi folosite în exemple din care veți înțelege (ușor) rostul lor.

$_GET 

Vector asociativ ce conține parametrii transmiși prin URL sau printr-un formular. De exemplu, dacă pagina noastră PHP se numește test. php, un URL de genul

http://localhost/test.php?nume=Alex&varsta=12&ocupatie=elev

ar popula variabila $_GET cu următoarele valori:

Nota: numele parametrilor au rol de  cheie  în vectorul $_GET. Vectorul $_GET este de asemenea populat la folosirea formularelor GET. 

$_POST

Similar cu $_GET, doar ca parametrii sunt transmiși prin formulare și nu sunt vizibili în link-ul URL.

$_REQUEST

Înglobează atât $_GET cat și $_POST. 

$_SESSION

Folosita pentru a defini date ce sunt disponibile atât timp cat utilizatorul accesează site-ul, indiferent de paginile vizualizate. în mod normal o variabila este definita doar când un utilizator cere o pagina. La finalul execuției scriptului, valorile variabilelor se pierd (inclusiv variabile $_GET, $_POST, etc.). Daca sunt puse în vectorul $_SESSION, valorile pot persista și după terminarea execuției scripturilor. Vezi lecția Sesiuni pentru detalii. 

$_COOKIE

Folosita pentru a vedea elementele de tip Cookies de la site-ul/pagina curenta, disponibile pe calculatorul utilizatorilor. 

Constante predefinite

In PHP exista o serie de constante ce pot fi folosite în orice moment. Ca și în cazul vectorilor superglobali, acestea sunt populate de către interpretorul PHP și sunt disponibile în toate fișierele sursa.

TRUE, FALSE – constantele de tip boolean ce pot fi folosite la testele din instrucțiunea if

NULL – referință nula, utila în "ștergerea" unei variabile

E_ERROR, E_WARNING și altele – conțin codurile diverselor tipuri de erori ce pot sa apară

Formulare

Formularele sunt elementele prin intermediul cărora utilizatorii trimit date către server. Pe o pagina web pot fi introduse diferite tipul de informații (parole, comentarii, mesaje, etc.). Toate aceste date sunt transmise către servere prin intermediul formularelor (in engleza "form"). Odată transmise, datele pot fi prelucrare folosind PHP. Astfel, ele pot fi salvate intr-o baza de date, în fișiere, trimise prin email, sau doar afișate înapoi pe o pagina. În cele ce urmează vor fi prezentate elemente de baza ale folosirii formularelor în PHP. Ca o nota, formularele sunt întâlnite în orice aplicație web (cele mai uzuale sunt poate paginile de login, contact sau înregistrare). Cert este ca sunt esențiale în folosirea internetului și este foarte important pentru un programator web sa știe sa folosească form-uri în PHP.

Pe scurt, pentru a putea fi introduse date pe o pagina web trebuie sa existe un formular. Acesta se definește în HTML prin tag-ul form. Un form trebuie sa aibă specificate obligatoriu două atribute: action și method.

Action reprezintă locația unde vor fi transmise datele, reprezentata prin numele fișierul ce va prelucra requestul (de regula un fișier PHP). Acest atribut poate fi gol, specificând ca datele vor fi transmise către același script ce afișează formularul (fișierul curent).

Method specifică metoda de acces. Metodele de acces reprezintă modul în care cerințele pentru o pagina web și alte informații aferente sunt transmise de la browser la serverul web. Exista mai multe metode definite, în schimb doar două dintre ele sunt cel mai des folosite în dezvoltarea paginilor web.

GET 

Este cea mai uzuala metoda, folosita implicit de browsere pentru a trimite cereri către servere. Majoritatea paginilor pe care le vizualizam pe internet sunt obținute în urma unei cereri GET. De exemplu, scrierea unui URL în bara de adrese a browserului sau accesarea unui link, sau a unei imagini, toate sunt request-uri de tip GET.

Aceasta metoda este utilizata, așadar, pentru a "cere" o pagina de la server (in engleza "get data"). Totuși, odată cu cererea se pot transmite și mici bucăți de informații către server. Aceste informații transmise la momentul cererii pot fi date introduse de utilizatori (intr-un form) și sunt adăugate la finalul URL-ului sub forma "pagina.php?parametru=valoare". 

POST 

Opus metodei GET, POST este folosita pentru a transmite informații către server (in engleza "post data"). Spre deosebire de GET care permite doar o cantitate limitata de date sa fie transmisa de la client (browser) la serverul web, POST dispune de limite mai generoase, fiind standardul de transmitere a datelor. Astfel, upload-ul unui fișier pe server, salvarea unui post pe blog, etc. – toate sunt requesturi de tip POST.

Formulare GET   

Acest tip de formulare permite utilizatorilor să transmită informații adiționale atunci când cer o pagina web. Acțiunea unui formular GET poate fi ușor reprodusa specificând URL-ul și parametrii direct în browser (vezi aplicația de mai jos).

Datele transmise de utilizatori la un request de tip GET sunt disponibile pentru prelucrare în PHP folosind variabila globala $_GET. Fiecare parametru al requestului reprezintă o componenta a variabilei $_GET.

Să considerăm un formular care preia numele utilizatorului și îl afișează pe pagină.

Intr-o prima faza fișierul va cuprinde formularul:

Acesta da utilizatorilor posibilitatea sa scrie numele în caseta afișata și sa apese pe butonul "Trimite".

Următorul pas este definirea codului care va prelua numele si-l va afișa. Secvența de cod PHP se scrie în același fișier ca și codul HTML de mai sus. Daca s-ar pune intr-un fișier separat, atunci atributul action al etichetei form ar trebui sa specifice numele acelui fișier.

Formularul, așa cum apare în browser, este disponibil mai jos:

Se observa ca atunci când se folosește metoda GET, toate elementele formularului (care au specificat un nume!) apar în URL-ul paginii următoare sub forma pagina.php?element1=valoare1&element2=valoare2. Astfel, același efect ca și folosirea formularului s-ar obține daca s-ar accesa direct pagina cu parametrul ”numele=ceva”.

Formulare de tip POST    

Un alt tip de request folosit în practica este POST. Acesta permite transferul unei cantități mult mai mari de date (de ordinul gigaocteților), în timp de metoda GET este limitata la câțiva octeți. Astfel, prin POST se pot transfera fișiere către web-servere și se pot transmite texte foarte lungi, fără a ne face griji de formatul datelor transmise (care pot conține caractere speciale, pot fi în format binar).

Datele transmise de utilizator sunt disponibile în PHP prin intermediul variabilei globale $_POST. Astfel, daca formularul conține 2 câmpuri numite "numele" și "textfl" (ca în aplicația următoare), variabila $_POST va avea doua componente ce pot fi accesate prin $_POST[ 'numele'] și $_POST[ 'textfl' ].

Să considerăm o aplicație care preia numele utilizatorului (printr-un formular) și un text foarte lung și afișează pe pagina numele și lungimea textului. 

Cele 2 tipuri de formulare prezintă fiecare avantaje și dezavantaje. Mai jos sunt prezentate câteva dintre caracteristicile fiecărui tip. în general, avantajul formularelor POST este acela ca pot manipula cantități mari de date iar al formularelor GET ca sunt ușor de folosit/retrimis.

GET

Datele transmise către server prin GET apar la finalul URL-ului, așa cum au fost introduse; acest lucru ar putea fi un dezavantaj când este vorba de date senzitive, dar ajuta la modificarea ușoara a datelor pentru retrimitere;

Cantitatea de date GET depinde de lungimea maxima permisa a URL-ului, care în Internet Explorer este de 2 083 caractere. Așadar prin GET nu se pot transmite prea multe date;

Rezultatul unui request GET poate fi preluat din cache-ul browser-ului sau al proxy-ului web. Trebuie ca URL-ul sa fie diferit la fiecare request nou pentru a fi siguri ca datele reale sunt preluate;

Caracterele speciale pot fi codificate folosind atributul enc-type al formularului; dezavantajul este ca aceasta codificare va reduce cantitatea de date ce pot fi transmise (ex. 3 caractere japoneze sunt reprezentate cu ajutorul a 42 caractere normale;

In PHP, elementele formularului sunt disponibile prin intermediul variabilei globale $_GET (sau prin $_REQUEST);

POST

Cantitatea de date ce poate fi transmisa prin POST poate fi restricționata doar de către serverul web, deși nu exista o limitare reala;

Datele transmise prin POST nu apar în URL și nu pot fi alterate ușor, ceea ce oferă un oarecare grad de securitate;

In mod implicit, datele preluate prin POST nu sunt puse în cache-ul de la browser sau proxy-server; astfel folosind aceasta metoda vor fi afișate întotdeauna datele reale;

Codificarea caracterelor speciale se poate realiza ca și la GET folosind atributul enc-type al formularului (application/x-www-form-urlencoded); avantajul este ca nu exista limitări de cantitate a datelor;

In PHP, elementele formularului sunt disponibile prin intermediul variabilei globale $_POST (sau prin $_REQUEST)

Pe lângă considerentele de mai sus, trebuie avuta în vedere și o recomandare generala: GET ar trebui folosit pentru operațiile care nu modifica nimic pe server, în timp ce POST ar trebui folosit pentru operațiile de modificare/actualizare/ștergere.

Formular simplu de login în PHP   

Mai jos este un exemplu de formular ce poate fi folosit pentru autentificarea (logarea) utilizatorilor. Deocamdată nu conține decât elementele de baza și verificări simple, tocmai pentru a evidenția modul de lucru cu formulare în PHP. Codul conține comentarii în care sunt explicați pașii urmăriți.

In mare, sunt executați următorii pași:

Se verifica daca a fost făcut submit

Ar putea fi puțin derutant faptul ca porțiunea de cod PHP se afla în același fișier cu formularul HTML. Întrebarea fireasca ar fi: "nu se executa prelucrarea datelor când de fapt trebuie doar sa afișeze formularul?" sau altfel spus "cum știe serverul când sa prelucreze datele din formular?".

Ideea este ca acea porțiune de cod PHP se executa la fiecare afișare a paginii. De fapt nu toata, ci doar prima parte. Când se încarcă pagina (in urma unui click sau refresh), pe lângă codul HTML static se returnează și rezultatul codului PHP. în cazul nostru, codul PHP consta în 2 atribuiri de variabile și un if mare.

Atribuirile se executa mereu (la fiecare afișare), la fel și if-ul, doar ca rezultatul comparațiilor este adevărat doar atunci când datele din formular au fost trimise. Cu alte cuvinte, acel if va fi evaluat true doar când utilizatorul da submit la formular – deci prelucrarea datelor se va face doar după ce utilizatorul face click pe "Login".

daca nu a fost făcut submit, e simplu: pur și simplu afișează codul HTML static și ce mai este prin script (rezultatul va fi un formular).

După ce s-a încărcat pagina, utilizatorul va putea introduce datele în formular și va putea da submit. Atunci când se da submit, se face un request POST către aceeași pagina și se executa încă o data codul PHP din cadrul fișierului, de aceasta data însa cu informațiile actualizate;

când se face submit, se intra pe ramura lui if unde se executa mai multe operații (in cazul nostru doar 2)

Nota: este foarte important sa se înțeleagă mersul lucrurilor, cum este tratata pagina în fiecare situație și cum se ajunge sa se execute fiecare porțiune de cod. Daca aceste aspecte nu sunt clare nu veți putea scrie formulare de unii singuri.

Continuând cu explicarea codului, iată care sunt operațiile care se executa:

se validează datele (se verifica daca au fost introduse valori): 

if( !isset( $_POST[ 'user' ] ) …

se verifica daca numele de utilizator și parola sunt corecte: 

if( $erori == 0 ) …

Daca sunt corecte, atunci se face o redirecționare către o pagina ce poate fi accesata după autentificare. Redirecționarea se realizează folosind etichete HTML, deși exista o modalitate mai eleganta de a o realiza (după cum veți vedea în lecția Headere).

Codul este expus mai jos.

<html>

<head>

<title>Aplicație formular: pagina de login – Invata PHP</title>

Noțiuni avansate de php

Cookies în PHP

Cookies reprezintă porțiuni de informații (stocate sub forma de fișiere de mici dimensiuni) ce se afla pe calculatorul utilizatorului și care sunt create și folosite de către browser în comunicarea cu serverul web. De obicei cookie-urile sunt folosite pentru a identifica utilizatorii sau a păstra urma vizitelor pe un site. Cookie-urile pot fi șterse cu ușurința de către utilizator, sau pot fi blocate de către browser, deci folosirea lor trebuie făcuta cu grija și doar în cazuri de necesitate. Un cookie poate conține o cantitate limitata de informație iar durata de viața poate fi limitata (la un anumit număr de zile, la închiderea sesiunii de lucru, etc.) sau nelimitata (pana la ștergerea lor).

PHP dispune de 2 funcții prin care se pot crea cookies-uri: setcookie și setrawcookie. Cookie-urile create pe calculatorul utilizatorului pentru un site sunt transmise de către browser înapoi la server și sunt disponibile în variabila globala $_COOKIE.

Sesiuni în PHP

In PHP o sesiune reprezintă perioada de timp în care mai multe scripturi PHP, accesate la momente diferite de timp, pot stoca și folosi informații comune. O sesiune începe atunci când un script apelează funcția session_start și se termina atunci când utilizatorul închide browserul (exista și alte modalități de a porni o sesiune, dar nu sunt prea uzuale – folosirea comenzii session_start este metoda recomandata).

O sesiune se întinde pe mai multe requesturi (pe parcursul a mai multor accesări ale diferitelor pagini), iar pentru a identifica existenta unei sesiuni PHP poate folosi cookies-uri sau parametrii GET un URL-ul paginii.

Mecanismul de funcționare a sesiunilor în PHP 

In momentul în care un script apelează funcția session_start pentru prima data intr-o sesiune de lucru, se transmite un cookie către browserul clientului. Fiind vorba de un cookie, este necesar ca funcția session_start sa fie apelata înaintea oricărei instrucțiuni ce afișează ceva (print, echo, etc.) și înaintea oricărui cod HTML. Cookies-ul transmis conține un identificator ce poarta numele de Session ID, pe baza căruia se poate face distincție intre sesiunea curenta și alte sesiuni ale altor utilizatori ce accesează site-ul în acel moment.

In cazul în care browserul utilizatorului nu accepta cookies-uri, identificatorul de sesiune va fi transmis printr-un parametru GET, în forma script.php?PHPSESSID=[session id] (se va face practic un redirect automat la aceeași pagina având specificat parametrul în URL). Este apoi responsabilitatea programatorului sa includă manual acest identificator în toate celelalte link-uri de pe pagina, asigurându-se ca toate paginile vor fi accesate cu acest parametru. Aceste situații sunt însa rare, iar în exemplele ce urmează vom considera ca browserele au mereu cookie-urile activate, astfel ca nu va trebui sa avem grija sa transmitem manual Session ID-ul.

In momentul în care se accesează din nou aceeași pagina, sau o alta din cadrul aceluiași site, identificatorul de sesiune este transmis de către browser (ca orice cookie existent în browser). Astfel, orice script PHP are acces la Session ID-ul creat inițial, fiind capabil sa acceseze sesiunea corecta. Mai este nevoie de ceva însa: pentru a putea avea acces la informațiile persistate, un script trebuie sa apeleze session_start. De aceasta data, existând deja un Session ID disponibil, PHP va ști ca nu trebuie creata o sesiune noua ci continuata una existenta. Așadar, session_start are doua funcționalități: sa pornească o sesiune noua (atunci când nu exista un Session ID) sau sa continue o sesiune existenta, identificata printr-un Session ID.

Funcțiile principale de manipulare a sesiunii sunt prezentate mai jos. Exista o funcție care returnează Session ID-ul curent: session_id. Aceasta este utila când este nevoie ca identificatorul sa fie transmis în URL. Alternativ se poate folosi constanta globala SID. De asemenea exista o funcție pe permite închiderea unei sesiuni pe parcursul execuției scriptului curent. Închiderea sesiunii înseamnă oprirea posibilității de a scrie/citi date, nu ștergerea datelor salvate deja. Datele rămân salvate și pot fi accesate din nou după apelarea funcției session_start.

Accesarea datelor

Din momentul în care scriptul PHP apelează session_start, acesta poate începe deja sa stocheze date ce vor fi persistate. în limbajul programatorilor de PHP se folosește expresia "sa păstreze date în sesiune" sau "pe sesiune". Aceste date sunt gestionate de către limbajul PHP (salvate, preluate, etc.) și nu este esențial pentru programator sa cunoască mecanismul intern de manipulare a acestora. Salvarea datelor pe sesiune se face prin intermediul vectorului super-global $_SESSION. Exista și o funcție ce permite înregistrarea datelor pe sesiune (nu și modificarea lor), dar folosirea acesteia nu este recomandata. Funcția se numește session_register și a fost marcata ca învechita în versiunea 5.3 a limbajului PHP. Citirea datelor persistate se poate realiza tot prin intermediul $_SESSION.

Scrierea și citirea datelor de sesiune se realizează practic la fel ca manipularea unui vector asociativ, ceea ce face aceasta funcționalitate ușor de folosit.

Mai jos este un exemplu de aplicație care transmite o informație de la o pagina la alta folosind sesiunile PHP. Sa construim doua fișiere a.php și b.php pentru a putea păstra textul de la o accesare la alta. în primul fișier stochez date pe sesiune, urmând ca acestea sa fie citite de pe sesiune în al doilea fișier. După accesarea paginii a.php ar trebui sa existe deja o sesiune creata ce are stocata variabila text. Scriptul din b.php va accesa aceasta sesiune, tot prin session_start și va citi datele înregistrate anterior.

III.4 Exploatarea bazelor de date MySQL prin intermediul limbajului PHP

Bazele de date sunt folosite pentru stocarea informațiilor în vederea furnizării ulterioare în funcție de solicitarea primită. MySQL este un sistem de baze de date funcțional independent. În PHP există funcții pentru toate operațiile executate asupra bazelor de date MySQL. Administrarea MySQL se poate face din linie de comandă sau folosind browser-ul și accesând aplicația numită PHPMyAdmin scrisă în PHP.

Administrarea MySQL – interfața vizuală

Pentru administrarea MySQL cu ajutorul browser-ului trebuie accesată adresa http://127.0.0.1/home/.

Din secțiunea Modules se accesează MySQL Administration.

În cadrul acestei interfețe se pot define baze de date, include tabele, prelucra date, exporta datele stocate în diferite formate (SQL, XML, PDF), define utilizatori, acorda privilegii pentru anumiți utilizatori.

Operațiile se pot face atât prin intermediul scripturilor sql cât și prin intermediul unui wizard care ghidează utilizatorul pentru a folosi instrumentele vizuale puse la dispoziție de către această interfață.

În continuare sunt prezentate principalele operații cu baze de date; vor fi prezentate atât scripturile sql cât și modul vizual de a realiza aceeași operații.

Operații cu baze de date

Cele mai uzuale operații cu bazele de date sunt:

În MySQL spațiul alocat pe discul serverului este funcție de tipul de date. Câteva din tipurile de date folosite în bazele de date MySQL sunt:

Pentru ca baza de date sa funcționeze mai bine coloanelor li s-au adăugat modificatori de coloana. Tipul de date întregi încep de la valori negative la pozitive. Daca se adăuga opțiunea UNSIGNED, care este un modificator de coloana, nu vor mai fi valori negative ci vor începe de la 0. Alți modificatori sunt:

AUTO_INCREMENT funcționează cu orice tip întreg. La fiecare rând nou adăugat în baza de date numărul asociat va fi incrementat.

NULL înseamnă fără valoare (diferit de spațiu sau zero).

NOT NULL înseamnă ca orice înregistrare va fi considerata ceva.

PRIMARY KEY este rolul primei coloane din tabel, totodată reprezentând elementul de referință pentru fiecare linie.

Crearea unei baze de date

Modul vizual

Accesează pagina de start pentru phpMyAdmin: http://127.0.0.1/phpMyAdmin/ (vezi figura de mai sus)

Selectați tab-ul Databases din partea stânga

Introduceți în câmpul “Create database” numele bazei de date și dați click pe butonul “Create”

În momentul în care baza de date a fost create, veți fi anunțați printr-un mesaj de atenționare; de asemenea în partea stânga, va apărea baza create alături de celelalte baze de date.

Script sql

CREATE DATABASE orar;

Conectarea la baza de date

De câte ori vom lucra cu MySQL va trebui să ne conectam la baza de date folosind o anume sintaxa. Vom salva aceasta secvența de cod intr-un fișier numele util.php, cu numele conectare() putând fi folosita ulterior în mai multe scripturi utilizând funcția include().

mysql_connect()este funcția prin care ne conectam la baza de date cu următorii parametrii: numele serverului, nume utilizator și parola pentru conectarea la baza de date.

Variabila $dbcnx va avea o valoarea TRUE sau FALSE funcție de rezultatul conectării la serverul MySQL folosind funcția mysql_connect(), iar în cazul eșuării va afișa mesajul conținut de construcția 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 $baza 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 funcția conectare() conform cu configurările propriei baze de date:

$hostname=adresa serverului, de cele mai multe ori este localhost dar pentru siguranța întrebați administratorul serverului

$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 sa închidem conexiunea folosind funcția mysql_close() având ca argument datele de acces la serverul MySQL.

În capitolul anterior am salvat intr-un fișier php numele utilizator și parola care poate părea un lucru riscant. Codul php este interpretat de server și doar rezultatul este afisat, deci datele conținute nu vor fi afișate în browser vizitatorului.

CREATE TABLE – Crearea tabelelor

Bazele de date conțin tabele. Aceste tabele sunt similare cu cele din HTML conținând rânduri și coloane. Fiecare diviziune se numește celula sau câmp și are anumite proprietăți. Fiecare tabel din baza de date are un nume sau titlu. Fiecare coloana din tabel are un nume sau titlu.

Sintaxa pentru crearea tabelului este:

Coloanele vor fi separate prin virgula iar fiecare coloana va avea un nume și tip.

Pentru a crea un tabel vom prezenta cele dou[ metode:

Modul vizual

Se selectează baza de date în care va f inclus tabelul

Se alege opțiunea de creare tabel (A)

Se introduce numele tabelului (B)

Se completeaza câmpurile pentru coloane (C)

Tipul coloanei (C0)

Există coloane speciale în care se poate specifica coloana primară (C1)

Valorile acesteia se pot incrementa automat – auto increment (C2)

După ce toate datele au fost completate se apasă butonul „Save” (D)

Dacă tabelul a fost creat cu succes, va apărea un mesaj de informare iar tabelul va apărea în partea stângă, alături de celelalte tabele din baza de date.

Script sql

Mai întâi includem în script, fișierul anterior util.php de conectare la baza de date, și apoi folosim funcția CREATE TABLE.

NOTA: în următoarele exemple nu voi mai menționa ca includ acest fișier dar se va subînțelege acest lucru de cate ori voi face o operație cu baza de date.

Funcția mysql_query() este folosită pentru interogarea unei baze de date. Folosește parametrii: cererea emisa serverului MySQL și identificatorul de acces la baza de date.

Exemplu:

Creăm tabelul disciplina cu 3 coloane. Prima coloana este id-disciplină de tip întreg PRIMARY KEY , a doua descriere de 50 caractere tip varchar iar a treia clasa de tip varchar (4). Înainte de a crea tabelul îl ștergem daca el exista deja.

Funcție de valoarea mysql_query este afisat succesul sau insuccesul creării tabelului.

INSERT – Introducere date

INSERT este comanda pentru introducerea datelor în baza de date. Cel mai frecvent mod de introducere a datelor este preluarea lor dintr-un formular adecvat structurii bazei de date.

Sintaxa pentru introducerea datelor în tabelul bazei de date este:

Pentru a exemplifica această operație vom defini un formular în care sunt introdusele datele pentru tabelul disciplina: descriere si clasa și apoi cu ajutorul unei funcții adauga-disciplina(descriere, clasa) din fișierul util.php vom introduce datele în baza de date.

Suplimentar vom prezenta și modul vizual prin care tabelul poate fi populat cu înregistrări.

Modul vizual

Se selecteaza tabelul care se doreste a fi populat (A);

Se alege optiunea ‚Insert’ (B);

In fereastra care apare se completeaza campurile inregistrari pentru tabelul curent (C);

Se apasa ‚Go’- pentru adaugarea informatiilor (D);

Pentru a vizualiza datele adaugate, precum si celelalte inrgistrari din tabel se apasa butonul „Browse” de pe pagina in care apare descrierea tabelului (E)

Script sql

În funcție de valoarea mysql_query este afisat un mesaj privind introducerea datelor în tabel. În tutorialul de PHP am discutat ca asociem un nume (name) fiecărui câmp din formular. La apăsarea butonului de trimitere datele sunt preluate de un script care poate identifica datele funcție de câmpul în care au fost introduse.

În exemplul oferit datele introduse în câmpul descriere din formular sunt preluate folosind variabila $_POST (pentru ca metoda folosita în formular a fost POST).

SELECT – Preluarea datelor

Proprietatea SELECT poate fi utilizata intr-o comanda mysql_query pentru a alege anumite informații din tabelul bazei de date.

Sintaxa pentru afișarea datelor unui tabel din baza de date este:

$sql=mysql_query("SELECT * FROM nume_tabel");

Pentru a afișa fiecare rând din tabel se folosește o bucla while și comanda mysql_fetch_row.

Pentru exemplificare vom prezenta modul in care putem vizualiza toate înregistrările dintr-un tabel (pentru modul vizual se apasa butonul „Browse” pentru fiecare tabel).

Datele au fost afișate fiecare intr-o celula a unui tabel.

Folosind funcția mysql_num_rows($sql) putem afla numărul de linii conținute de baza de date.

Astfel folosim același exemplu adugând opțiunea cu numărul de linii din tabel.

Exemplu: același exemplu plus numărul de linii al bazei de date

Instrucțiunea SELECT poate fi folosită alături de condiția WHERE pentru a permite căutarea în baza de date după o anumită înregistrare.

Condiționale

Condiționalele sunt operatori care ne permit sa particularizam interogarea bazei de date.

LIKE și NOT LIKE

Daca dorim sa facem o căutare mai generala în baza de date, introducând doar câteva caractere, putem folosi simbolurile LIKE sau NOT LIKE. Caracterul ‘_’ anunța ca rezultatul va conține încă un caracter în plus iar ‘%’ înlocuiește zero sau mai multe caractere. Acestea pot fi adăugate la început, la sfârșit sau în ambele părți.

De exemplu putem face o căutare generala folosind LIKE și caracterul % și la început și la sfârșit.

UPDATE

Putem modifica valoarea unei înregistrări din baza de date pentru un anume id cu următoarea sintaxa:

UPDATE nume_tabel SET coloana_1='$nou_coloana_1',  coloana_2='$nou_coloana_2',…,

coloana_n='$nou_coloana_n' WHERE id='$nou_id';

Cunoscând valoarea identificatorului id al unei înregistrări putem actualiza o înregistrare în baza de date, dar mai înainte trebuie sa afișam înregistrările pentru a selecta care se potrivesc solicitărilor noastre. Primul fișier va afișa sub forma unui formular fiecare înregistrare din baza de date. Câmpurile formularelor sunt completate cu valorile corespunzătoare fiecărei înregistrări, ele putând fi modificate.

Mai jos avem bucata de cod care preia datele modificate și le suprascrie în baza de date.

DELETE

Ștergerea poate fi făcuta folosind id-ul înregistrării dorite cu sintaxa:

DELETE FROM nume_tabel WHERE id='$id';

Fișierul va conține un formular prin care introducem datele care vor fi căutate în baza de date.

Rezultatul căutării se va afișa și într-un formular vom completa id-ul înregistrării care dorim s-o ștergem.

A 3-a secvență de cod preia id-ul dorit și șterge respective înregistrare.

Capitolul 4 Aplicații practice și metodice

IV.1 Considerații generale

Conform unui articol apărut în Teoria și Metodologia Instruirii, prof. univ. dr. Vasile Chiș afirma faptul că:

Scopul cel mai important al metodicii predării informaticii rămâne îmbunătățirea permanentă a modalităților de transmitere a cunoștințelor de informatică însă preocupările sale mai recente vizează și aspectele formative, urmărind participarea conștientă a elevilor la procesul de instruire și autoinstruire, la perfecționarea propriei lor personalități. Sistemul de cunoștințe de informatică trebuie să permită absolventului adaptarea rapidă la noi condiții tehnologice, asimilarea de cunoștințe noi prin efect propriu de autoinstruire.

Conținuturile de informatică sunt structurate ierarhic și coerent, în jurul unor informații cu caracter mai general, cu rol integrator, ce dă unitate sistemului de cunoștințe. Elevii care nu au fost obișnuiți să-și structureze cunoștințele într-un sistem se pierd în amănunte, nu remarcă liniile generale, fundamentale care se vehiculează în procesul de învățământ.

Prin folosirea ideilor ancoră (de legătură a cunoștințelor anterioare cu cele noi) prin revenirea asupra aspectelor esențiale, dar mai ales prin lecțiile de recapitulare, profesorul trebuie să evidențieze raporturile de subordonare și supraordonare dintre părțile conținutului, să accentueze asupra elementelor integratoare, ce vor fi adâncite pe parcursul multor etape ale procesului de învățare școlară.

În acest scop profesorul va analiza atent elementele de conținut ale capitolului, temei, lecției, le va structura logic, operând selecția necesară și reliefând ideile directoare și de sprijin; el va întocmi o schemă de recapitulare și un rezumat, esențializare ce permite asimilarea fundamentelor, cu care elevii să rămână pe o durată cât mai mare. Cunoștințele de informatică de bază vor intra astfel în zestrea lor de cunoștințe generale, care devenite operaționale, se pot considera un bun câștigat, ce marchează pozitiv personalitatea elevului și modul său de gândire.

Prin noțiunea sa, informatica implică un proces de învățământ în care cunoștințele trebuie să ofere, pe lângă înțelegerea problemelor abordate și posibilitatea utilizării practice a acestor cunoștințe, prin rezolvarea problemelor, dar și prin formarea abilităților și deprinderilor de utilizare a calculatorului și a capacității de investigare specifice acestui domeniu. Pentru obținerea acestui scop se impune reducerea pe cât posibil a formelor de comunicare orală și creșterea ponderii metodelor euristice, îmbinate cu activități practice și de rezolvări de probleme.

Tehnologiile comunicaționale contemporane și în primul rând cele computerizate, constituie prima și cea mai eficientă soluție de fluidizare a decalajelor din sistemul educațional.

Întrucât metodele utilizate în cadrul învățământului tradițional nu pot face față multitudinii de cunoștințe care devin tot mai specializate, în sprijinul educației intervin noile tehnologii informaționale – tehnologia informației și comunicațiilor.

Utilizarea calculatoarelor în procesul de instruire impune necesitatea stabilirii cât mai exacte a modului în care precizia operațiilor efectuate, capacitatea de a oferi reprezentări dinamice ale fenomenelor și faptul că pot interacționa diferențiat cu fiecare elev în parte, pot fi cât mai bine valorificate.

Ca știință a educației, pedagogia studiază fenomenul educațional în esența sa; abordând deopotrivă trăsăturile, scopul și sarcinile educației, conținutul, principiile, metodele și formele de desfășurare a procesului educațional în perspectivă axiologică, valorică, urmărind perfecționarea continuă a acestuia.

IV.2. Evaluarea – componentă a activității didactice

Evaluarea – modalitate de autoreglare a învățării

Evaluarea rezultatelor școlare constituie a componentă importantă a activității didactice, utilă atât pentru cel care conduce procesul, cât și pentru beneficiarii acestuia – elevii.

Scopul evaluării procesului de învățământ este măsurarea și aprecierea rezultatelor obținute de elevi în raport cu obiectivele adoptate, spre a interveni în timp util pentru ameliorarea activității.

Evaluarea prezintă următoarele laturi: constatarea, aprecierea, diagnoza și prognoza; prin evaluare se urmărește cunoașterea situației școlare, explicarea acesteia și prevederea măsurilor de optimizare.

Dacă, în sens mai larg, învățarea înseamnă adaptarea conștientă a individului la mediu, la condițiile lui schimbătoare, despre evaluare sau examinare se poate spune că fixează individul, în raport de cunoștințele sale, în coordonate socio-profesionale, pe o treaptă valorică cu legătură atât în grupul din care el face parte, cât și în propria sa conștiință, el neputând ignora părerea pe care ceilalți o au despre sine.

În perioada de formare a personalității, cum este școlarizarea, o poziție inconfortabilă a elevului în ierarhia clasei îl va determina să facă eforturi pentru a se depăși, evaluarea școlară având aici un rol stimulator. Chiar și elevul dintr-o poziție fruntașă va fi stimulat să reziste în această situație la care a ajuns cu eforturi.

Școala – care trebuie să formeze, prin instrucție și educație, o generație competentă, capabilă să stăpânească o tehnică tot mai complexă – trebuie să evite ca, printr-un sistem defectuos de evaluare, să imprime tinerilor în formare sentimentul de ratare, de inadaptabilitate, care apoi se fixează, ei intrând în viața socială cu un handicap de nedepășit.

Este foarte important pentru elev să fie apreciat corect, să i se răsplătească efortul și performanța; dar, dacă elevului bun i se pune cu ușurință o altă notă bună, se pare că celui cotat „slab”, în cazul unui răspuns bun i se mai pun o avalanșă de întrebări suplimentare, care nu-i mai permit accesul la nota maximă.

Tocmai un răspuns bun de la un elev mediocru trebuie încurajat; desigur, excesul de bunăvoință, exigența redusă, fac deservicii elevului care nu se mai mobilizează suficient, însă și exigența exagerată duce la dezinteres sau la învățarea de frică, cu rezultate mai puțin pozitive.

Necesitatea unei corecte evaluări a rezultatelor școlare este la fel de importantă ca însăși procesul de prezentare și asimilare a informației, ba pentru unii elevi chiar mai important. Unii profesori cu experiență pot afirma că „pe elev îl ai așa cum îl notezi”; într-adevăr, se pare că elevii slabi fac un efort redus deoarece au fost obișnuiți cu note mici și au note mici deoarece fac un efort redus, cercul vicios trebuie întrerupt cu ajutorul profesorului și al familiei.

Pentru a-și îndeplini mai eficient rolul de autoreglare a învățării, evaluarea rezultatelor școlare trebuie să urmeze aproape procesul de învățare, se impune deci generalizarea evaluării continue, formative, asociată cu întrebările curente, de la lecțiile ce folosesc metode active, modalități prin care, în orice moment, profesorul să poată aprecia gradul de adecvare a prezentării informațiilor la nivelul și posibilitățile de receptare ale elevilor, aceasta permițând din mers, adaptarea corespunzătoare, deci autoreglarea procesului de învățare.

Dar și elevul trebuie să cunoască bine criteriile de apreciere pentru a le aplica în procesul de autoapreciere care trebuie să însoțească nemijlocit efortul de învățare individuală, la pregătirea temelor acasă. În sprijinul acestui autocontrol, manualele conțin întrebări recapitulative și probleme de orientare a efortului de asimilare a cunoștințelor.

Se pune problema eficienței unor baremuri standard cu lista tip de cunoștințe și probleme, stabilită la nivel central, pe care elevul trebuie să le parcurgă la fiecare capitol și clasă.

Aceste bunuri ar ușura activitatea de evaluare a profesorilor începători, ar uniformiza nivelul cerințelor (la cota valorică convenabilă), dar nu ar permite o adaptare a învățării și evaluării la condițiile concrete ale clasei, nu ar permite să se încurajeze suficient progresul elevilor mediocri și ar plafona oarecum cerințele pentru elevii foarte buni.

Totuși, baremuri cu precizarea performanțelor minime admise ar fi utile, mai ales pentru școlile cu elevi mai puțin selecționați, unde rezultatele sunt mai puțin satisfăcătoare și această limită de admisibilitate ar avea efect stimulator. Desigur, chiar manualele, prin nivelul de dificultate al chestiunilor tratate și al problemelor propuse poate fi un indiciu al nivelului de calitate acceptabil, dar precizările suplimentare ar fi binevenite și pentru elevi, care ar putea să facă efortul necesar performanțelor superioare pragului, dar și profesorului, mai ales la stabilirea limitei de promovabilitate.

Funcțiile evaluării

Funcțiile pedagogice ale evaluării sunt puse în evidență de relațiile acesteia cu celelalte laturi ale procesului didactic, fiind percepute diferit din perspectiva elevului și din cea a profesorului.

Pentru elev, verificarea rezultatelor are următoarele funcții:

stimularea și susținerea efortului de învățare;

formarea încrederii în forțele proprii;

asigurarea continuității în asimilarea cunoștințelor;

dezvoltarea capacității de apreciere și de autoapreciere;

descoperirea unor aptitudini în vederea orientării profesionale;

posibilitatea de a interveni oportun în situații școlare nedorite.

iar pentru profesor funcțiile verificării sunt următoarele:

cunoașterea posibilităților inițiale ale elevilor spre a decide asupra gradului de prelucrare didactică a informației șu asupra nivelului de accesibilitate a elevilor în aprofundarea cunoștințelor;

cunoașterea proceselor în timpul derulării procesului didactic, pentru a-l adecva la condițiile concrete ale clasei;

cunoașterea rezultatelor finale, pentru proiectarea corectă a procesului în etapa următoare;

posibilitatea stabilirii raportului corect între cerințe și capacitățile elevilor;

posibilitatea explicării rezultatelor funcție de metodele, conținuturile, mijloacele folosite și de calitatea prestației didactice;

posibilitatea evaluării de către profesor a procesului didactic și a propriei activități, în vederea optimizării acestora.

Din perspectiva familiei și a societății, evaluarea are funcțiile:

de control al societății asupra calității învățământului;

de clasificare și selecție de ierarhizare a elevilor clasei, de promovare a etapelor școlare și de admitere în etapele superioare;

educativă, în spiritul muncii intelectuale și fizice și de reglare a conduitei sociale a elevilor;

didactică, de autoreglare a procesului de predare – învățare.

Strategii de evaluare

În calitate de profesori, cunoaștem o multitudine de strategii de evaluare. Prin procesul de evaluare ne pronunțăm asupra stării unui proces la un anumit moment, din perspectiva informațiilor pe care le culegem cu ajutorul unui instrument care ne permite să măsurăm în raport cu o anumită normă la care ne raportăm.

În sens larg, prin strategie se înțelege ansamblul de acțiuni întreprinse într-o organizație (militară, economică, educațională etc.) pentru atingerea obiectivelor stabilite pe termen lung sau mediu.

Strategia vizează asigurarea și pregătirea resurselor umane și materiale, probleme de planificare și organizare a muncii, de cooperare în cadrul organizației sau cu alte organizații etc., potrivit funcțiilor managementului modern, toate acestea având însă un caracter anticipativ, cu bătaie lungă, deci un pronunțat spirit de previziune.

Se poate asocia termenul de strategie, definit astfel, cu activitatea didactică în general și cu cea de evaluare, în particular. Activitatea didactică, indiferent de tipul și gradul (nivelul) instituției de învățământ, se desfășoară în conformitate cu anumite finalități, cunoscute sub denumirea de obiective pedagogice sau didactice.

Pentru atingerea lor, atât la nivelul instituției de învățământ, cât și la nivelul clasei, intră în joc resursele materiale (spații de învățământ, mobilier, materiale didactice, mijloace tehnice etc.) dar și cele umane (profesori, elevi, personal auxiliar etc.), au loc procese de planificare, organizare și dirijare, de control și evaluare, toate acestea, împreună, vizând atingerea obiectivelor pedagogice stabilite.

De priceperea utilizării resurselor și de capacitatea de conducere a procesului de învățământ (deci, de strategia didactică) depind, în ultimă instanță, performanțele școlare obținute de elevi.

Problema se pune asemănător și în cazul evaluării, o componentă principală a procesului de învățământ, alături de predare și învățare, deoarece atât profesorul, la nivelul clasei, cât și directorul, la nivelul școlii, sunt datori să-și stabilească din timp când și cum vor verifica dacă se află pe drumul cel bun, la capătul căruia obiectivele stabilite vor fi atinse și aceasta nu oricum, ci cu cheltuieli materiale, financiare, de timp și umane cât mai reduse.

Așadar, a stabili o strategie de evaluare în învățământ echivalează cu a fixa când evaluezi, sub ce formă, cu ce metode și mijloace, cum valorifici informațiile obținute etc. Desigur, în final, în funcție de concluziile desprinse, elevul își va modifica strategia de învățare, profesorul pe cea de predare iar directorul strategia managerială.

Strategia de evaluare denotă modul de integrare a acțiunii de evaluare (realizabilă prin operațiile de măsurare-apreciere-decizie) în structura de funcționare a activității didactice/ educative. Conceptul de strategie de evaluare reflectă tendința de extindere a acțiunilor evaluative: de la verificările tradiționale la evaluarea proceselor și condițiilor de desfășurare a activității didactice, a situațiilor de instruire/învățare.

Fiind un proces multidimensional, C. Cocoș identifică, în funcție de criteriile alese, mai multe strategii/tipuri de evaluare:

După domeniu:

Evaluarea în domeniul psihomotor (capacități, aptitudini, deprinderi);

Evaluarea în domeniul socio – afectiv (atitudini);

Evaluarea în domeniul cognitiv (cunoștințe);

După obiectul evaluării:

Evaluarea procesului de învățare (atât a achizițiilor, cât și a procesului în sine);

Evaluarea performanțelor (realizarea individual, în grup sau de către grup);

Evaluarea a ceea ce s-a învățat în școală sau a ceea ce s-a învățat în afara școlii.

După accentul pus pe proces sau pe sistem:

Evaluare de proces – se referă la performanțele elevilor;

Evaluarea de sistem – accentul se pune pe sistemul în care se desfășoară procesul (participanții la proces, instituții, organizarea sistemului).

După cine face evaluarea:

Autoevaluare (realizată de către cel care învață);

Evaluare internă (realizată de către aceeași persoană care realizează procesul de predare – învățare);

Evaluare externă (realizată de o persoană sau o instituție din afara procesului de predare – învățare).

După etapa în care se face evaluarea:

Evaluare inițială (realizată la începutul procesului de predare – învățare);

Evaluare continuă (realizată în timpul acestui proces);

Evaluare finală (realizată după o secvență de timp bine precizată – semestru, sfârșit sau început de ciclu școlar etc.).

După cum evaluarea certifică sau nu calitatea celui care este evaluat:

Evaluare sumativă – arătă nivelul la care a ajuns un anumit elev la un moment dat. este o judecată definitivă care certifică sau sancționează calitatea celui evaluat, care se produce „la termen”, fiind o evaluare finală și se bazează pe informații obținute în urma unui test, examen ori cumulând datele obținute în timpul evaluării continue;

Evaluare formativă – nu certifică o etapă, ci permite ameliorarea rezultatelor, revenirea asupra celor învățate pentru a le corecta și a facilita trecerea spre o altă etapă, este orientată spre un ajutor imediat și încearcă să coreleze caracteristicile elevului (inclusiv nevoile, interesele) cu caracteristicile conținuturilor de învățat. Se desfășoară cu regularitate și este utilizată în luarea deciziilor privind activitatea continuă.

După cum se apelează la o normă sau la un criteriu:

Evaluare normativă – apelează la o normă; furnizează poziția individului față de altul într-un grup (ex.: ce poate face să facă elevul X în comparație cu elevul Y în realizarea sarcinii date);

Evaluare criterială – apelează la un criteriu; se face judecând performanța unui individ în funcție de gradul de realizare a criteriului stabilit în funcție de obiective (ex.: ce a realizat X și Y din sarcina dată, față de „pragul de reușită”):

După perspectiva temporală din care se face:

Evaluare diagnostică (stabilește starea de fapt, identificându-se cauzele);

Evaluare prognostică (identifică potențialul subiectului raportat la viitor).

După caracterul standardizat al instrumentelor:

Evaluare formală – realizată prin instrumente standardizate asociate sau nu cu teste psihologice;

Evaluare informală – realizată prin instrumente nestandardizate, alternative, proiectate de către profesor.

După caracteristicile tehnice ale probelor:

Evaluare convergentă – probe care presupun răspunsuri multiple, închise, la alegere;

Evaluare divergentă – probe cu răspunsuri deschise, construite fără limite fixe.

După modul în care rezultatele pot fi sau nu măsurate:

Evaluare cantitativă – la care rezultatele sunt cuantificabile în funcție de un punctaj;

Evaluare calitativă – la care rezultatele nu pot fi măsurate prin cuantificare.

Tehnici și instrumente de evaluare

Tehnici:

Tehnica răspunsului scurt – se solicită din partea subiectului producerea unui răspuns și obiectivarea acestuia;

Tehnica alegerii duale – se solicită asocierea unuia sau mai multor enunțuri cu una din componentele unor alternative (da – nu, adevăr – fals, corect – greșit);

Tehnica perechilor – se solicită stabilirea unor corespondențe între cuvinte, fraze sau alte simboluri dispuse pe două coloane;

Tehnica alegerii multiple – solicită alegerea răspunsului corect dintr-o listă de răspunsuri posibile.

Instrumente:

Teste;

Probe orale;

Probe scrise;

Probe practice;

Grilele de evaluare/autoevaluare;

Scările/scalele de evaluare;

Chestionarul;

Referatul;

Proiectul.

Metode de evaluare

Numeroase discuții s-au purtat de-a lungul timpului și continuă să se poarte și astăzi în legătură cu gradul de obiectivitate și de precizie al metodelor de evaluare.

Sunt numeroase argumente „pro” și „contra” utilizării exclusive a uneia sau alteia dintre metodele cunoscute. În realitate, îmbinarea lor constituie soluția cea mai potrivită.

Metoda de evaluare orală

Este una dintre cele mai răspândite și se poate aplica individual sau pe grupe de elevi. Principalul avantaj al acestei metode îl constituie posibilitatea dialogului profesor-elev, în cadrul căruia profesorul își poate da seama nu doar „ce știe” elevul, ci și cum gândește el, cum se exprimă, cum face față unor situații problematice diferite de cele întâlnite pe parcursul instruirii. Cu prilejul examinării orale, profesorul îi poate cere elevului să-și motiveze răspunsul la o anumită întrebare și să-l argumenteze, după cum tot el îl poate ajuta cu întrebări suplimentare atunci când se află în impas.

Metoda are însă și unele dezavantaje: ea este mare consumatoare de timp, timp care, adesea, le lipsește profesorilor ale căror discipline sunt prevăzute în planul de învățământ cu un număr mic de ore, deci care au mai mulți elevi cărora trebuie – potrivit reglementărilor în vigoare – să le atribuie cel puțin trei note „în oral” pentru a li se încheia media semestrială.

Un alt dezavantaj este și acela referitor la dificultatea de a selecționa, pentru toți elevii examinați, întrebări cu același grad de dificultate. Pentru a elimina aceste dezavantaje se pot stabili anumite restricții cu privire la durata acestor examinări orale, în funcție de vârstă; întrebările vor fi stabilite din vreme pentru a fi cât mai uniforme, ca grad de dificultate, pentru întregul grup de elevi supus verificării, formularea lor făcându-se clar și precis, fără ambiguități.

Ca să-i fie mai ușor, profesorul poate avea în față, pe durata examinării, o fișă de evaluare orală.

Metoda de evaluare scrisă

Este utilizată sub diferite forme: extemporal, teză, test, chestionar, eseu, referat, temă executată acasă, portofoliu, proiect etc.

Prin această metodă se asigură uniformitatea subiectelor (ca întindere și ca dificultate îndeosebi) pentru elevii supuși evaluării, ca și posibilitatea de a examina un număr mai mare de elevi în aceeași unitate de timp.

Ea îi avantajează pe elevii emotivi și-i pune la adăpost pe profesorii tentați să evalueze preferențial prin metoda orală.

Ca și metoda de evaluare orală și cea scrisă are unele dezavantaje sau limite: la teste, de exemplu, elevii pot ghici răspunsurile la itemii cu alegere multiplă; la extemporale și teze se poate copia.

Indiferent de forma utilizată, în cazul probelor scrise este dificil de apreciat anumite răspunsuri, când acestea sunt formulate ambiguu, deoarece profesorul care corectează lucrarea nu-i poate cere lămuriri autorului.

În general, metoda de evaluare scrisă nu oferă aceleași posibilități de investigare a pregătirii elevilor (cunoștințe, deprinderi, abilități, capacități, competențe etc.) ca evaluarea orală. În realitate, combinarea celor două metode amplifică avantajele și diminuează dezavantajele, așa încât e preferabilă folosirea unui sistem de metode pentru a realiza o evaluare cât mai apropiată de adevăr.

Ca și în cazul evaluării orale, pentru evaluarea scrisă, este necesar să se stabilească unele criterii de apreciere.

La cerințele de conținut, ar trebui să se țină cont de volumul și corectitudinea cunoștințelor, de rigoarea demonstrațiilor (acolo unde este cazul).

Important este întotdeauna să nu se omită cunoștințele esențiale din materia supusă verificării (examinării).

Prezentarea conținutului să se facă sistematic și concis, într-un limbaj inteligibil (riguros din punct de vedere științific și corect din punct de vedere gramatical).

Forma lucrării presupune și o anumită organizare a conținutului (în funcție de specificul acestuia), unele sublinieri, realizarea unor scheme, tabele și grafice, pentru a pune în valoare unele idei principalele și a-i permite corectorului să urmărească, mai ușor, aceste idei. Când se recurge la citate, este necesar să se indice și sursa.

Metoda de evaluare practică

Le permite profesorilor să constate la ce nivel și-au format și dezvoltat elevii anumite deprinderi practice, capacitatea de „a face” (nu doar de „a ști”). și această metodă se realizează printr-o mare varietate de forme, în funcție de specificul obiectului de studiu de la probele susținute de elevi la educația fizică, unde există baremuri precise, la lucrările din laboratoare și ateliere unde elevii pot face dovada capacității de a utiliza cunoștințe asimilate prin diverse tehnici de lucru: montări și demontări, executări de piese sau lucrări, efectuarea unor experiențe etc.

Și, la această categorie de probe, evaluatorii trebuie să stabilească unele criterii, norme și/sau cerințe pedagogice, pentru că, de fapt, evaluarea din învățământ, prin oricare dintre metode s-ar realiza are, prin excelență, o valoare, o semnificație pedagogică. Aceste cerințe nu trebuie să difere de cele formulate pe parcursul instruirii, în schimb, ele trebuie să fie cunoscute și de elevi, împreună cu baremurile (standardele) de notare.

Evaluarea cu ajutorul calculatorului

Într-un articol publicat pe http://www.slideshare.net/ se specifică faptul că „Noile tehnologii ale informării și comunicării (N.T.I.C), cu largi aplicații în toate domeniile, au pătruns destul de greu și în învățământ.

Studii internaționale de profil menționează că aplicațiile N.T.I.C „au fost experimentate în toate etapele procesului educativ: motivare, diagnoză, prezentarea informațiilor, pregătire, memorare, rezolvare de probleme, verificare, notare”.

Învățământul asistat de calculator – marea „minune” a tehnicii actuale care zdruncină din temelii învățământul tradițional fundamentat de Comenius în celebra sa lucrare Didactica Magna, acum mai bine de trei secole – își propune obiective ambițioase, cum sunt: dezvoltarea raționamentului, imaginației și creativității, precum și a capacității de a emite o apreciere critică asupra rezultatului dialogului om – mașină.

Experții remarcă, pe bună dreptate, că „Informatica are un potențial educativ foarte mare față de ceea ce ar putea oferi alte tehnologii. Informatica permite adaptarea învățământului la cerințele fiecărui elev, la ritmul de muncă, la aptitudinile intelectuale și la nivelul său de cunoștințe, deci, diversificarea modalităților pedagogice și personalizarea învățământului”.

Deși metoda de evaluare cu ajutorul calculatorului este folosită, încă prea puțin, în școala românească de toate gradele, începuturile sunt promițătoare iar numărul adepților utilizării ei în evaluarea curentă și la examene crește.

Integrată procesului de instruire, evaluarea asistată de calculator ar trebui să capete o mai mare extindere în rezolvarea de probleme (mai dificile pentru elevi).

După unii specialiști, procesul de rezolvare a problemelor poate fi redus la următoarele operații: examinarea problemei model, prelucrarea modelului în vederea efectuării necesare și exprimării problemei în funcție de aceste condiții.

Acest proces permite studiul pe bază de experiență (diferit de cel static) care, asociat cu utilizarea materialului imprimat pe calculator, îi oferă elevului un mod interactiv de construire și asimilare a noilor cunoștințe, concomitent cu posibilitatea de a verifica dacă ceea ce a învățat este corect sau nu”.

Metode alternative de evaluare

Alte metode de evaluare a nivelului de pregătire al elevilor pe parcursul instruirii și la sfârșitul ei:

OBSERVAREA SISTEMATICĂ, (înțeleasă aici ca metodă de cunoaștere a elevului sub diverse aspecte) poate fi folosită și ca metodă de evaluare, cu condiția să respecte aceleași cerințe psihopedagogice, ca și în cazul unei cercetări (investigații) pe o temă dată:

să aibă obiective clare (exemplu: stimularea interesului elevilor pentru o anumită disciplină; ameliorarea rezultatelor școlare; creșterea caracterului aplicativ al predării și învățării);

să se efectueze sistematic, pe o perioada mai îndelungată (semestru sau an școlar);

să se înregistreze operativ, într-o fișă specială sau într-un caiet, rezultatele observării.

Obiectul observării îl constituie: activitatea elevilor, comportamentul lor, produsele unor activități realizate în conformitate cu cerințele programelor școlare sau combinație a lor.

Rezultatele observării vor fi comparate cu rezultatele la învățătură, în urma unor analize calitative și cantitative (matematice și statistice).

Observarea va fi folosită, mai ales, pentru sesizarea cât mai exactă a cauzelor care determină obținerea unor rezultate slabe la învățătură la anumiți elevi și oscilațiile (variațiile) prea mari în pregătirea altora, dar și pentru a evita erorile de apreciere prin atribuirea unor note (fie prea mari, fie prea mici) sub impresia momentului, a unor evaluări conjuncturale.

În mod deosebit, prin observarea sistematică a comportamentului și activității elevilor, se evită, atât supraestimarea unor elevi ca urmare a impresiei bune create despre ei, cât și subestimarea celor despre care există o impresie proastă.

În toate cazurile însă, valoarea observării depinde de rigoarea cu care este făcută și de competența evaluatorului.

REFERATUL (folosit ca bază de discuție în legătură cu o temă dată fiind menit să contribuie la formarea sau dezvoltarea deprinderilor de muncă independentă ale elevilor din clasele mari sau ale studenților), este și o posibilă probă de evaluare a gradului în care elevii sau studenții și-au însușit un anumit segment al programei, cum ar fi o temă sau o problemă mai complexă dintr-o temă.

El este întocmit fie pe baza unei bibliografii minimale, recomandate de profesor, fie pe baza unei investigații prealabile, în acest din urmă caz, referatul sintetizând rezultatele investigației, efectuate cu ajutorul unor metode specifice (observarea, convorbirea, ancheta etc.).

Când referatul se întocmește în urma studierii anumitor surse de informare, el trebuie să cuprindă atât opiniile autorilor studiați în problema analizată, cât și propriile opinii ale autorului.

Nu va fi considerat satisfăcător referatul care va rezuma sau va reproduce anumite lucrări studiate, cu speranța că profesorul, fie nu cunoaște sursele folosite de elev sau de student, fie nu sesizează plagiatul.

Referatul are, de regulă trei-patru pagini și este folosit doar ca element de portofoliu sau pentru acordarea unei note parțiale în cadrul evaluării efectuate pe parcursul instruirii.

Deoarece el se elaborează în afara școlii, elevul putând beneficia de sprijinul altor persoane, se recomandă susținerea referatului în cadrul clasei/grupei, prilej cu care autorului i se pot pune diverse întrebări din partea profesorului și a colegilor.

Răspunsurile la aceste întrebări sunt, de regulă, edificatoare în ceea ce privește contribuția autorului la elaborarea unui referat, mai ales când întrebările îl obligă la susținerea argumentată a unor idei și afirmații.

ESEUL, preluat din literatură (unde este folosit pentru a exprima liber și cât mai incitant, anumite opinii, sentimente și atitudini, referitoare la diverse aspecte ale vieții oamenilor, într-un număr de pagini cât mai mic), poate fi folosit și ca metodă de evaluare.

Problematica eseului în învățământ este foarte diversă putând fi abordată atât cu mijloace literare, cât și cu mijloace științifice, într-un spațiu care, de regulă, nu depășește două-trei pagini.

Rostul eseului, ca metodă de evaluare, este acela de a-i da elevului sau studentului posibilitatea de a se exprima liber, de a-și formula nestingherit opiniile față de un anumit subiect, neîncorsetat de anumite scheme livrești sau de prejudecăți.

El este o alternativă la testul grilă, bazat pe itemi stereotipi, cu alegere duală sau multiplă, care tind să monopolizeze evaluările sumative în ultimii ani.

Și eseul însă, ca și referatul, poate oferi informații limitate despre nivelul de pregătire al unui elev sau student, informațiile lui urmând a fi corelate cu informațiile obținute cu ajutorul altor metode de evaluare.

Oricum, eseul se bucură de o largă apreciere în rândul elevilor și studenților și, atunci când este bine folosit (ca moment și ca domeniu de aplicare), le oferă evaluatorilor informații foarte interesante, cel puțin în ceea ce privește capacitatea de gândire a elevilor (studenților), imaginația lor, spiritul critic, puterea de argumentare a unor idei personale și altele asemenea, ce nu pot fi „măsurate”, la fel de precis, cu alte metode de evaluare.

FIȘA DE EVALUARE este un formular de dimensiunea unei coli de hârtie A4 sau A5 (în funcție de numărul și complexitatea sarcinilor de îndeplinit), pe care sunt formulate diverse exerciții și probleme ce urmează a fi rezolvate de elevi în timpul lecției, de regulă după predarea de către profesor a unei secvențe de conținut și învățarea acesteia, în clasă, de către elevi.

În aceste condiții, fișa de evaluare se folosește, mai ales, pentru obținerea feedback-ului de către profesor, pe baza căruia el poate face precizări și completări, noi exemplificări etc., în legătură cu conținutul predat.

Nu este, deci, obligatoriu ca elevii să fie notați, fișa de evaluare având, în felul acesta, un pronunțat caracter de lucru, de optimizare a învățării, ceea ce o și deosebește de testul de evaluare care se folosește, prioritar, pentru aprecierea și notarea elevilor.

Fișa de evaluare mai poate fi folosită și pentru înregistrarea rezultatelor observării sistematice a comportamentului și activității elevilor, în această situație evaluarea având un rol sumativ.

CHESTIONARUL, folosit pe scară largă în anchetele de teren de către sociologi, precum și ca metodă de cercetare psihopedagogică, poate fi folosit și ca instrument de evaluare, mai ales atunci când profesorul dorește să obțină informații despre felul în care elevii percep disciplina predată sau stilul lui de predare și de evaluare.

Cu ajutorul chestionarului se pot obține informații despre opțiunile elevilor și atitudinea lor față de disciplină sau față de anumite probleme cuprinse în programă și manual, ceea ce înseamnă că, pe această cale, putem obține informații și despre nivelul lor de motivație la o anumită disciplină.

Nu este însă mai puțin adevărat că, prin intermediul chestionarului, se pot obține și informații referitoare la pregătirea elevilor (chestionarea putându-se face atât oral, cât și în scris), cu toate că, în practică, sunt preferate alte metode și instrumente ce permit obținerea unor informații mai relevante (testul, de exemplu, fiind bazate o mare varietate de itemi, asigură o apreciere mult mai riguroasă decât chestionarul).

Când dorește însă o informare operativă cu privire la stăpânirea de către elevi a unor probleme esențiale, dintr-o lecție, dintr-o temă sau dintr-un capitol, profesorul poate recurge la chestionar.

Pe baza răspunsurilor primite de la elevi, el poate face nu doar aprecieri privind gradul de însușire a unor cunoștințe, ci și precizări, completări, dezvoltări etc., care să conducă la o mai bună cunoaștere a unei anumite părți din materia parcursă.

INVESTIGAȚIA (în sensul de cercetare, descoperire) se folosește, de regulă, ca metodă de învățare, pentru a-i deprinde pe elevi să gândească și să acționeze independent, atât individual cât și în echipă.

La începutul semestrului, profesorul stabilește lista de teme pe care elevii urmează să le abordeze cu ajutorul investigației, perioada investigației, modul de lucru, de prezentare și de valorificare a rezultatelor.

Investigația se poate realiza individual sau colectiv.

Este de preferat ca rezultatele să fie analizate cu clasa de elevi, pentru ca profesorul să poată formula observații, aprecieri și concluzii.

Pe baza analizei activității elevilor și a rezultatelor obținute de ei în cadrul

investigației, profesorul poate acorda note, valorificând, în felul acesta, funcția evaluativă a investigației.

PROIECTUL are, de asemenea, un dublu rol: el poate fi folosit cu elevii din clasele mari de liceu și cu studenții pentru învățarea unor teme mai complexe, care se pretează la abordări pluridisciplinare, interdisciplinare și transdisciplinare sau ca metodă de evaluare (pe parcursul instruirii sale) sumativă. Cu ajutorul lui elevii/studenții, pot face dovada că au capacitatea de a investiga un subiect dat, cu metode și instrumente diferite, folosind cunoștințe din diverse domenii. Uneori, proiectul este folosit ca probă de evaluare la absolvirea unei școli profesionale, a unui liceu industrial sau cu profil artistic, precum și la absolvirea unei facultăți din domeniile tehnicii, artei, arhitecturii etc.

Ca și în cazul investigației, profesorul stabilește lista temelor de proiect, perioada de realizare și-i inițiază pe elevi sau pe studenți asupra etapelor și a tehnicilor de lucru (individual sau colectiv).

Elevii/studenții trebuie să fie orientați și îndrumați și (eventual) sprijiniți de profesor în colectarea datelor necesare (potrivit temei alese sau repartizate), iar pe parcursul realizării proiectului să beneficieze de consultații și de evaluări parțiale.

La aceste evaluări, ca și la evaluarea finală (când proiectul se prezintă sau se susține), profesorul operează cu anumite criterii, referitoare, atât la proces (documentarea, utilizarea datelor și a informațiilor în formularea concluziilor etc.),

cât și la produs (structura proiectului, concordanța dintre conținut și temă, capacitatea de analiză și sinteză, relevanța concluziilor, caracterul inedit al rezultatelor etc.). Aceste criterii se recomandă să fie cunoscute și de elevi/studenți.

PORTOFOLIUL, este o metodă de evaluare mai veche, folosită, îndeosebi, în învățământul primar, unde învățătorii le cereau elevilor să realizeze o seamă de lucrări, pe parcursul instruirii, care constituiau un fel de carte de vizită a lor. Aceste lucrări, cuprinzând compuneri, rezolvări de probleme, diverse produse executate la lucrul manual, ierbare, insectare, colecții minerale și altele asemenea, erau apreciate și notate, iar cele mai reușite erau prezentate în cadrul unor expoziții organizate la sfârșitul anului școlar.

„Descoperită” după anul 1989 și numită „portofoliu”, metoda s-a extins și la celelalte trepte de învățământ, dându-i-se un conținut mai precis.

Adrian Stoica o include între metodele „complementare” de evaluare, alături de observare, de investigație și de proiect, nici ele noi dar mai bine definite, evidențiindu-li-se valențele formative și apartenența la ceea ce autorul numește „evaluare autentică”, prin care înțelege „un concept relativ nou” ce „se referă la evaluarea performanțelor elevilor prin sarcini de lucru complexe”.

În această perspectivă, sunt incluse în portofoliu diverse rezultate ale activității desfășurate de elevi pe parcursul instruirii, înregistrate fie cu ajutorul metodelor considerate „tradiționale” (orale, scrise și practice), fie cu ajutorul celor numite „complementare” (observarea, proiectul, investigația).

Fără a minimaliza valoarea portofoliului și a celorlalte metode „complementare”, suntem de părere că oricare dintre metodele de evaluare (mai vechi sau mai noi, „tradiționale” sau „moderne”) trebuie utilizate de profesori și apreciate în raport cu „fidelitatea” lor, adică cu gradul în care ele reușesc să măsoare cât mai riguros ceea ce vrem să măsurăm, măsurarea fiind o caracteristică importantă a oricărei evaluări.

Ideea pentru care pledăm este aceea de a nu absolutiza nici o metodă de evaluare ci, așa cum menționăm într-un alt paragraf al lucrării, de a utiliza un sistem de metode, amplificându-le astfel avantajele și diminuându-le dezavantajele.

Să nu uităm că elementele portofoliului sunt lucrări executate de elev, de regulă, în cadrul activității independente din afara școlii, el putând beneficia de îndrumarea altor persoane sau prelua de la acestea lucrări gata făcute.

Așadar, și portofoliul va putea fi folosit ca o alternativă, alături de alte metode, conținutul său fiind precizat de evaluator, în funcție de specificul disciplinei de studiu, la începutul semestrului sau al anului de învățământ.

DISERTAȚIA este folosită sub această denumire sau sub denumirea de lucrare de absolvire, de licență sau de diplomă, la încheierea unei școli sau a unei facultăți.

Disertația este o lucrare științifică mai amplă, susținută public, în fața unei comisii de examen. Pe parcursul realizării, autorul (elev sau student) beneficiază de îndrumarea unui profesor, specialist în domeniul din care a fost aleasă tema lucrării. Ea se folosește și ca probă finală în obținerea titlului de doctor în științe sau, sub formă de discurs, la primirea în Academia Română.

Multe dintre ele, cum este cazul eseului, referatului, fișei de evaluare, chestionarului, proiectului și disertației/lucrării de diplomă, pot fi incluse în categoria metodelor de evaluare scrisă.

Itemi de evaluare

Tipuri de itemi

Itemi obiectivi

Caracteristici:

Testează un număr și o varietate mare de elemente de conținut, dar, de cele mai multe ori, capacități cognitive de nivel inferior

Fidelitate și validitate ridicate (sunt folosiți în teste standardizate)

Obiectivitate și aplicabilitate ridicate

Scheme de notare foarte simple

Timp scurt de răspuns și de corectare

Posibilitatea utilizării unui număr mare de astfel de itemi într-un test.

Dezavantaje:

elaborarea de distractori plauzibili și paraleli este dificilă

raționamentul prin care elevul ajunge la răspuns nu poate fi evidențiat (urmărit)

posibilitatea ghicirii răspunsurilor

familiarizarea elevilor cu această tehnică și deci obișnuirea cu un anumit tip de învățare

necesitatea explicațiilor la început.

Itemi cu alegere duală – solicită răspunsuri de tip DA / NU, adevărat / fals, acord / dezacord.

Itemi de tip pereche – solicită stabilirea de corespondențe / asociații între elemente așezate pe două coloane. Criteriul sau criteriile pe baza cărora se stabilește răspunsul corect sunt enunțate explicit în instrucțiunile care preced coloanele de premise și răspunsuri.

Itemi cu alegere multiplă – solicită alegerea unui răspuns corect / alternativă optimă dintr-o listă de soluții / alternative.

Itemi subobiectivi

Caracteristici:

Răspuns limitat ca spațiu, formă, conținut prin structura enunțului / întrebări

Sarcină foarte bine structurată: utilizează materiale auxiliare

Elevii trebuie să producă efectiv răspunsul

Libertate restrânsă de a reorganiza informația și de a formula răspunsul în forma dorită

Elevii trebuie să demonstreze, pe lângă cunoștințe și abilitatea de a structura cel mai corect și mai scurt răspuns

Ușurință și obiectivitate în notare.

Dezavantaje:

nu verifică realizarea unor capacități și competențe cu caracter foarte complex.

Itemi cu răspuns scurt – întrebare directă care solicită un răspuns scurt (expresie, cuvânt, număr, simbol, etc.)

Recomandări:

răspunsul să fie scurt

să nu existe dubii (ambiguități în formularea propozițiilor)

tipul de răspuns trebuie precizat în cazul unităților numerice

Itemi de completare — enunț incomplet care solicită completarea de spații libere cu 1-2 cuvinte care să se încadreze în contextul dat.

Recomandări:

spațiul liber nu va fi pus la începutul propoziției

dacă într-o frază există mai multe răspunsuri de completare ce trebuie găsite acestea trebuie să aibă aceeași lungime.

Întrebări structurate — mai multe subîntrebări (de tip obiectiv, semiobiectiv sau minieseu) legate printr-un element comun; modul de prezentare include:

Un material / stimul (texte, date, diagrame, grafice, etc.);

Subîntrebări;

Date suplimentare;

Alte subîntrebări.

Atenție: răspunsul la fiecare subîntrebare nu trebuie să fie dependent de răspunsul corect la subîntrebarea precedentă!

Itemi subiectivi

Caracteristici:

Forma tradițională de evaluare în România;

Ușor de construit;

Solicită răspunsuri deschise;

Evaluează procese cognitive de nivel înalt;

Verifică obiective care vizează creativitatea, originalitatea;

Dezavantaje:

Fidelitate și validitate scăzută;

Necesită scheme de notare complexe și greu de alcătuit;

Corectarea durează mult;

Rezolvarea de probleme (situații problemă) — activitate nouă, diferită de cele de învățare curente, menită să rezolve o situație problemă; se evaluează elemente de gândire convergentă și divergentă, operații mentale complexe (analiză, sinteză, evaluare, transfer, etc.).

Itemi de tip eseu — solicită elevilor să construiască / producă un răspuns liber (text) în conformitate cu un set de cerințe date. Acești itemi pot fi:

Eseu structurat / semistructurat – răspunsul așteptat este dirijat, orientat și ordonat cu ajutorul unor cerințe, indicii, sugestii; de exemplu: Compunere / eseu după un plan de idei.

Eseul liber (nestructurat) — valorifică gândirea creativă, originalitatea, creativitatea, nu impune cerințe de structură.

Algoritmul de evaluare a itemilor de evaluare

Se identifică scopul evaluării;

Se identifică obiectivele evaluării;

Se identifică etapa și tipul de evaluare adecvat acesteia, în funcție de obiectivele propuse;

Se identifică conținutul adecvat obiectivelor de evaluare și pe cine evaluăm;

Se selectează metoda, procedeul, tehnica și instrumentul de evaluare;

Se identifică normele sau criteriile de evaluare și „pragul de reușită”; pragul de reușită reprezintă ceea ce se consideră a fi nivelul minimal de reușită a unei sarcini date, fiind definit prin raport la un nivel de performanță determinat ca acceptabil, la care se consideră că elevul (cel evaluat) a atins un anumit obiectiv de conținut;

Se construiesc itemii sau probele.;

Se reanalizează obiectivele evaluării și se stabilește corelația dintre itemi, obiective și indicatori de performanță;

Se aplică probele (după ce ele au fost standardizate, în cazul acestei categorii de probe);

Se analizează rezultatele și se comunică celor în drept.

Reguli ale unei evaluări eficiente

1. Construirea unei imagini pozitive despre evaluare

Evaluarea nu trebuie asociată cu eșecul, sancțiunea sau controlul, ci cu posibilitatea de reflectare asupra rezultatelor, cu formarea unei imagini cât mai corecte despre sine, nu numai cu lipsurile pe care le are, dar mai ales cu calitățile pe care le poate valorifica și dezvolta de aici încolo. Orice profesor ar trebui să-și proiecteze evaluarea o dată cu proiectarea conținutului și să prezinte ce se așteaptă de la elevi, ce progrese vor trebui să facă: o probă care este precedată de prezentarea obiectivelor de evaluare se va dovedi mult mai eficientă decât una la care elevul nu știe la ce să se aștepte. Pentru profesor, evaluarea este un prim instrument ce îi conferă o imagine asupra acțiunii sale.

2. Nu trebuie utilizată evaluarea pentru alte scopuri decât cele pentru care este ea proiectată

Evaluarea de orice fel nu trebuie să pedepsească, ci să stimuleze pentru etapa următoare a învățării! Cel care învață trebuie să înțeleagă că evaluarea are scopul de a-l informa obiectiv asupra a ceea ce mai are de învățat.

Evaluarea trebuie proiectată cu scopul judecării stadiului de dezvoltare a achizițiilor individului, fiind o parte componentă a procesului de învățare, chiar dacă este realizată de altcineva decât cel care este implicat în procesul de predare – învățare.

Nu generalizați datele obținute în urma aplicării unei probe nestandardizate pentru că această generalizare poate produce multe erori de interpretare.

Aplicarea unei probe de evaluare trebuie să respecte regulile sale proprii și reguli generale de aplicare, care presupun obiectivitate prin uniformitatea aplicării probei.

Interpretarea rezultatelor trebuie înțeleasă ca o parte componentă obligatorie a evaluării, și ea se face, în funcție de tipul de evaluare, în fața celor evaluați, rezultatele trebuind să fie cât de repede posibil făcute publice în cazul unei evaluări cerute de o instituție.

Există o curbă a randamentului fiecărui elev care, în general, se poate stabili pentru anumite perioade. Nu este indicat să facem evaluări care se încheie cu notarea elevilor la începutul sau la sfârșitul unei săptămâni!

Nu este obligatoriu să facem notări pentru orice tip de evaluare și oricum putem folosi mai multe posibilități de apreciere a rezultatelor.

Reușita școlară în raport cu evaluarea

Faptul, că frecventarea cotidiană a școlii de către elevi nu este obligatorie, iar exigențele cadrelor didactice sunt mai mici decât în alte țări, se reflectă în scăderea nivelului rezultatelor la examene, mai ales ale celor ilustrând capacitățile de gândire ale elevilor.

„Malnutriția intelectuală”, cauzată și de conținutul programelor școlare, este ilustrată în special de rezultatele școlare nesatisfăcătoare obținute la disciplinele fundamentale.

În continuare sunt abordate patru aspecte ale noțiunii de reușită școlară, implicit ale sistemului de evaluare:

În prezent, această reușită depinde, în primul rând, de aptitudinile elevului de a se exprima operativ în scris, care, la rândul ei, este în funcție de capacitatea fiecăruia de memorizare a datelor. Examenul privilegiază, deci, această capacitate, punând accentul mai mult pe cunoștințe decât pe deprinderi, mai curând pe memorizare decât pe priceperea de a sesiza esența unei probleme, în sfârșit, mai mult pe exprimarea scrisă decât pe alte forme de comunicare.

Un alt aspect al reușitei școlare care trebuie avut în vedere și care este mai dificil de evaluat, fiind deci mai slab înregistrat la examene, îl constituie capacitatea elevului de a utiliza cunoștințele, de preferat aceleia de a le însuși, aptitudinea lui de a le folosi mai degrabă pe plan practic decât pe plan teoretic.

O a treia problemă este aceea a aptitudinilor personale și sociale: predispoziția elevului de a comunica cu alții, înclinația spre cooperare (în interesul colectivului și al său), spiritul de inițiativă, încrederea în sine, capacitatea de a lucra singur, fără supraveghere. Practic, asemenea calități nu intră în preocupările comisiilor de examen.

Un al patrulea aspect privește motivația elevului și autoangajarea, puterea de a accepta eșecul fără a-i dramatiza urmările, perseverența, convingerea că trebuie să învețe fără a se lăsa descurajat de dificultățile întâmpinate. Multor elevi intrați în școală fără motivație, profesorii au reușit să le cultive interesul pentru învățătură, ca o precondiție a reușitei școlare. În cazurile în care școala n-a acordat cuvenita importanță acestui aspect, celelalte trei au fost, în mod automat, neglijate.

Având în vedere că tinerii care sosesc pe piața muncii trebuie ca, pe lângă un nivel corespunzător de instruire școlară, să aibă o serie de calități în ceea ce privește comunicarea, creativitatea, autonomia și luarea deciziilor, specialiștii propun, printre altele, o reconsiderare a sistemului de evaluare în cadrul examenelor, în contextul unei reforme mai ample a învățământului.

IV.3 Disciplinele opționale – modalitate de lărgire a orizontului pentru elevi

Rolul disciplinelor opționale în învățământul preuniversitar

Curriculum-ul la decizia școlii dă școlii dreptul de a lua decizii și recunoaște puterea reală a acesteia. Derivată din libertatea – oferită de planurile cadru de învățământ – de a decide asupra unui segment al Curriculum-ului național, această putere dă libertatea de a defini unele trasee particulare ale învățării elevilor.

Tipurile de opționale existente în cadrul învățământului liceal sunt:

opțional de aprofundare – tip de CDȘ derivat dintr-o disciplină studiată în trunchiul comun, care urmărește aprofundarea obiectivelor de referință / competențelor specifice din curriculum-ul nucleu prin noi unități de conținut;

opțional de extindere – tip de CDȘ derivat dintr-o disciplină studiată în trunchiul comun, care urmărește extinderea obiectivelor de referință / competențelor specifice din curriculum-ul nucleu prin noi obiective de referință / competențe specifice și noi conținuturi;

opțional ca disciplină nouă – introduce noi obiecte de studiu / teme noi, care nu se regăsesc în programele naționale, în afara celor prevăzute în trunchiul comun pentru o anumită specializare sau un anume profil;

opțional integrat (la nivelul uneia sau mai multor arii curriculare) – introduce noi discipline ca obiecte de studiu, structurate în jurul unei teme integratoare pentru una sau mai multe arii curriculare;

opțional ca disciplină care apare în trunchiul comun la alte specializări – dispune de o programă elaborată la nivel central, ca programă obligatorie în cadrul unei specializări.

Aceste opționale sunt de un real folos profesorilor interesați de creșterea interesului elevilor pentru aprofundarea studiului informaticii. În funcție de propriile preocupări, cercetări, sau aptitudini în domeniul științei informatice, dascălul poate transforma un opțional într-o poartă deschisă atât spre utilizarea, cât și spre proiectarea softurilor, în special a celor didactice.

Pentru a reuși în acest demers, însă, profesorul trebuie să fie foarte atent la o serie de aspecte ale parcurgerii drumului unui opțional de la propunere pană la alegere și apoi desfășurarea lui pe parcursul unuia sau mai multor ani școlari:

tema aleasă – trebuie să stârnească interesul, să se muleze pe capacitățile intelectuale ale elevilor – dacă este vorba de un opțional ca disciplină nouă și să propună înțelegerea unor aspecte cărora programa le rezervă mai puțin timp – în cazul aprofundărilor sau extinderilor;

prezentarea temei – trebuie să răspundă preocupărilor și vârstei elevilor;

realizarea programei de opțional – în conformitate cu toate cerințele unui curriculum, astfel încât să obțină avizul inspectorilor școlari;

punerea în aplicare a programei, urmărind în principal atragerea elevilor către studiul aprofundat/extins al informaticii.

Un pas foarte important este realizarea programei de opțional într-o manieră cât mai apropiată de cerințele în vigoare.

Programa trebuie să cuprindă la clasele a IX-a și a X-a (ciclul inferior al liceului) următoarele: argument, obiective de referință, activități de învățare, listă de conținuturi, modalități de evaluare, bibliografie.

La clasele a XI-a și a XII-a (ciclul superior al liceului) și învățământ fără statut de obligativitate, programa trebuie să cuprindă: argument, competențe specifice, conținuturi (diferite în funcție de opțional), valori și atitudini, sugestii metodologice (activități de învățare și modalități de evaluare), bibliografie.

Opționalul reprezintă o formă fericită de optimizare și diversificare a procesului de predare a informaticii în școală, deoarece face apel la:cunoștințele și pasiunile profesorilor, hobby-urile elevilor, trezirea interesului pentru schimbările din societatea informatică, depășirea literei manualului și, implicit, a programei școlare obligatorii, consultarea democratică a elevilor și părinților, crearea unui sistem concurențial între profesorii din școală.

Activitatea de educație ar trebui să aibă ca finalitate și dotarea oricărui elev/utilizator cu îndemânările corespunzătoare, pentru a ști ce dorește, de unde să procure ceea ce dorește și ce să facă cu ceea ce a obținut, aceasta pentru a avea un permanent control asupra bombardamentului informațional. Fiecare va trebui să știe cum să achiziționeze, să păstreze și să manipuleze orice tip de informație care îi poate fi necesară.

Programa disciplinei opționale

Programarea paginilor web utilizând PHP și MySQL

Clasa: a XI-a și a XII-a

Profil: Matematică-informatică

Nr. de ore: 1h/săptămână

Tip: opțional ca disciplină nouă

Argument

În această eră a informației, Web-ul este tot mai prezent în viața oamenilor, începând chiar de la vârste mici. Prin intermediul său putem spune că “viața omului este publică”. Dacă în trecut web-ul era o “cunoscută” doar a administratorilor de site-uri, astăzi, datorită interactivității și interfeței și-a câștigat tot mai mult interes.

Pornind de la premisa că elevii din liceu, clasele de matematică-informatică, au cunoștințe de programare și au studiat limbajul HTML, am propus această disciplină opțională în scopul îndrumării elevilor în studierea limbajului de programare pentru server PHP și a sistemului de gestiune a bazelor de date MySQL oferindu-le astfel un punct de lansare spre crearea paginilor web dinamice.

Începută în decursul acestui an școlar (2013-2014) disciplina opțională va fi continuată în anul școlar următor. În acest sens am creat un tutorial de învățare pas cu pas a acestor noțiuni. Ca și modalitate de evaluare se va folosi aplicația „Generator de teste grilă”, urmând ca în final elevii să poată realiza singuri un astfel de program.

Cunoștințele dobândite la acest obiect pot fi în mod evident utilizate și la alte discipline/domenii unde elevii realizează proiecte (am realizat împreună cu elevii aplicații utile în secretariat, contabilitate, cabinet psihologic, bibliotecă, comisia de evaluare a calității, iar această aplicație „Generator de teste grila” dă posibilitatea evaluării elevilor la orice disciplină).

Competențe generale:

rularea și testarea de aplicații PHP pe calculatorul propriu și de a înțelege bazele comunicării http;

realizarea formularelor simple sau complexe, validarea și procesarea acestor formulare

prelucrarea datelor din fișiere;

folosirea MySQL din PHP pentru a extrage, introduce, actualiza, sau șterge informații

folosirea în detaliu a sesiunilor și a conceptului cookies, și aplicarea pentru realizarea unui sistem de login sau alte scopuri practice

realizarea în mod eficient de aplicații web de nivel mediu/avansat.

1. Rularea și testarea de aplicații PHP pe calculatorul propriu și aprofundarea bazelor comunicării http;

2. Realizarea formularelor simple sau complexe, validarea și procesarea acestor formulare

3. Prelucrarea datelor din fișiere;

4. Folosirea MySQL din PHP pentru a extrage, introduce, actualiza, sau șterge informații

5. Folosirea în detaliu a sesiunilor și a conceptului cookies, și aplicarea pentru realizarea unui sistem de login sau alte scopuri practice

6. Realizarea în mod eficient de aplicații web de nivel mediu/avansat.

Modalități de evaluare

La predarea acestei discipline se va folosi în special metoda învățării prin descoperire. Principalele metode de evaluare din cadrul acestui curs opțional sunt:

Lucrările practice: elevii sunt evaluați în funcție de modul în care rezolvă la calculator problemele sau sarcinile de lucru primite.

Chestionarea orală: este folosită în special pentru a evalua modul de asimilare a cunoștințelor teoretice de către elevi.

Lucrările (scrise) de control: au o pondere mică în evaluare, dar sunt necesare pentru a evalua modul în care elevii pot rezolva o problemă de informatică în absența calculatorului și a asimilării cunoștințelor teoretice.

Proiectul: este folosit, după cum aminteam anterior, în cazul elevilor care realizează programe vaste, cu aplicabilitate în diferite domenii.

Bibliografie pentru programa cursului opțional:

Steven Holyner – Inițiere în PHP5, Editura Teora 2005

Traian Anghel – Programare în PHP, Ghid practice, Editura Polirom 2005

Traian Anghel – Programare web pentru liceu, Editura Polirom 2008

LICEUL TEHNOLOGIC CAJVANA

Profesor: Crăciun Pîțu Marius

Disciplina: Crearea paginilor web utilizând PHP/MySQL

Anul școlar: 2013 – 2014

Clasa: a XI-a și XII-a Matematică-Informatică

Nr.ore: 36h (1h x 36 săpt.)

PLANIFICARE CALENDARISTICA

An școlar 2013 – 2014

Competente generale:

Rularea și testarea de aplicații PHP pe calculatorul propriu și de a înțelege bazele comunicării http;

Realizarea formularelor simple sau complexe, validarea și procesarea acestor formulare

Prelucrarea datelor din fișiere;

Folosirea în detaliu a sesiunilor și a conceptului cookies, și aplicarea pentru realizarea unui sistem de login sau alte scopuri practice

Folosirea MySQL din PHP pentru a extrage, introduce, actualiza, sau șterge informații

Realizarea în mod eficient de aplicații web de nivel mediu/avansat.

UNITATEA DE ÎNVĂȚARE: LIMBAJE CLIENT-SERVER

NR. ORE:4

UNITATEA DE ÎNVĂȚARE: LIMBAJUL PHP

NR. ORE:32

UNITATEA DE ÎNVĂȚARE: MYSQL. INTERACȚIUNEA MYSQL-PHP. REALIZAREA DE APLICAȚII UTILIZÂND PHP ȘI MYSQL

NR. ORE:35

Capitolul 5 Concluzii metodologice

Bibliografie

Ghid de realizare a lucrării metodico-științifice pentru obținerea gradului didactic I, de la asachi, cuza????

Stinson, B.M., & Claus, K. (2000). The effects of electronic classrooms on learning English composition: A middle ground between traditional instruction and computer based instruction. T.H.E. Journal, 27(7), 98-100, 102.

Jen Kramer, Teaching web design to new students in higher education, 2013. Online: http://www.smashingmagazine.com/2013/08/05/teaching-web-design-to-new-students/

Dillner, M. (2001, July/August). Using media flexibly to compose and communicate. Reading Online, 5(1). Available: http://www.readingonline.org/articles/art_index.asp?HREF=/articles/dillner/index.html

Maya B. Eagleton (2009). The Benefits and Challenges of a Student-Designed School Website

Adrian Modrisan, Programarea paginilor web folosind limbajul php, lucrare de grad, Brasov, 2009

http://cis01.ucv.ro/iac/suport_curs.php

http://www.aptana.com/

http://ciobanu.cich.md/ (site didactic)

www.w3schools.com (cel mai popular tutorial pentru tehnologii web)

www.marplo.net (Cursuri gratuite online)

www.drogoreanu.ro (Tutoriale de html, php, css, mysql)

www.tutoriale.far-php.ro (Tutoriale WEB)

www.tutorialehtml.com (Tutoriale HTML)

www.htmlcodetutorial.com (Tutoriale si forum despre HTML)

www.seap.usv.ro/~valeriul (Cursuri HTML, PHP, MySQL)

www.profs.info.uaic.ro/~val/htmlearn.html (HTML-manual on-line)

www.php.com (Pagina oficiala a grupului de lucru pentru dezvoltarea limbajului PHP)

http://php.punctsivirgula.ro/ (Ghid de PHP rapid pentru începători)

http://www.php5-tutorial.com/ (Tutorial complet de php5)

http://www.phpmyadmin.net/home_page/index.php (Documentatie php, mysql, html)

Bibliografie

Ghid de realizare a lucrării metodico-științifice pentru obținerea gradului didactic I, de la asachi, cuza????

Stinson, B.M., & Claus, K. (2000). The effects of electronic classrooms on learning English composition: A middle ground between traditional instruction and computer based instruction. T.H.E. Journal, 27(7), 98-100, 102.

Jen Kramer, Teaching web design to new students in higher education, 2013. Online: http://www.smashingmagazine.com/2013/08/05/teaching-web-design-to-new-students/

Dillner, M. (2001, July/August). Using media flexibly to compose and communicate. Reading Online, 5(1). Available: http://www.readingonline.org/articles/art_index.asp?HREF=/articles/dillner/index.html

Maya B. Eagleton (2009). The Benefits and Challenges of a Student-Designed School Website

Adrian Modrisan, Programarea paginilor web folosind limbajul php, lucrare de grad, Brasov, 2009

http://cis01.ucv.ro/iac/suport_curs.php

http://www.aptana.com/

http://ciobanu.cich.md/ (site didactic)

www.w3schools.com (cel mai popular tutorial pentru tehnologii web)

www.marplo.net (Cursuri gratuite online)

www.drogoreanu.ro (Tutoriale de html, php, css, mysql)

www.tutoriale.far-php.ro (Tutoriale WEB)

www.tutorialehtml.com (Tutoriale HTML)

www.htmlcodetutorial.com (Tutoriale si forum despre HTML)

www.seap.usv.ro/~valeriul (Cursuri HTML, PHP, MySQL)

www.profs.info.uaic.ro/~val/htmlearn.html (HTML-manual on-line)

www.php.com (Pagina oficiala a grupului de lucru pentru dezvoltarea limbajului PHP)

http://php.punctsivirgula.ro/ (Ghid de PHP rapid pentru începători)

http://www.php5-tutorial.com/ (Tutorial complet de php5)

http://www.phpmyadmin.net/home_page/index.php (Documentatie php, mysql, html)

Similar Posts