» Daca sunteti incepator in programare, va recomandam cateva materiale interesante legate de acest subiect.Iata cateva link-uri utile:Programarea si utilizarea calculatoarelor:http://www.referat.ro/get_referat.htm/972Tipuri de limbaje de programarehttp://www.referat.ro/get_referat.htm/2308(la adresele de mai sus veti face download de pe pagina indicata; sunt fisiere Word, arhivate cu zip)Un limbaj de programare este un sistem de conventii adoptate pentru realizarea unei comunicari �ntre programator si calculator.PHP este un limbaj de programare. Alte exemple de care probabil ati auzit sunt: BASIC, Fortran, Pascal, C, C++, Visual Basic, Java etc. Articolul de mai sus face o clasificare a limbajelor dupa mai multe criterii.Un limbajul de programare am putea sa-l comparam cu o limba straina. Ca orice limbaj vom avea elemente de sintaxa, elemente de punctuatie, cuvinte speciale (numite "rezervate") , moduri de intocmire a propozitiilor si frazelor etc.O notiune de care veti auzi foarte des este aceea de "variabila". O variabila are rolul de a retine o valoare. Variabila are un rol esential in programare. Variabilele sunt definite printr-un nume alfanumeric, cum ar fi: a, b, c, a2, b32, nume, articol3 etc. Exista si variabile cu aceeasi valoare pe tot timpul aplicatiei (numite constante).Mai jos vom prezenta cateva notiuni utile. Atragem atentia ca mai jos nu folosim notatii din php, ci la modul general. (fiecare limbaj are notatiile lui specifice, de exemplu in php fiecare nume de variabila incepe cu simbolul : , y, etc.).Foarte simplificat, un limbaj de programare cuprinde:1) instructiuni de definire si lucru cu variable
Exemple:var a = 5; defineste variabila a ca avand valoarea 5;b = a + 3; se atribuie variabilei b, valoarea variabilei a marita cu 3, deci b va avea valoarea 82) instructiuni pentru tratarea diferitelor cazuri necesare (liniare, alternative, repetitive)Exemple:2.1)- instructiuni liniare sunt cele de atribuire, calcul de expresii, afisare date ("print" sau "echo" in php), citire date ("input") etc.2.2)- instructiuni alternative: "if", "case"if (conditie)then {executa set instructiuni 1}else {executa set instructiuni 2}Aceste instructiuni trateaza cazurile cand in functie de o anumita conditie trebuie sa executam anumite instructiuni."case" este o instructiune "if" in care se pot specifica mai multe conditii simultan.2.3)-instructiuni repetitive: "for", "while", "repeat".2.3.1)for i = 1 to 5 step 1{ executa set instructiuni }Aceasta instructiune face ca un proces sa se repete de 5 ori, iar i este o variabila care numara de cate ori au fostexecutate instructiunile respective. Acest proces se mai numeste si "iteratie".2.3.2)Un alt mod de proces repetitiv este cel de tip "while" (adica atat timp cat o conditie este indeplinita, se va executa ceva).a = 1while ( a < = 5 ){ executa instructiuni;a = a + 1;} Observati instructiunea de gen: a = a + 1 (care matematic nu are sens). In informatica, aceata inseamna ca variabila a vacapata valoarea pe care o avea inainte de aceasta operatie marita cu o unitate. In unele limbaje (ca C, PHP) aceasainstructiune se mai scrie: $$a++ sau $$a-- (in cazul a = a - 1).2.3.2)Instruciunea de tip "repeat" are forma "repeta anumite instructiuni pana cand o conditie este indeplinita).a = 1;repeat{ executa instructiuni;a= a + 1} until a = 5Veti observa ca limbajul PHP are notatiile lui specifice si ca vom regasi instructiuni pentru procesele de mai sus. In plus vom avea si alte elemente de lucru specifice.
Sesiuni in PHP
» In mod normal, o variabila locala declarata intr-o pagina.php este valabila doar in acea pagina, daca nu intervenim intr-un fel pentru a o transfera si pe alte pagini unde avem nevoie de ea.Modalitatile de pastrare a informatiilor pe tot parcursul aplicatiei sunt:- variabile globale- sesiuni- cookies- transferul variabilelor locale prin forme sau in header-ul unei alte paginiCe este o sesiune?O sesiune reprezinta una din caile de a pastra datele de lucru ale unei aplicatii atunci cand se face transferul de la o pagina la alta.PHP foloseste in mod nativ sesiuni, asa cum fac si limbajele ASP si ColdFusion. Lucrul cu sesiuni nu este complicat.Fiecare sesiune trebuie declarata la inceputul paginii, cu ajutorul functiei:start_session();Aceasta functie face ca PHP sa inregistreze un identificator unic al sesiunii (ID), iar acel identificator este trimis utilizatorului printr-un cookie. Totodata, pe server se creaza un fisier care va retine valorile variabilelor folosite in aceasta sesiune. Fisierul are numele la fel cu identificatorul ID al sesiunii.Apoi trebuie declarata variabila (sau variabilele) cu care lucram in cadrul acestei sesiuni. Pot fi create oricate variabile.session_register('sesiunea_mea');Variabila poate fi o variabila simpla sau un tablou (array).Exemplu: = �Lucian�; // variabila simpla sau$$sesiunea_mea[�id�] = 1; // cazul unui array$$sesiunea_mea[�nume_utilizator�] = �Lucian�;$$sesiunea_mea[�adresa�] = �Str.Florilor nr.14�; // etc. Variabilele definite in acest mod pot fi folosite pe toate paginile unei aplicatii, definite pe un domeniu dat, atat timp cat cookie alocat acelei sesiuni este activ (nu expira). Folosirea sesiunilor este o cale mult mai usoara de lucru decat sa transferam variabilele de la pagina la pagina.In php.ini pot fi setate diferite valori pentru parametri legati de sesiune cum ar fi (dupa semnul egal am pus valorile implicite) :session.cookie_path = �/�;session.cookie_domain = ��;session.cookie_lifetime = �0�; // valoarea 0 inseamna ca cookie pentru sesiune e valabila pana cand browserul se va inchide.session.name = �PHPSESSID�; ;si altele.Exista posibilitatea ca un utilizator sa nu accepte setarea de cookies pe computerul sau. In acest caz, pentru identificarea unei sesiuni se poate folosi identificatorul acesteia. Putem adauga acest identificator in stringul care apleaza o pagina:Click catre pagina meaUn identificator PHPSESSID arata ca o insirurire aleatoare de caractere alfanumerice:PHPSESSID = 02993ab99sac988da9753330af72201Daca PHP este compilat cu optiunea enable-trans-id, atunci identificatorul sesiunii este adaugat automat la fiecare pagina. Iata un exemplu de definire al unei sesiuni:session_start();session_register(�variabila_mea�);$$variabila_mea = �Aceasta este cursul online de PHP�;?>$$variabila_mea va putea fi folosita apoi pe toate paginile aplicatiei respective.Observatie importanta:Variabilele definite in sesiuni pot fi folosite intr-o pagina doar dupa ce a fost executata comada session_start();Aceasta comanda ii spune PHP-ului sa verifice daca exista o sesiune si atunci sa foloseasca variabilele acelei sesiuni ca variabile globale.Functiile session_start(), ca si setcookie() trebuie folosite intotdeauna chiar la inceputul fisierului. Daca se trimite altceva catre browser inainte de folosirea lor atunci vor exista erori la folosirea sesiunii sau a cookie-urilor.
Primii pasi in MySQ
» LMySQL reprezinta un sistem de gestionare a bazelor de date, bazat pe tehnologia SQL.O baza de date este o colectie structurata de date. (Exemple: o lista a numelor elevilor dintr-o clasa, o lista a melodiilor preferate, eventual asezata pe genuri de muzica, o colectie de localitati si coduri postale etc.)Pentru a adauga, accesa sau prelucra datele dintr-o baza de date de pe computer, aveti nevoie de un sistem de gestiune a bazelor de date, asa cum este MySQL server.SQL provine din denumirea "Structured Query Language" (limbaj de interogare structurat). Acest limbaj ajuta la manipularea datelor dintr-o baza de date. .MySQL este totodata un sistem relational de gestionare a bazelor de date. Aceasta inseamna ca o baza de date stocheaza datele in mai multe tabele separate, mai degraba decat sa stocheze toate datele in acelasi loc (in aceeasi tabela).Legatura intre datele din tabele se face prin diferiti identificatori comuni.Mai multe informatii gasiti in manualul SQL de pe pagina http://www.mysql.com/doc/en,loc de unde am preluat si explicat notiunile de mai sus. .==========Aceasta lectie presupune ca ati instalat deja PHPTriad, ori alta aplicatie care sa va instaleze PHP, MySQL si un server de web (in general, Apache).Pentru a incepe lucrul cu MySQL, ar fi de mentionat urmatorii pasi simpli. Presupunem ca sunteti in Windows. (pentru Linux se dau comenzile de mai jos in modul comanda, in directorul in care s-a instalat mysql).Deschideti o fereastra de comanda tip DOS din Start -> Programs -> Accesories -> Command Prompt (Win 95, 98) sau Start ->Programs -> Accesories -> Command Prompt (2000, XP).1. Se merge in directorul :>c:apachemysqlbin(cu comanda >dir puteti vedea in ce director sunteti; apoi cu comanda >cd.. puteti avansa in directorul superior, panaajungeti in c: si apoi folositi comanda >cd c:apachemysqlbin)2. Se da comanda: (atentie, are doar litera 'd' in plus fata de urmatoarea comanda)mysqld(pentru Win2000 sau XP, folosit mysqld-nt).Acesta comanda porneste server-ul de MySQL.3. Conectare la baza de date implicita:mysqlObservatie: Conectarea la o baza de date se face pe baza unui nume de utilizator, care implicit este ODBC@localhost (localhost reprezinta adresa server-ului local de MySQL). Daca nu merge comanda simpla mysql, atunci folositi:mysql -u root(root este numele de utilizator al administratorului bazei de date) Dupa aceasta comanda suntem conectati la server-ul de MySQL si veti primi un mesaj de bun venit. Acum putem da comenzi.4. MySQL vine cu o baza de date numita "test" preinstalata. La sfarsitul fiecarei comenzi trebuie pus punct si virgula,comanda 'use' totusi functioneaza si fara ;):use test;Prin aceasta comanda am deschis baza de date test.5. Nu exista nici o tabela aici, putem verific, cu comanda:show tables;6. Cream o tabela cu un singur camp, 'nume' de 30 de caractere:create table persoana( nume varchar(30) );7. Introducem niste date (prima este eronata intentionat):insert into persoana values('Dandriel'),('Lucian');8. Modificam toate inregistrarile din tabela "nume" care contin numele 'dandriel':update persoana set nume='Daniel' where nume='Dandriel';9. Stergem inregistrarea cu numele Daniel:delete from persoana where nume='Daniel';sau stergem tot deodata: (atentie cu aceasta cand faceti ceva serios!!! faceti intai o copie de siguranta!)delete from persoana;10. Cand terminam, putem da comanda q ca sa iesim de pe server-ul de MySQL. Apoi putem inchide Server-ul de MySQL (fiind totin directorul c:apachemysqlbin):mysqladmin shutdown(sau mysqladmin -u root shutdown).* * *Un alt mod de a lucra cu server-ul de MySQL este printr-o aplicatie vizuala cu care va puteti conecta la server-ul de MySQL, cum ar fi aplicatia MySQLFront pe care am prezentat-o odata cu instalarea PHPTriad.Dupa ce ati instalat MySQLFront, creati o noua conexiune (File - Connect) in MySQL Front. Va apare o fereastra care are ca parametri:hostname/IP: localhost User: rootPassword: (initial nu e nici o parola setata)Port: 3306 Timeout 30 sec.Database(s) - necompletat (se va conecta la baza de date "test" implicitaOdata ce v-ati conectat la server-ul de MySQL, puteti da comenzile de mai sus in mod vizual, prin optiunile pe care le oferaMySQl Front. (Exemplu: la meniul Tools aveti : Create Database, Create Table etc.)Pe parcurs va puteti crea propriile dvs. baze de date (databases), la care se vor conecta diferiti utilizatori. Adaugarea de utlizatori se poate face in MySQL Front la meniul Tools-User Manager.Va dorim succes!