Documente Academic
Documente Profesional
Documente Cultură
fiecarei instructiuni se foloseste operatorul * $punct si virgula% .peratorul * $punct si virgula% reprezinta finalizarea unei instructiuni si este esential in programare. 3ara a"l folosi programul nu functioneaza.
.peratorii matematici se folosesc intre doi operanzi* Iata e#emple de folosire a fiecaruia dintre acestia+ 5a < 5b 6 :* 5a < 5b " 5c* 5a < > - 5c* 5a < >7F* .peratorul matematic modulo $8% este folosit pentru preluarea restului unei impartiri a doua numere intregi " de e#emplu+ I8= < : $deoarece restul imaprtirii lui I la = este :% :J8> < J $deoarece restul impartirii lui :J la > este J%* 5a < 5a8>* .peratorii de incrementare si decrementare+ 66 si "" * Se folosesc pentru incrementarea unei valori cu o unitate sau decrementarea cu unu* 9#emple+ 5a < K* 5a66* In e#emplul de mai sus valoarea lui 5a devine :J*
.ridinea efectuarii operatiilor este cea cunoscuta din matematica.In cazul de mai sus, deoarece am folosit parantezele, se vor efectua intai adunarile iar apoi impartirea la F* ,n rezultat poate fi stocat in aceeasi zona de memorie cu care se face si operatia* Iata e#emplul de mai jos de inmultire+ ?@php 5a<K* 5b<I* 5a<5a75b* print 5a* @A Baloarea rezultatului operatiei de multiplicare dintre valoarea zonei de memorie 5a si cea a zonei de memorie 5b a fost stocata tot in zona 5a* entru a inlocui instructiunea de inmultire de mai sus se poate folosi unul dintre operatorii de autooperare+ 5a<5a75b este echivalent cu 5a7<5b 5a<5a"5b este echivalent cu 5a"<5b 5a<5a65b este echivalent cu 5a6<5b 5a<5a-5b este echivalent cu 5a-<5b Acesta este modul de utilizare a operatorilor de auto"operare*
P elseO -- aici se e#ecuta instructiunile daca conditia este falsa P In cazul structurii de control if"else blocul de instructiuni else poate lipsi cu totul in cazul in care nu trebuie sa se e#ecute nimic daca conditia este falsa. In aceasta situatie sinta#a devine+ if$conditie%O --instructiuni care se e#ecuta daca conditia este adevarata P 0e asemenea atat in cazul if cat si in cazul else pot lipsi acoladele in cazul in care nu este necesar sa se e#ecute decat o singura instructiune* Iata e#emplele de folosire sau nu a acoladelor+ if$conditie% print "conditia este valida"* if$conditie% Oprint "conditia este valida ?br -A"* print "deci se e#ecuta cele doua instructiuni daca sunt incadrate de acolade"*P Se observa faptul ca in primul e#emplu am putut omite folosirea acoladelor, deoarece nu e#ecutam decat o singura instructiune* In cel de"al doilea e#emplu pentru ca foloseam doua instructiuni $deci mai mult de una% acestea trebuie sa fie incadrate de acolade*
case >+ print "&ai"* brea1* case H+ print "Iunie"* brea1* case I+ print "Iulie"* brea1* case L+ print "August"* brea1* case K+ print "Septembrie"* brea1* case :J+ print ".ctombrie"* brea1* case ::+ print "Noiembrie"* brea1* case :=+ print "0ecembrie"* brea1* default+ print "Nu e#ista decat := luniEEE"* brea1* P In cazul de mai sus, pentru ca valoarea zonei de memorie var este F se va afisa "&artie"* 5var<:>* switch$5var%O case :+ print "Ianuarie"* brea1* case =+ print "3ebruarie"* brea1* case F+ print "&artie"* brea1* case G+ print "Aprilie"* brea1* case >+ print "&ai"* brea1* case H+ print "Iunie"* brea1* case I+ print "Iulie"* brea1* case L+ print "August"* brea1* case K+ print "Septembrie"* brea1* case :J+ print ".ctombrie"* brea1* case ::+ print "Noiembrie"* brea1* case :=+ print "0ecembrie"* brea1* default+ print "Nu e#ista decat := luniEEE"* brea1* P 0aca insa variabila are valoare :> ca in e#emplul de mai sus, pentru ca nu e#ista niciun caz aferent valorii :> se va e#ecuta default, adica se va afisa+ "Nu e#ista decat := luniEEE"*
G. daca conditia este falsa se iese din ciclu si se trece la urmatoarele dintructiuni de dupa acesta daca e#ista* 0e fiecare data cand cream un astfel de ciclu trebuie sa ne asiguram ca la un moment dat conditia nu va mai fi valida si ciclul se va incheia* ,n e#emplu practic de folosire al structurii while ar fi+ 5var<G* while$5varAJ%O print 5var* 5var""* P Acest ciclu se va opri in momentul in care 5 var va retine valoarez J* &a asigur ca se va intampla acest lucru prin folosirea operatorului de decrementare ""* ractic acest ciclu afisaza GF=:, adica valoare variabilei 5var in timpul fiecarei ciclari*
entru a face structura do"while sa functioneza in acelas fel ca while nu este necesar decat sa adaugam o conditie inainte instructiunilor* Acest lucru se poate face folosind structura de control decizionala if* if $conditie% doO -- aici se e#ecuta instructiunile* Pwhile$conditie%* ractic sinta#a de mai sus este identica in raport de e#ecutie cu+ while$conditie%O -- aici se e#ecuta instructiunile* P 0e retinut este faptul ca do"while e#ecuta cu un ciclu mai mult decat while*
care utilizatorul poate introduce un anumit tip de data prin pagina web pe care este atasat formularul* 9#emple de componente pentru introducerea de date sunt+ butonul lista de selectie chec1bo# radio button te#tfield te#tarea butonul submit password field
. sa incepem prin crearea unui formular simplu de logare* resupunem ca aplicatia noastra web identifica utilizatorii prin user si parola+ entru dezvoltarea acestui formular vom avea nevoie de trei componente+ un textfiel", un pass-or"fiel" si un buton de tip su.mit* .rice formular are rolul de a colecta informatie pe care o trimite catre o alta pagina a aplicatiei pentru a fi procesata. rin urmare avem nevoie de o pagina a aplicatiei care sa colecteze informatia $cea care contine formularul% si o alta care sa proceseze aceasta informatie $cea catre care se trimite informatia%* /rimiterea informatiei se poate face prin doua metode+ GE2 sau POS2* entru inceput voi e#plica dezvoltarea unui astfel de formular care foloseste metoda Q9/ fara a e#plica modul de functionare a metodei. 0upa ce vom intelegem modul in care datele sunt transferate de la o pagina la alta voi trata in paralel cele doua metode Q9/ si .S/* /ag"urile de deschidere si de inchidere a formularului sunt ?formA si ?-formA
submit reset image In e#emplul anterior am folosit primele doua tipuri enumerate $te#t si password% si tipul submit* 8name8 este un identificator " un nume dat de programator acelei compoente* Numele este folosit mai apoi pentru accesarea informatiei, el devenind numele zonei de memorie din pagina in care se trimite informatia cu ajutorul careia se pot accesa datele trimise* 8value8 este folosit pentru a da o valoare in prealabil acelei componente* In general acest atribut nu este folosit decat pentru tipurile button, reset si submit, in acest caz, value fiind atributul care descrie te#tul care apare pe buton* /ipul "te#t" descrie o componenta te#tfield $in care se pot introduce siruri de caractere%, tipul "password" este asemanator tipului te#t cu observatia ca acesta ascunde caracterele. /ipul "submit" estefoarte important. Il vom adauga la fiecare formular si descrie un buton la apasarea caruia se e#ecuta o instructiune submit $de trimitere a datelor%* In cazul e#emplului de mai sus butonul de login este de tip submit pentru ca la apasarea lui datele sunt trimise catre pagina sepecificata prin atributul "action " al tagului ?form -A*
numele zonelor de memorie in care au fost stocate aceste valori este+ 5;metodaRMnume"componentaMS In cazul nostru variabilele in care s"au stocat valorile din formular sunt+ 5;Q9/RMuserMS 5;Q9/RMpassMS 5;Q9/RMsubmitMS Incercam sa facem urmatorul e#ercitiu+ <aca s,au trimis "ate prin formular verificam daca userul este laurentiu, daca parola este parola si in cazul in care acestea sunt introduse astfel se afisaza mesajul "Sunteti logat" altfel se afisaza mesajul ",ser sau parola gresite"* Cum facem acest lucru. Intram in pagina catre care am trimis datele $in cazul e#emplului dat este chiar aceeasi pagina cu formularul insa nu este obligatoriu sa se intample asta de fiecare data%* Nu uitam sa scriem operatorii de deschidere si de inchidere script 6=p p si =70 Intre acestia doi putem incepe scrierea instructiunilor+
:. 0aca s"a apasat pe submit " if:isset:>?GE2@Asu.mitAB;; =. 0aca userul este laurentiu si parola este parola " if :>?GE2@AuserAB CC 8laurentiu8
DD >?GE2@ApassAB CC 8parola8; F. Afisaza "Sunteti logat" " print 8Sunteti lo5at80 G. altfel afisaza ",ser sau parola gresite"* " else print 8Eser sau parola 5resite80