Elaborarea Paginii Web Pentru O Firma Taxi cu Posibilitati de Accesare Si Folosire a Serviciilor Prestate
CUPRINSul
INTRODUCERE………………………………………………………………………………………………………………………4
1. NOȚIUNI TEORETICE……………..…………………………………………..……………………6
1.1. Prezentarea tehnologiilor World Wide Web ……………………………………………………………………6
1.2. Arhitectura Client – Server………………………..……………………………..…………………………7
1.2.1. Noțiuni generale………………….……………..……………………………………………..7
1.2.2. Arhitectura two-tier……………………………………………………….…………….10
1.2.3. Arhitectura trhee-tier …………………………….……………….……………………………..10
1.3. Concepția de bază de date ……………………………………….……………………………….11
1.3.1. Definirea sistemului de gestiune a bazelor de date………….……………………………11
1.3.2. Etapele de realizare a bazelor de date…………………………….………………………11
1.3.3. Obiectivele unui sistem de gestiune a bazelor de date………….…………………………12 1.3.4. Clasificarea sistemelor de gestiune a bazelor de date…………….………………………13
1.3.5. Bazele de date relaționale……………………………………….…………………………13 1.3.5.1. 13 Reguli ale lui Codd……………………..…………..……………………….14 1.3.6. Structura relațională a datelor. Atribute și domenii………………………………………………….16
1.3.7. Relații și scheme…………………………………………………………………………………………………17
1.3.8. Chei. Tipuri de chei…………………………………………………………………………………………….17
1.3.8.1. Noțiune de supercheie și cheie primară…………………………………………………….18
2. DESCRIEREA MIJLOACELOR INSTRUMENTALE……………………………………………………………21
2.1. Limbajul HTML………………………………………………………………………………………………………….21
2.1.1. Prezentare a limbajului HTML…………………………………………………………………………….22
2.2. CSS – Cascading Style Sheets……………………………………………………………………………………..23
2.2.1. Noțiuni generale…………………………………………………………………………………………………23
2.3. Flash 5.0……………………………………………………………………………………………………………………26 2.3.1. Modul de plasare a animațiilor pe paginile Web……………………………………………………26
2.4. PHP –Hypertext Preposesor…………………………………………………………………………………………27
2.4.1. Noțiuni generale………………………………………………………………………………………………..27
2.4.2. Sintaxa și gramatica limbajului PHP……………………………………………………………………28
2.5. Sistemele de gestiune a bazelor de date MySQL…………………………………………………………….34
2.5.1. Noțiuni generale………………………………………………………………………………………………..34
2.5.2. Sintaxa limbajului SQL………………………………………………………………………………………35
2.5.3. Comenzile limbajului SQL…………………………………………………………………………………35
2.5.3.1. Operatori SQL………………………………………………………………………………………37
3. DESCRIEREA SISTEMULUI REALIZAT……………………………………………………………………………38
3.1. Argumentarea necesității elaborării proiectului……………………………………………………………….38
3.2. Funcțiile sistemului realizat………………………………………………………………………………………….38
3.3. Descrierea paginii Web: Taxi – service………………………………………………………………………….38
3.4. Descrierea programului administrator……………………………………………………………………………40
4. PARTEA ECONOMICĂ……………………………………………………………………………………………………43
4.1. Noțiuni generale………………………………………………………………………………………………………….43
4.2. Elaborarea grafului rețea………………………………………………………………………………………..44
4.3. Calculul costului de producție a proiectului……………………………………………………51
4.4. Calculul cheltuielilor pentru elaborarea proiectului…….………………………………………52
4.5. Analiza eficacității economice…. ……………………………………………………………….53
4.6. Concluzii……………………………………………………………………………………………………………………53
5. PROTECȚIA MUNCII …………………………………………………..……………………………….55
5.1. Introducere………………………………………………..……………………………………………….55
5.2. Analiza și aprecierea condițiilor de muncă……………….……………………………………….55 5.3. Factorii dăunători și periculoși la locul de muncă………………………………………….……………..56
5.4. Etapele de realizare a analizei unui sistem de securizare a muncii……………………………………..58
5.5. Cerințele securității tehnice în timpul de lucru…………………….………………………………..58
5.6. Activitatea persoanelor oficiale………………..………………………………………………………..59
5.7. Descrierea condițiilor de muncă la întreprindere……………………………………………………………..59
5.8. Cerințele securității tehnice în timpul de lucru………………………………………………………………..59
5.8.1. Aprecierea pericolului la monitor…………………………………………………………………………60
5.9. Securitatea electrică…………………………………………………………………………………………………….62
5.9.1. Acțiunea curentului electric asupra organismului uman………………………………………….62
5.9.2. Calculul protecției ”legarea la pământ”…………………………………………………………………64
5.10. Rezolvarea problemei………………………………………………………………………………………………..65
5.11. Acordarea primului ajutor medical persoanei electrocutate…………………………………………….66
5.12. Măsurile antiincendiare………………………………………………………………………………………………67
5.13. Concluzii………………………………………………………………………………………………………………….68
Concluzii……………….……………………………………………………………………………………..69
Bibliografie…………………………………………………………………………………………………….70
Anexa 1 (Codul sursă a paginii Web)……………………………………….……………………………………..71
Anexa 2 (Meniul prinicipal Al paginii Web taxi-service) …………..………………………………………….90
Anexa 3 (Arhitectura client-server)……………..……….……………………………………………………..91
Anexa 4 (Structura administrativă a firmei taxi-service)……………. ………………………………………..92
Anexa 5 (Schema bloc a programului)……………………………………………………………………………………….93
BIBLIOGRAFIE
Ștefănescu A., Stanciu V. Sisteme de gestionare a bazelor de date. – București.: Editura ALL, 1994.
Pasu Corina, Pasu Andrei. Totul despre…SQL. Interogarea bazelor de date. – București.: Editura Tehnică, 1992.
Cotelea Vitalie. Baze de date relaționale: proiectare logică. – Chișinău.: Editura ASEM, 1997.
Pilat Florin, Răceanu Mădălina, Stanciu Carmen. World Wide Web – Mosaic și Netscape. – București.: Editura Tehnică, 1996.
Cristea Valentin, Pietroșanu Monica, Petculescu Cristian. Mai multe despre Internet. Eudora. Netscape. Internet în România. – București.: Editura Teora, 1995.
Bardere W. World Wide Web, Global Tour Guide. – NEW READERS PRESS, 1996.
Jamșa Kris, Lalani Suleiman, Weakley Steve. Programarea în Web. – București.: Editura Teora, 1998.
Kris Jamșa, Ken Cope. Programarea Aplicațiilor Internet. – București.: Editura Teora, 1998.
Teach Yourself SQL in 21 Days, Second Edition, Sams Publishing, 1997.
http://www.php.net.
http://www.phpclub.dp.ua/.
http://www. google.com.
http://www.grafic – design – tools. com/Images Styler.html.
Балабанов И. Т. Основы финансового менеджмента. – Москва.: Финансы и статистика, 1995.
Беклетова В. К. Техника – экономическое обоснование дипломных проектов. – Москва.: Вышая Школа, 1991.
Павлов С. П., Губонина З. И. Охрана труда. – Москва.: Вышая Школа, 1996.
=== CONCLUZII ===
CONCLUZII
Rezultatele obținute în urma implementării programelor soft sunt de nivel mediu, și totuși, asigură un aport eficient în folosul firmei.
Pagina Web este elaborată cu scopul de a aduce la cunoștința utilizatorilor întreaga informația referitoare la serviciile propuse de firma în cauză prin intermediul Internet-ului, iar programul administrator este utilizat doar de operatorii firmei, este ceva aparte și este folosită la găsirea rapidă și eficientă a informațiilor existente, sortarea lor, îmbunătățirea controlului asupra informațiilor parvenite și ieșite, etc.
Pagina Web a firmei în cauză, a fost elaborată în conformitate cu cerințele clienților și posibilitățile (serviciile) firmei. Design-ul a fost conceput conform datelor avute de la firmă, iar în calitate de suport de gestiune a datelor am folosit sistemul de gestiune al bazelor de date MySQL. Este o pagină dinamică, realizată utilizând limbajul de programare PHP.
Programul administrator (BD) este realizat în mediul de programare Microsoft Access. Majoritatea bazelor de date sunt elaborate (din punct de vedere constructiv), în baza limbajului SQL. Astfel și Microsoft Access utilizează limbajul SQL, iar modul de creare a tabelelor, interogărilor, formularelor este cu diferit.
Totul ce a fost elaborat este doar un început și constituie doar o mică parte din întreaga întreprindere, care pe viitor aceasta oferta va crește și se va dezvolta în continuare cu pași și mai rapizi.
Acesta este prima structură a paginii Web oficiale. Majoritatea paginilor Web existente în prezent, sunt elaborate de un grup de programatori sau deja sunt firme care se ocupă de aceasta.
În Moldova, în prezent, nu există pe Internet pagini Web oficiale dedicate serviciilor-taxi. Aceasta poate fi considerată în viitor ca fiind prima.
În concluzie, s-ar putea spune că, astăzi orice lucrare, publicație, invenție, etc., sunt căile de acces spre o dezvoltare mai consistentă a societății și a lumii întregi.
=== PARTEA_ECONOMICA ===
4. Partea economică
4.1. Noțiuni generale
Organizarea și petrecerea optimă a Lucrărilor Experimentale și de Producere (LEP) permite ridicarea calității și eficienței producției. În acest capitol vom prezenta partea organizatorică a lucrărilor petrecute și aprecierea lor economică.
Lucrarea de diplomă conține nuanțe atât de lucrări de cercetări științifice cît și de lucrări de producere experimentală.
Lucrările Experimentale și de Producere conține următoarele etape generale:
elaborarea și concordarea sarcinii tehnice;
colectarea și studierea materialelor referitor la tema dată;
elaborarea sarcinii tehnice;
calculul cheltuielilor pentru Lucrarea Experimentală și de Producere;
design-ul sarcinii tehnice;
argumentarea economică;
elaborarea antiproiectului;
elaborarea principiilor de rezolvare a sarcinii;
elaborarea structurilor principale;
elaborarea și testarea modelelor posibile;
documentarea proiectului;
elaborarea proiectului tehnic;
elaborarea modelului algoritmului;
controlul tehnologic;
argumentarea proiectului tehnic.
Elaborarea documentației pe algoritmul experimental:
elaborarea documentației textuale;
calculul cheltuielilor pe materiale.
În LEP a lucrării de diplomă prezentate am inclus etapele:
Elaborarea și coordonarea sarcinii tehnice (etapa de pregătire).
Etapa de cercetări.
Etapa de elaborare.
Etapa de elaborare a documentației pe algoritmul elaborat (etapa finală).
În general efectuarea lucrărilor de cercetare științifică include următoarele etape:
Lucrările pregătitoare. La aceasta etapă se face cunoștință cu direcțiile și natura lucrărilor de cercetare științifică, studierea experienței anterioare în domeniile corespunzătoare de cercetarea și motivarea tehnico-economică preventivă. Etapa se încheie cu întărirea sarcinii tehnice.
Prelucrarea teoretică a temei. Aici se efectuează alegerea și motivarea direcției alese de cercetare și metodele de rezolvare a problemelor formulate, elaborarea ipotezelor de lucru, calculele teoretice, elaborarea metodicii cercetărilor experimentale.
Faza experimentală. La etapa dată se efectuează proiectarea, implementarea, depanarea și montarea machetei. Etapa se finalizează cu efectuarea experimentelor, prelucrarea datelor obținute și verificarea lor cu rezultatele cercetărilor teoretice.
Faza perfecționării teoretice. La această etapă se realizează un șir de lucrări ce țin de corectarea părții teoretice în conformitate cu rezultatele obținute din experiență.
Faza finală. Etapa se caracterizează prin generalizarea rezultatelor cercetărilor efectuate, se elaborează darea de seamă pentru lucrarea de cercetare științifică, se determină eficacitatea reală a ei. Etapa se finalizează cu acordarea și întărirea rezultatelor cercetării la consiliul tehnico-științific.
Pentru cercetarea unor probleme complicate se utilizează o metodă complexă, care se bazează pe analiza în complex a proceselor și scopurilor din problema pusă. Metoda mai presupune și elaborarea unui scop, necesită determinări a fluxului de intrare și ieșire a informației, introducerea criteriilor de optimizare. Mai ales sunt importante metodele de modelare, care permit studierea proceselor complexe într-un regim de analiză preliminară. Una din aceste metode este metoda planificării și conducerii în rețea.
Există o metodă relativ nouă, care permite analiza tuturor factorilor, ce influențează asupra termenilor de executare a lucrărilor, determină scopul final și legăturile dintre lucrări – graful planului în rețea. Graful planului în rețea reprezintă un model dinamic informativ, care reflectă legăturile și rezultatele tuturor operațiilor necesare pentru atingerea scopului final al elaborării. Graful planului în rețea ne răspunde la următoarele întrebări:
ce trebuie să facem;
cît timp e necesar;
cine să execute;
care e dependența lucrărilor efectuate acum și aici de cele efectuate atunci și acolo.
Graful de rețea se construiește, folosind următoarele elemente de bază:
Lucrul – procesul sau acțiunea, care trebuie să fie îndeplinită pentru atingerea unui scop. Lucrările au nevoie de un anumit timp. Lucrul poate fi de caracter real (însăși procesul de muncă ) și de caracter fictiv (legătura logică între lucrări).
Evenimentul – înregistrează momentul săvârșirii lucrului.
Drumul rețelei – orice consecutivitate a lucrărilor în care evenimentul final al unei lucrări coincide cu evenimentul inițial al lucrării următoare.
Documentul de bază în sistemul de planificare și gestiune rețea este graful-rețea (modelul rețea), care prezintă modelul informațional-dinamic, în care sunt prezentate legăturile și rezultatele tuturor lucrărilor, necesare pentru atingerea scopului final.
4.2. Elaborarea grafului rețea
Tabelul 4.1
Graful rețea
Următoarea etapă este determinarea componenței grupei de executanți și împărțirea lor pe lucrări.
Duratele lucrărilor, ocuparea fiecărui executant pe lucrarea dată, luând în considerație că ziua de lucru durează 8 ore și împărțirea executanților după lucrări sânt prezentate în tabelul 4.2.
Tabelul 4.2
Timpul de lucru a executanților
În fig. 4.1 este prezentată schema reprezentării grafice a grafului-rețea, iar în fig. 4.2 este prezentat graful final a proiectului.
:
Fig. 4.1 Structura grafului-rețea.
unde:
cercul – un eveniment; săgeata – o lucrare;
tij – durata lucrului ij; Rlij – rezerva liberă de timp a lucrului ij;
Rdij – rezerva deplină de timp a lucrului ij;
Tdi –timpul devreme de începere a evenimentului i;
Tti – timpul târziu de terminare a evenimentului i;
Ri – rezerva liberă de timp a evenimentului i;
Ni – numărul evenimentului i;
Tdj – timpul devreme de începere a evenimentului j;
Ttj – timpul târziu de terminare a evenimentului j;
Rj – rezerva liberă de timp a evenimentului j;
Nj – numărul evenimentului j.
Parametrii calculați ai grafului rețea sunt prezentați în tabelul 4.3.
Tabelul 4.3
Calculele parametrilor grafului rețea
Fig. 4.2. Graful rețea
Fig 4.2 Continuarea grafului rețea
4.3. Calculul costului de producție a proiectului
Din graful-rețea vedem că proiectul durează 29 de zile. Executanții, care vor îndeplini lucrarea, codul fiecăruia și salariul este prezentat în tabelul 4.6
Tabelul 4.4
Costul materialelor utilizate
Pentru studierea domeniilor noi a fost procurată literatură în sumă de 390 lei.
Tabelul 4.5
Costul softului și hard-ului procurat
Tabelul 4.6
Componența grupului de lucru
Salariul auxiliar reprezintă 12% din salariul de bază sau total.
Defalcări în Fondul Social de asigurare sunt calculate ca 28% din suma salariului de bază și salariului auxiliar sau suplimentar.
În tabelul 4.7 este reprezentat salariul auxiliar a fiecărui executant și defalcările în Fondul Social.
Tabelul 4.7
Defalcările în fondul social
Deoarece procurarea softului și hard-ului în domeniul Tehnologiilor Informaționale este considerată investiție capitală, v-om amortiza aceste cheltuieli în timp de 2 ani fiindcă aceste produse sânt supuse uzurii morale rapide:
[S / (A 365)] Z,
unde: S – suma ce trebuie de amortizat; A – perioada de amortizare în ani;
Z – perioada proiectului în zile.
[14 800 / (2 365) ] 29 = 587,9 lei.
Să calculăm cheltuielile de energie electrică. Calculatorul personal obișnuit are o putere de
200 W. Pe parcursul proiectului, timp de 29 de zile, ținând cont că ziua de muncă are durata
8 ore vor fi consumate:
200 29 8 = 46 400 W = 46,4 kW h.
La momentul actual un kWh costă 0,68 lei, deci cheltuielile vor fi:
46,4 0,68 = 31,55 lei.
Mărimea cheltuielilor de regie constituie 120-200% din salariul de bază și cel suplimentar.
În cazul proiectului dat cheltuielile de regie constituie 140% din salariu (suma salariului de bază și a salariului auxiliar), care vor fi:
(1150 + 138) 1.4 = 1 803,2 lei.
4.4. Calculul cheltuielilor pentru elaborarea proiectului
Tabelul 4.8
Cheltuielile totale la elaborarea proiectului
Cheltuieli pentru elaborarea proiectului sunt – 4 495,29 lei.
Prețul unui exemplar fără TVA este alcătuit din suma costului de producție al unui exemplar și beneficiu.
costurile de elaborare pentru un exemplar (4 495,29/10 = 449,52 lei), presupunând că cheltuielile de proiectare să fie recuperate de primele 10 copii a proiectului.
beneficiul este de 20% din costurile de elaborarea unui exemplar, adică 89,90 lei.
TVA este de 20% din suma costului de elaborare și beneficiul adică 107,88 lei.
conform calculelor efectuate mai sus rezultă, prețul unui exemplar este 647,3 lei.
4.5. Analiza eficacității economice
Calculăm suma vânzărilor presupuse, adică înmulțim prețul unui exemplar la 10 și obținem Vpresupuse = 6 473 lei.
Calculăm suma vânzărilor curate, adică fără TVA ceea ce este 20% din Vpresupuse și este
Vcurate = 5 178,4 lei.
Venitul îl calculăm scăzând din Vcurate cheltuielile totale și obținem Venitul = 683,11 lei.
Calculăm impozitul pe venit ceea este 10% din 683,11 și este = 68,31 lei.
Calculăm venitul curat 683,11 lei – 68,31 lei = 614,8 lei.
Rentabilitatea produsului după impozitare se calculează ca raportul dintre venitul curat la Vcurate și este 11,87%.
4.6. Concluzii
Dezvoltarea tehnologiilor informaționale în special în domeniul calculatoarelor și sistemelor de rețea duce la creșterea substanțială profitului atât în economia națională cât și în economia mondială. Produsele software în prezent sunt foarte avantajoase din punct de vedere al eficacității și compatibilității programelor în raport cu cerințele expuse de utilizatori.
În prezent în Moldova nu există un web-site de prestare a serviciilor taxi. Acest web-site este primul creat. Este simplu, comod și simpatic.
Utilizatorii de rând al Internet-ului, accesând site-ul oficial vor putea analiza amănunțit și alege dintr-o gamă largă de servicii suplimentare de care dispune firma, ceea ce pe telefon nu se poate de realizat. Dezvoltarea în continuare a paginii web va crea premise noi pentru oameni de afaceri din întreaga țară chiar și peste hotare.
Avantajele utilizării Internet în afacerile economice:
1. Creșterea considerabilă a dinamismului afacerilor.
2. Lărgirea pieței de desfacere a produselor și serviciilor.
3. Facilitarea regăsirii produselor și serviciilor.
4. Reducerea termenului de realizare a afacerilor.
5. Reducerea cheltuielilor de realizare a afacerilor (de aproximativ 10 ori).
Acest produs este unic și nu poate fi distribuit prin vânzări altor firme sau agenți economici. Produsele date sunt în proprietatea firmei și toate drepturile de autor sunt rezervate de producătorul programelor. Uzura programelor elaborate va constitui aproximativ 10 ani, periodic va trebui doar să se facă unele renovări asupra lor.
Un alt factor pozitiv este acela că elaborarea produselor soft poate duce la micșorarea cheltuielilor de salarizare (reducerea personalului de muncă) și conduce automat la recalificarea personalului în specializări noi (tehnologiile informaționale), facilitează lucrul de manipulare și stocare a informațiilor firmei.
=== PARTEA_GENERALA ===
INTRODUCERE
Internet – este o comunitate de rețele ce aparțin diferitor firme comun pentru care este folosirea modelului TCP/IP.
Internet-ul sau rețeaua mondială de rețele, la care mulți utilizatori se referă – sub denumirea de „THE NET” – devine din ce în ce mai popular. De fapt „THE NET” este un univers complex virtual în care sunt accesibile infomațiile despre subiecte din cele mai diverse curm ar fi: muzică, vreme, politică, religie, artă, știință, sex, tehnică, finanțe, umor, bancuri, etc. Constrânge în sine și servicii de teleshopping, poțtă electronică (e-mail), biblioteci virtuale, magazine virtuale, jocuri on-line.
Se poaste considera că Internet-ul este constituit dintr-un conglomerat multiplu de obiecte și componente fizice, sisteme de operare.
În fig. î.1 sunt prezentate componentele principale a mediului de lucru pe Internet.
Noile tehnologii informaționale au permis dezvoltarea unei clase foarte largi de aplicații de un interes comercial tot mai crescut, pe măsura dezvoltării explozive a Internet-ului. În consecință apare o cerere tot mai mare pe piața muncii de specialiști la proiectare, programare, implementare și dezvoltare a acestui gen de aplicații.
Tehnologiile și aplicațiile pe Internet se extind extraordinar de rapid, captând o atenție deosebită, deoarece Internetul reprezintă un mediu de comunicații plauzibil, un instrument pentru facilitarea afacerilor și un debușeu comercial.
Cel mai popular mijloc de accesare a informației pe Internet reprezintă “Rețeaua globală “ (World Wide Web), la baza căreia stă repartizarea informației hypermedia. Navigarea pe Web ne permite să navigăm printre serverele informaționale existente.
Rețeaua globală a cucerit popularitate în rândurile utilizatorilor Internet, în lumea bussines-ului, științei, politicii, ș.a. Principalele cuceriri Web – reprezintă simplitatea publicării informației pe rețea, comoditate, compararea unicității accesului la documente, existența a sistemelor de căutare.
În general, metodele de prezentare, păstrare și căutare a informației în WWW se referă la categoriile sistemelor informaționale și de căutare. Cu toate că locul de păstrare a datelor în nodurile Web uneori se numesc baze de date, acest termen în cazul de față se poate de folosit în sensul cel mai general.
Web este un mediu interativ, care permite utilizatorului să aibă în întregime controlul asupra a ceea ce dorește să obțină și când el poate, de exemplu, să creeze foarte ușor un document multimedia la care să aibă acces toți ceilalți utilizatori.
Internetul și WWW reprezintă o formă modernă de democrație electronică, deoarece nici o persoană, firmă, organizație sau guvern, nu controlează infrastructura tehnică, sistemele de calcul, aplicațiile și informațiile ce compun acest sistem de comunicații electronice.
Sistemele hipertext, în care se încadrează WWW, vor cunoaște o dezvoltare mai mare: tot mai multe baze de informații din Internet vor fi organizate conform principiilor de hipertext, în care legăturile semantice permit o navigare ușoară prin noianul de colecții de date disponibile; totodată, tehnicile de căutare se vor îmbunătăți, permițând scurtarea timpului petrecut de utilizatori în Internet, în favoarea perioadei afectată realizării lucrărilor în care sunt angajați.
Internet-ul nu este numai o sursă informațională, dar și o conexiune socială, care într-o societate democratică este chemată să vină în întâmpinarea problemelor comunității și să le rezolve prin comunicație și prin desemnarea informațiilor către cetățeni. De aceea în această societate virtuală membrii săi sunt numiți netizen (nume provenit de la o combinare a cuvintelor network și sitizen ) se regăsesc pe baza adreselor e-mail și folosesc informațiile cele mai diverse posibile din web pe baza URI-urilor.
Internetul va fi din ce în ce mai mult folosită pe baze comertiale. Această utilizare este indicată pentru firme mici, care nu-și pot permite realizarea unor rețele proprii. Desigur, se întrevăd și unele neajunsuri în această tendință. Multe universități, centre de cercetare sau chiar țări cu anumite dificultăți economice se vor lovi de posibilitatea prețurilor serviciilor Internet și vor fi nevoite să renunțe la conectarea, cu atât mai mult cu cât utilizarea curentă a serviciilor Internet nu este peste tot o obișnuință.
Dezvoltarea rapidă a tehnologiei World Wide Web, tehnologie care stă la baza gestiunii și circulației documentelor în Internet, propune o nouă abordare a sistemelor informatice și o reconsiderare a tehnologiilor și relațiilor din sfera mecanismelor comerciale.
Fig î.1. Componentele principale a mediului de lucru Internet.
Importanța și impactul tehnologiei WWW în proiectarea aplicațiilor din domeniul comerțului poate fi comparat cu cel petrecut în proiectarea aplicațiilor din domeniul industrial o dată cu standardizarea reprezentării tridimensionale (3D).
Analogia poate fi făcută și prin faptul că tehnologia Web a dat cel puțin trei dimensiuni noi informației conținute în documente: sunet, imagine, animație.
Dacă în sfera producție (industrie), tehnologia informatică s-a cristalizat în aplicații care au ajuns la maturitate printr-o evoluție ascendentă, normală, în sfera economicului și în special în domeniul comerțului evoluția tehnologiei Web este explozivă. Numărul de servere cuplate în Internet și numărul de persoane conectate cunosc o rată anuală incredibilă. Dacă la începutul anului 1996 erau peste 5 milioane de servere în anul 2001 s-a ajus la 210 milioane. Din cele 210 milioane de servere existente sunt accesate de aproximativ 350-400 milioane de utilizatori.
1. NOȚIUNI TEORETICE
1.1. Prezentarea tehnologiilor World Wide Web (WWW)
Unul dintre cele mai importante și de succes servicii ale rețelei Internet, WWW-ul a fost creat la CERN (Centrul European de Cercetări Nucleare, Geneva), Elveția în anul 1989 de Tim Berners-Lee, Robert Caillau și echipa lor, însă dezvoltarea sa ulterioară a fost facilitată de programul client Mosaic, sub mediul X Window, de la NCSA (Centrul național pentru aplicațiile supercalculatoarelor, Universitatea Urbana-Champaign) furnizat gratuit din 1993, care avea o mare simplitate de utilizare și facilități multimedia.
WWW este un sistem distribuit de hipermedia funcționând în mod client-server prin Internet. Sistemul pune la dispoziție informațiile sub formă de hipertext (mixtură între text, grafică, elemente multimedia, plus referințe încrucișate). Pentru a căpăta acces la WWW, utilizatorul va fi nevoit să folosească un program client (user-agent) cum ar fi Lynx (în mod text) sau Mosaic și Netscape (în mod grafic) și bineînțeles va trebui să cunoască localizarea fizică a documentului dorit. Localizarea unui document hiper-text se exprimă sub forma de URL (Uniform Resource Locator), o modalitate flexibilă și eficientă de accesare a oricărei resurse Internet, prin oricare protocol (TELNET, FTP, Gopher, HTTP, mail) bazat pe TCP/IP.
Modul de dialogare între clienți și servere WWW se realizează prin protocolul HTTP (HyperText Transfer Protocol). Un document WWW trebuie în prealabil formatat (sau 'marcat') cu ajutorul limbajului HTML, marcaj ce va descrie structura logică a documentului și va fi procesat de programul client. Orice astfel de document poate cuprinde legături de tip hipertext, indicate prin zone de text sau imagini, conducându-l pe cititor fie în alt punct al aceluiași document, fie într-un alt document, care poate să se găsească stocat local (pe serverul curent) sau la distantă (pe oricare alt server Web din lume). Aceste legături încrucișate între miile și sutele de mii de servere WWW realizează o adevărată pânza de păianjen (web) planetara (world-wide) de unde vine și denumirea WWW, iar utilizatorul navighează în ciber-spațiul reprezentat de această rețea.
Clientul WWW poate manipula documente multimedia datorită facilitaților puse la dispoziție de diferitele versiuni ale limbajului HTML ce prevăd includerea de imagini (formate grafice precum GIF sau JPG), fișiere audio și video. Mai mult, programele client se pot comporta ca programe client FTP, Gopher sau News (NNTP) și sânt capabile să gestioneze poșta electronică. În HTML pot fi concepute formulare (forms) pentru introducerea interactivă a datelor (texte, meniuri, liste, butoane de selecție etc.) și trimiterea lor către server spre a fi procesate. Îmbinarea limbajului HTML cu rutine scrise în alte limbaje (scripturi) conferă o sporită interactivitate a Web-ului.
Deși în prezent nu există standarde privind securitatea schimbului de informații între client și server, compania Netscape a propus protocolul SSL (Secure Socket Layer) pentru canale de comunicații fiabile, autentificate și sigure, protocol independent de aplicație, putând fi folosit și de alte programe TCP/IP (ca de exemplu FTP ori TELNET). O alternativă este S-HTTP (Secure HyperText Transfer Protocol) propus de NCSA.
Viitorul Web-ului este extinderea sa la cea de a treia dimensiune. În primăvara anului 1994, la prima conferință asupra problematicii Web-ului de la Geneva, s-a născut proiectul VRML (Virtual Reality Modeling Language), limbaj de descriere a spațiului virtual tridimensional bazat pe formatul Open Inventor al firmei Silicon Graphics. Succesul VRML va depinde de existența programelor client capabile a interpreta acest limbaj pentru diverse platforme. Aceasta va constitui cu siguranță o nouă sursă de aplicații, mai ales în arhitectură, tele-medicină, industria jocurilor.
Tot în 1994 a apărut și termenul de telesensation, concept care combină grafica computațională, realitatea virtuală, programarea vizuală și telecomunicațiile, imaginile transmise de la distanță fiind percepute global.
1.2. Arhitectura Client – Server
1.2.1. Noțiuni generale
Tehnologiile de dezvoltare a aplicațiilor, client-server, ne indică faptul că avem de a face cu două entități distincte care comunică între ele, una îndeplinind cererile celeilalte. Cele două entități trebuie să poată lucra separat, fie pe calculatoare distincte, fie ca două procese independente, în cazul în care este disponibil un sistem de operare multiproces. Unul dintre procese, procesul server, rulează în permanență în gol, așteptând să primească sarcini de executat. Un server poate în general deservi mai multe procese client fie direct, fie prin intermediul unor procese, fie create câte unul pentru fiecare client în parte.
Desigur, între clienți și server trebuie să existe un limbaj comun în așa fel încât cererile adresate serverului să poată fi ușor întelese și rezolvate de către acesta. De multe ori, rezolvarea cererilor înseamnă returnarea unui set de date către client, selectat după dorințele acestuia. Diferența nu este prea mare deocamdată, față de arhitectura clasică de rețea, Novell, de exemplu.
Serverul de fișiere Novell acceptă cererile de date parvenite de la stații și le prelucrează.
Să analizăm exemplul unui program xBase lucrând cu fișiere memorate în rețea, și care dorește să prelucreze datele dintr-un fisier DBF aflat pe un server. Să presupunem că programul nu dorește să prelucreze toate întregistrările din fisierul DBF, ci doar acelea care îndeplinesc o anumită condiție: au un câmp logic pe valoarea adevărat sau au o dată de înregistrare nu mai veche de o lună, etc.
Care este soluția clasică? Aceea de a deschide fișierul de pe server și de a-i cere acestuia să transmită rând pe rând toate înregistrările aflate în fisier. Pe măsură ce aceste înregistrări sosesc la client, acestea sunt verificate prealabil dacă îndeplinesc condiția dată și în caz de succes sunt prelucrate.
Dezavantajul unei astfel de abordări este acela că toate înregistrările, indiferent dacă îndeplinesc sau nu conditia dorită, sunt transferate către client. O idee mai bună ar fi aceea că împreună cu cererea, să-i fie comunicată serverului și condiția care trebuie îndeplinită de către înregistrări pentru a putea fi prelucrate. În acest caz, serverul ar putea transmite spre client doar acele înregistrări care îndeplinesc condiția. În acest fel, traficul pe rețea este mult mai mic. În plus, clienții (în număr mare de obicei) nu trebuie să conțină în interior algoritmi sofisticați de selectare a înregistrărilor care îndeplinesc o anumită condiție. Acești algoritmi sunt memorați o singură dată, în interiorul serverului. Mai mult decât atât, datele originale sunt mereu protejate de server și memorate în orice format consideră serverul că este mai eficient. Clienții trebuie să cunoască doar formatul în care sosesc datele pe rețea, un format în general mult mai simplu.
Acestea sunt ideile care stau la baza unei arhitecturi client-server. Clienții comunică într-un limbaj standard cererile lor către server, iar acesta le execută indiferent dacă este vorba de cereri de selectare de date sau de actualizare a acestora. Într-un mod asemănător lucrează FoxPro atunci când lansează o cerere SQL-SELECT către un server SQL. Rezultatul cererii este memorat într-o tabelă temporară în memorie si poate fi prelucrat în același mod ca și o tabelă normală. Datele din memorie sunt o copie a acelora de pe server, modificarea lor duce doar opțional și la modificarea originalelor. Limbajul SQL în sine este un limbaj standard, des utilizat pentru comunicația dintre un server de baze de date și clienții acestuia.
Aplicația demonstrativă folosește o arhitectură de tip client-server pentru a selecta date dintr-un fișier de date. Comunicația între aplicații se face folosind protocolul TCP/IP. Atât serverul cât si clientul pot fi compilate sub Unix sau sub Windows. Sub Windows, este folosită implementarea de socluri TCP/IP standard, WINSOCK.DLL. Această implementare este foarte apropiată de implementarea standard BSD la nivelul interfeței de programare. Cele mai multe apeluri de rețea sunt identice. Serverul folosește un anumit port TCP/IP la care îl pot căuta clienții. Adresa Internet a calculatorului pe care rulează serverul trebuie dată ca parametru pe linia de comandă a clientului.
Fișierele de date sunt păstrate în format DBF pe calculatorul pe care rulează serverul. Rutinele de lucru cu fișiere DBF sunt scrise de mine, dar spațiul din revistă împiedică publicarea surselor lor. Funcțiile se pot compila pe DOS/Windows/Macintosh/Unix. Cunoașterea modului de memorare a datelor este un privilegiu al aplicației server. Aplicația client comunică serverului cererile sale printr-un soclu cu conexiune, sub formă de mesaje. Mesajele sunt de lungime variabilă, primii doi octeți ai acestora păstrând lungimea mesajului sub formă binară. Serverul analizează cererea și comunică înapoi datele solicitate.
În anexa 3 este prezentată schema generală a arhitecturii client-server.
Iată descrierea principalelor componente din figură:
Mediul extern rețea – include în sine mediul general în care se execută toate operațiile de bază.
Zona de lucru A – include în sine mijloacele și procedeele pe care le execută mațina client până la transmiterea cererilor către server.
În general, clienții sunt calculatoare personale (PC-uri) utilizate pentru activități de gestionare a datelor.
Un post client se caracterizează prin faptul că:
– se formulează interogările (cereri, consultări) sau comenzile pe care le "înaintează" serverului;
– transmite interogările/comenzile respective serverului prin intermediul unei tehnologii de comunicație (canale de comunicații);
– analizează datele din rezultatele interogărilor/comenzilor primite de la server.
În prezent serverul nu poate deservi decât un singur client. O implementare care deservește mai mulți clienți este mai complicată în Windows, unde nu putem apela rutine de tip fork pentru crearea de aplicații.
Spre deosebire de un sistem file/server în care datele sunt aduse de pe file server pentru a fi procesate pe o masină locală în acest sistem comenzile sunt transmise asupra bazelor de date localizate pe server, rezultatul fiind transmis înapoi clientului pentru a fi vizualizat.
Prin canalele de comunicații (CC) se transmit cererile deja analizate. De asemenea aici se transmit și limbajele de comunicare între client și server, adică limbajele utilizate la formularea cererilor (SQL, Paradox, etc). Dacă datele transmise către server sunt aflate în rețeaua locală atunci se utilizează protocoalele ca ftp(file transfer protocol), Telnet și altele. Pentru a transmite pe rețeaua globală Internet se utiliează protocoalele http, pop3 din familia TCP/IP.
Un post server se caracterizează prin faptul că:
– furnizează un serviciu clientului;
– răspunde la interogările/comenzile clientului;
– ascunde detaliile sistemului client/server, făcând transparent dialogul dintre client și server.
Orice sistem distribuit este alcătuit din minimum trei componente principale:
– interfața cu utilizatorul (sistem de operare/mediu grafic);
– aplicația (prelucrările sau procesele);
– sistemul de gestiune a bazelor de date.
Sistemele client/server sunt sisteme informatice distribuite.
Serverele utilizează baze de date relaționale în stocarea și întreținerea datelor între care există referințe. Aceste referințe sunt menținute printr-o tehnologie denumită integritate referențială (referential integrity) care oferă mecanisme și acționează asupra datelor (trigger) și proceduri de stocare (stored procedure).
Acest model este combinația a trei tehnologii:
– sistemul relațional de management al bazelor de date (DBMS);
– rețeaua;
– interfața client (bazată pe GUI/PC).
Majoritatea consideră clientul și serverul ca fiind două entități hardware, dar de fapt, sunt entități software. Trebuie înteles că modelul client/server implică o entitate software (clientul) care efectuează cereri, acestea fiind îndeplinite de o altă entitate software (serverul). Clientul este cel ce transmite o cerere server-ului, acesta o interpretează și apoi o execută. Pentru a putea îndeplini cererea serverul poate referi o sursă de informație (baze de date), să efectueze procesări asupra datelor, să controleze periferice sau să efectueze cereri adiționale altor servere.Relația între client și server este una de comandă/control, clientul inițiază cererea și serverul este cel ce o îndeplinește transmițând rezultatul clientului, aplicația fiind procesată prin divizarea ei între cele două entități iar transferul de date este bidirecțional.
Un server nu inițializează niciodată un dialog cu clienții. Clientul poate funcționa pe un server hardware și să efectueze cereri de la un server care rulează pe un alt server hardware sau pe un PC sau clientul și serverul pot funcționa la același PC.
Arhitectura afectează toate aspectele software, ea trebuie să ia în considerare complexitatea aplicației, nivelul de integrare și interfațare cerut, numărul utilizatorilor, răspundirea lor geografică naturaArhitecturile Client/Server definesc cum aceste trei componente sunt împărțite între entitățile software și distribuite în rețea, există o varietate de moduri cum pot fi divizate și implementate, utilizarea unor astfel de arhitecturi putând aduce multe beneficii în viitor companiei permițând adaptarea la diferite standarde și tehnologii. Câteva din caracteristicile acestei arhitecturi sunt:
Centralizarea informației – într-un astfel de mediu, datele sunt stocate pe un server central și există un singur punct de control care administrează cererile aplicațiilor și platformelor. Aceste servere de baze de date utilizează un sistem de management al bazelor de date (DBMS) pentru a defini, stoca și manipula date. Serverul este generic, programatorii neavând nevoie să cunoască un limbaj anume pentru a accesa date. Utilizând tehnicile de identificare o organizație poate creea magazii de date de la diferite servere distribuite în diferite zone geografice. Această tehnică maximizează performanțele fără a compromite modelul centralizat și reduce probabilitatea existenței de date redundante în aplicații.
Serverul procesor central – preluând acest avantaj, organizațiile pot reduce procesarea redundantă prin utilizarea procedurilor trigger și de stocare. Server-ul este orientat în procese standard ca: menținerea unor reguli, validări, și referințe de integritate, iar prin intermediul funcțiilor de stocare pe un server comun datele pot fi manipulate corect din punct de vedere logic și viabile pentru o varietate de limbaje și unelte ale lor.
Performanțe – serverul este un computer dedicat să proceseze un set limitat de cereri de la clienți. Singura sa funcție este să proceseze cererile asupra bazelor sale de date. SQL oferă facilități eficient de utilizare a traficului în rețea deoarece doar subseturi ale datelor sunt transmise în rețea, în plus serverele și DBMS sunt desemnate să gestioneze baze de date masive fără o degradare simțitoare a performanțelor.
Securitate – serverele ce lucrează pe platforme ca UNIX , Windows NT sau OS/2 pot oferi o mai mare securitate pentru managementul bazelor de date în comparație cu file server-ele standard. Mecanismele de duplexing, mirroring și copiere permise administratorilor asigură evitarea dezastrelor, de asemenea aceste baze de date permit definirea de useri și parole care permit evitarea accesului unor persoane neautorizate.
Referitor la costurile unor astfel de arhitecturi, server-ele sunt cele ce necesită procesoare rapide, memorie, hard disc-uri mari și un sistem de operare, clienți care le accesează. Licențierea, instalarea și întreținerea unor sisteme ca Oracle, Sybase sau Informix necesită sute de mii de dolari iar dezvoltarea unor aplicații necesită memorie, mașini noi și noi sisteme de operare. Din acest motiv în prezent multe organizații care au utilizat mainframe- uri sau acomodat foarte ușor acestui mediu client/server care oferă o excelentă infrastructură pentru a asigura informație organizației asigurând integritate, viteză și securitate.
Cele mai populare tipuri de arhitecturi sunt cu doua entități(two-tier) și cu trei(three-tier).
1.2.2. Arhitectura two-tier
În această implementare, cele trei componente ale unei aplicații (prezentare, procesare și date) sunt divizate între două entități (tiers): codul aplicației client și bază de date server. O aplicație client dezvoltă un limbaj și un mecanism de interschimb pentru a transmite cererea server-ului. Prezentarea este deținută în exclusivitate de client, procesarea este împărțită între client și server și datele sunt stocate și accesate de pe server. PC-ul client își asumă întreaga responsabilitate a functionării logice a aplicației, timp în care motorul bazei de date verifică integritatea.
Într-o astfel de topologie motorul datelor (data engine) este cel ce procesează cererile clientului, limbajul utilizat fiind o formă a SQL, transmiterea unei cereri presupune că aplicația client să cunoască sintaxa serverului sau aceasta să fie tradusă printr-o aplicație (API), totodată să se cunoască serverul, cum sunt organizate datele și denumirea lor. Datele transmise clientului pot fi manipulate de acesta cum doreste, datele de pe server fiind centralizate. Aceste medii dețin o varietate de structuri de date, totodată aceste arhitecturi bine în medii eterogene, aplicația client deținînd controlul orice modificare care apare în cadrul unui sistem ducînd doar la modificarea aplicației client.
Sistemul de securitate într-un astfel de mediu este complicat deoarece un user trebuie să dețină parole pentru fiecare server SQL, iar creșterea utilizatorilor poate duce la compromiterea securității bazelor aflate pe server. În prezent majoritatea aplicatiilor client/server sunt proiectate să lucreze cu produse middleware care duc la cresterea securității, ele deținând unelte de acces la date.
1.2.3. Arhitectura three-tier
Această arhitectură a apărut datorită limitărilor arhitecturii precedente, ea aduce ca noutate separarea prezentării , procesării și datelor în entități (tiers) software distincte. Aceleași tipuri de unelte care în arhitectura precedentă erau utilizate pentru prezentare, acum ele sunt dedicate doar
pentru prezentare.
Când clientul solicită o cerere pentru acces la date sau o procesare a datelor, cererea se face la nivelul de mijloc care este un server. Acest nivel poate efectua procesări de date sau cereri asemeni unui client la alte servere.
Serverele din nivelul mijlociu pot fi multi-treaded și pot fi accesate de clienți multipli, asemeni unei aplicații separate. Sistemele three-tier pot fi implementate utilizând o varietate de tehnologii, mecanismul de cerere al clientului de la server în majoritatea sistemelor este utilizat apelul procedurilor remote(RPC). Apelul unor astfel de proceduri de către client asigură sistemului o flexibilitate foarte mare în comparație cu apelurile SQL efectuate de client în arhitectura precedentă, aceasta datorită faptului în care parametrii necesari cererii efectuate de client sunt foarte ușor transmiși și specificațiile structurilor de date care preiau datele primite (if any), acest lucru permițând organizațiilor sau structurilor back-end (aflate pe servere) să poată să-și modifice configurările în sistem, datele să poată fi organizate ierarhic, relațional sau obiectual permițând firmelor să simplifice trecerea la noi tehnologii legate de organizarea bazelor de date, fără a fi nevoie de modificări la nivelul aplicației client.
Un alt avantaj este acela că având entități software separate permit o alocare flexibilă a resurselor. Entitățile mijlocii (servere) pot fi alocate dinamic și repartizate în funcție de necesitățile firmei. Traficul de rețea este redus având server-le nivelului mijlociu, preluând date de la structuri precise înainte să le distribuie la clienți în rețea, PC-urile client fiind dedicate doar prezentării, memoria și discurile fiind reduse.
Din punct de vedere al dezvoltărilor software modularitatea oferă reutilizarea unor subrutine cu efort minim reducând costurile.
În concluzie această arhitectură este pe termen lung de funcționare al aplicațiilor indiferent de modificările apărute în afaceri, cod reutilizabil, întreținere usoară și ușurință în migrarea către noi platforme server și medii.
1.3. Concepția de bază de date
O bază de date este formată dintr-o colecție de date diverse și un software care să controleze accesul la acestea, cunoscut sub numele de sistem de gestiune a bazelor de date (SGBD) . În fapt, un SGBD este un program ce furnizează o interfață între sistemul de operare de pe sistemul de calcul respectiv și utilizator, cu scopul de a simplifica pe cît posibil accesul la date.
Un SGBD îndeplinește următoarele funcții importante:
– stocarea, regăsirea și actualizarea datelor; astfel un SGBD permite utilizatorilor să creeze și să manipuleze date într-un mod facil, fără a fi necesar să se cunoască structura internă a datelor;
– crearea și întreținerea dicționarelor da date și a cataloagelor de asistență;
– gestionarea facilitățile legate de accesarea simultană a unor înscrieri ale bazei de date de către mai mulți utilizatori;
– păstrarea unei copii de siguranță și posibilitatea de a recupera datele în cazul căderii sistemului;
– probleme de securitatea a datelor ( parole de acces ale utilizatorilor, verificări, vizualizarea datelor, etc.).
Bazele de date ce se referă la aceleași domenii de valori, în diferite cazuri conțin date mai puțin sau mai mult detaliate despre ea. Nivelul de detalizare se determină reieșind din anumiți factori. De exemplu, scopul folosirii informației din baza de date și nivelul de complexitate a proceselor de producere ce există în domeniul de valori în condiții concrete.
1.3.1. Definirea sistemului de gestiune a bazelor de date
Sistemul de gestiune a bazelor de date reprezintă software-ul propriu zis al acesteia, care asigură realizarea următoarelor activități:
– definirea structurii bazei de date;
– încărcarea datelor în bate de date;
– accesul la date (interogare, actualizare);
– întreținerea baza de date (refacerea bazei de date în cazul unui incident);
– reorganizarea bazei de date (restructurarea și modifiarea strategiei de acces);
– securitatea datelor;
Așadar sistemul de gestiune a bazelor de date apare ca un complex de programe care asigură interfața între o baza de date și utilizatorii acestuia.
1.3.2. Etapele de realizare a bazelor de date
Realizarea unei baze de date (BD) prevede parcurgerea următarelor etape:
analiza sistemuluui pentru care se realizează baza de date și a cerințelor informaționale actuale;
proiectarea structurii BD (schema conceptuală);
analiza și elaborarea modificărilor preventive la proiectarea BD;
încărcarea datelor în BD;
întreținerea BD.
Realizarea BD presupune utilizarea unor metode și tehnici de analiză, de programare precum și a unor instrumente de lucru (limbaje de descriere a datelor – LDD, limbaje de manipulare a datelor – LMD, etc.).
Mai jos în fig. 1.2 este prezentată schema principială de elaborare a bazelor de date.
Fig. 1.2 Schema principială de proiectare a bazelor de date.
1.3.3. Obiectivele unui sistem de gestiune a bazelor de date
Necesitatea acută de informare trebuie satisfăcută țin’nd cont de o serie de cerințe prin care să se asigure minimizarea costului procesului de prelucrare a datelor; creșterea vitezei de răspunsla interogatoriile solicitate de utilizatori;posibilitatea folosirii sistemuluui de informaredispunînd de un minimde cunoștințedespre modul deorganizare alui. Sistemul de gestiune al bazelor de date îi revin o serie de obiective cum sunt:
asigurarea independenței datelor – o aplicație în general este dependentă de date în sensul că modificarea structurii de memorare a datelor sau a strategiei de acces la date afectează și aplicația. Independența datelor este necesară din următoarele considerente: diferite aplicații au nevoie de viziuni diferite ale acelorași date; administratorul bazei de date trebuie să aibă libertatea de a schimba structura de memorare sau strategia de acces, ca răspuns la cerințe, fără a mai modifica aplicațiile existente.
Independența datelor trebuie să fie privită din 2 puncte de vedere: independența fizică, independența logică a datelor. Independența fizică face ca memorarea datelor și tehniciile fizice de memorare să poată fi modificsate fără a determina rescrierea programelor de aplicație.
Independența logică a datelor se referă la posibilitatea adăugării de noi articole de date sau extinderea structurii conceptuale (fără ca aceasta să impună rescrierea programelor existente.
asigurarea unei redundanțe minime – stocarea datelor în cadrul bazelor de date se face astfel încît fiecare înscriere să apară o singură dată. Totuși, nu sunt excluse cazurile cînd, pentru a realiza performanțe sporite, referitoare la timpul de acces la date și răspuns la solicitările utilizatorilor, să se accepte o anumită redundanță a datelor, însă în acest caz se va institui un control automat asupra ei în vederea asigurării coerenței datelor din bază.
sporirea gradului de securitate a datelor – administratorul bazei de date poate prevedea accesul la bazei de date să se facă numai prin canale corespunzătoare.
asigurarea integrității datelor – se utilizează împotriva unor ștergerii intenționate sau neintenționate prin intermediul unor proceduri de validare.
1.3.4. Clasificarea sistemelor de gestiune a bazelor de date
1. Din punct de vedere al sistemelor de calcul pe care se implementează pot fi:
– sisteme de gestiune pentru calculatoare mari;
– sisteme de gestiune pentru minicalculatoare;
– sisteme de gestiune pentru microcalculatoare;
2. Din punct de vedere al limbajului pe cae îl utilizează sunt:
– sisteme cu limbaj gazdă;
– sisteme cu limbaj autonom.
3. Din punct de vedere al concepției de organizare a datelor pe care le gestionează:
– sisteme de gestiune a bazelor de date cu structuri ierarhice și rețea;
– sisteme de gestiune a bazelor de date relaționale și orientate pe obiect.
4. Din punct de vedere al modului de localizare a bazei de date:
– sisteme de gestionare a bazelor de date centralizate;
– sisteme de gestiune a bazelor de date distribuite.
1.3.5. Bazele de date relaționale
Bazele de date relaționale reprezintă prin sine o mulțime de tabele de date. dacă baza de date conține un singur tabel atunci ea se numește bază de date plată. Legăturile între tabele poate să se reflecte în structura datelor, sau poate numai presupus, adică să fie prezente la nivel neformalizat. Fiecare tabelă de date se reprezintă ca o mulțime de rânduri și coloane, unde coloanele corespund exemplarului obiectului, evenimentului sau acțiunii concrete, iar rândurile corespund atributelor ce caracterizează aceste obiecte, evenimente sau acțiuni.
Dezvoltarea teoriei bazelor de date relaționale a căpătat o amploare deosebită în domeniul aplicării tehnicii de calcul. Rezultatele obținute în teoria relațională au influențat esențial sistemele de gestiune ce se bazează pe celelalte două metode de date: ierarhic și rețea. Modelul relațional de date este aplicat pe larg și în bazele de date deductive.
“Revoluția relațională” a introdus mai multe idei valoroase în lumea bazelor de date. Printre acestea progrese tehnologice și beneficii ale sistemelor de gestiune ale bazelor de date pot fi menționate:
Tabelele sunt un mijloc simplu de reprezentare a datelor. Ele permit organizarea datelor în mod acceptabil. Extinderea modelului relațional a confirmat puterea de atracție a acestei reprezentări.
SQL este un standard de limbaje de interpelări foarte comod. Este un limbaj nonprocedural de manipulare a datelor și a contribuit mult la creșterea popularității sistemelor de gestiune ale bazelor de date relaționale.
Joncțiunile sunt instrumente puternice de asociere a înregistrărilor anterior independente. Apelând la joncțiune se pot crea noi seturi de înregistrări (așa numitele tabele virtuale).
Interpelări interactive. Căutarea și prelucrarea datelor în mod dinamic a adus la utilizarea largă a bazelor de date relaționale. Gestionarea tabelelor, vizualizarea interactivă și îmbunătățirea interactivă a contribuit ca utilizatorul ca utilizatorul să-și dea votul pentru sistemele relaționale.
Consistența datelor. Sistemele de gestiune relaționale asigură că nici un utilizator și nici o aplicație nu pot modifica baza de date, dacă modificare e în contradicție cu constrângerile de integritate.
Modelul relațional a fost primul exemplu de model de date formal și a fost propus de E. Codd în 1970. Cu ajutorul modelului de proiectare specificat, datele utilizatorului sunt reprezentate și manipulate în mod abstract. Modelul de proiectare, de asemenea, presupune diferite tehnici ce facilitează administratorului de a detecta și de a corecta posibilele apariții a dereglărilor în procesul de proiectare.
1.3.5.1. 13 Reguli ale lui Codd
Pe la mijlocul anilor 80 matematicianul Edgar Codd a publicat un set de reguli în raport cu un sistem de gestiune a bazelor de date denumite fiind „Cele 13 reguli de fidelitate ale lui Codd”.
Regula 0 – Pentru a fi un SGBD trebuie să fie capabil să gestioneze o bază de date prin intermediul caracteristicilor sale relaționale.
Regula 1 – Regula reprezentării a informației
Într-o BD informația este reprezentată la nivel logic într-un singur fel și anume sub forma unor tabele ce poartă numele de relații.
Datele sunt stocate sub forma unei structuri tabelare, formate din rânduri denumite tuple iar coloanele fiind atribute.
Observații: Se poate spune că exceptând regula 0, această regulă este cea mai importantă.
Regula 2 – Regula accesului garantat la date
Fiecare dată dintr-o bază de date relațională trebuie să poată fi adresată în mod logic printr-o combinație formată din numele relației în care se află, valoarea cheii primare și numele atributului.
Regula 3 – Regula reprezentării informației necunoscute
Un SGBD în totalitate relațional trebuie să poată permite utilizatorului definirea unui tip de date denumite NULL pentru reprezentarea unei informații necunoscute la momentul respectiv și aceasta într-un mod sistematic pentru orice tip de date.
Regula 4 – Regula dicționarelor de date
Asupra descrierii bazelor de date trebuie să se poată aplica aceleași operații ca cele asupra datelor din baza de date.
Regula 5 – Regula limbajului de interogare
Un SGBD trebuie să permită utilizarea a cel puțin unui limbaj, care să prezinte următoarele caracteristici: să permită definirea datelor, definirea vizualizărilor, manipularea datelor.
Această regulă precizează că manipularea datelor dintr-o bază de date trebui să se facă printr-un limbaj de nivel înalt. În general toate implementările de SQL respectă această regulă
Regula 6 – Regula de actualizare a vizualizării
Un SGBD trebuie să poată determina dacă o vizualizare poate fi actualizată și să stocheze rezultatul interogării într-un dicționar de tipul unui catalog de sistem.
Unele vizualizări pot fi actualizate, altele nu, în funcție de variantele instrucțiunii SELECT utilizate, pe baza cărora sunt construite.
Regula 7 – Regula limbajului de nivel înalt
Regulile de manipulare asupra unei relații luată ca întreg, sunt valabile atât pentru operațiile de regăsire a datelor, cât și asupra operațiilor de inserare, actualizare și ștergere a datelor.
Operațiile de manipulare a datelor (selecția, actualizarea, inserția, ștergerea) se aplică asupra oricărei părți dintr-o relație, plecând de la întreaga relație și sfârșind cu o tuplă sau nici una. Această regulă este în general bine suportată de către majoritatea implementărilor de SQL.
Regula 8 – Regula independenței fizice a datelor
Un SGBD trebuie să se separe aspectul fizic al datelor de aspectul logic.
Orice modificare de stocare a datelor (de exemplu, mutarea bazelor de date pe altă unitate de disc ) nu trebuie să afecteze în nici un fel programele de aplicație.
Regula 9 – Regula independenței logice a datelor
Orice modificare asupra unei relații (spre exemplu, împărțirea unei relații în mai multe relații, din rațiunea creșterii performanțelor) nu trebuie să afecteze operațiile de manipulare a datelor.
Totuși pot apărea modificări ale acestor operații, dacă se șterg relații, vizualizări sau atribute.
Regula 10 – Regula independenței datelor din punct de vedere al integrității
Un SGBD trebuie să permită atât definirea unor restricții de integritate asupra bazelor de date prin intermediul limbajului, cât și stocarea lor în dicționare de tipul cataloagelor de sistem.
Un sistem trebuie să permită operații de validare a datelor, utilizând de exemplu limbajul SQL, gestiunea acestor operații trebuie să poată fi făcută prin stocarea lor în dicționare de tipul cataloagelor de sistem.
Regula 11 – Regula independenței datelor din punct de vedere al distribuirii
Distribuirea datelor pe mai multe calculatoare dintr-o rețea de comunicații de date nu trebuie să afecteze programele de aplicație.
Această regulă poate fi considerată ca cea mai dură și printre cele mai dificile de respectat.
Regula 12 – Regula versiunii procedurale SGBD
Orice componentă procedurală a unui SGBD trebuie să respecte aceleași restricții de integritate ca în componentele relațională.
Versiunea ANSI standard nu precizează această regulă, deoarece precizează specificațiile pentru SQL ca limbaj relațional. În concluzie , dacă considerăm modelul de evaluare al lui Codd, standardul ANSI nu poate fi apreciat ca fiind în întregime relațional. Din punct de vede re al utilizatorilor speranțele sunt îndreptate spre crearea unui unic standard SQL , care să fie unanim adoptat de producători și utilizatori, indiferent dacă el respectă sau nu toate cerințele modelului lui Codd.
Orice model de date se bazează pe trei componente:
Structuri de date. Structurile sunt definite de un limbaj de definire a datelor (data definition language). Datele în modelul relațional sunt structurate în relații bidimensionale. Elementele principale ale structurii relaționale sunt relațiile, tuplurile, atributele, domeniile.
Constrângerile de integritate. Prin integritatea datelor se subînțelege că datele rămân stabile, în siguranță și corecte. Integritatea în modelul relațional este menținută de constrângeri interne care nu sunt cunoscute utilizatorului.
Manipularea datelor. Relațiile pot fi manipulate utilizând un limbaj de manipulare a datelor (Data Manipulation Language). În modelul relațional, limbajul folosește operatorii relaționali bazați pe conceptul algebrei relaționale. În afară de aceasta, există limbaje echivalente algebrei relaționale, cum ar fi calculul relațional orientat pe domeniu. În sistemele obișnuite de gestionare a fișierelor câmpul este cea mai mică unitate accesibilă de date.
Se presupune că fiecare câmp poate conține un anumit tip de date (integer, real, character, string etc.), pentru care se specifică numărul necesar de octeți de memorie. Câmpul, bineînțeles, are și un nume. Făcând analogie, în modelul relațional fiecare coloană a unei linii dintr-un tabel corespunde noțiunii de câmp în fișiere.
Pentru organizarea cererilor către bazele de date relaționale a fost elaborat limbajul SQL (Structured Query Language – limbajul cererilor structurate), care ulterior a căpătat un caracter industrial în sistemele relaționale de dirijare a bazelor de date relaționale. De aceea, la trecerea de la o bază de date relațională la alta, utilizatorii și proiectanții folosesc același limbaj. Un alt plus al limbajului SQL este faptul că el este orientat la operații de nivel înalt cu datele. Efectuând o cerere, nu trebuie să avem grijă de problemele de acces inferior la date specifice pentru diferite baze de date, deoarece interpretarea cererilor ține cont numai de sistema concretă de gestionare a bazelor de date.
1.3.6. Structura relațională a datelor. Atribute și domenii
Se numesc atribute sau nume de atribute mulțimea nevidă de elemente A1, A2, …,An. Mulțimea U={A1, A2,…,An} se numește unei baze de date relaționale sau mulțime universală.
Domeniul este simplu, dacă elementele sale sunt atomice (adică nu pot fi descompuse din punct de vedere al SGBD – ului). Atributul care are un domeniu de valori simplu se numește atribut atomic.
În modelul relațional fiecare tabel se spune că reprezintă o relație. Atributele sunt niște identificatori pentru a diferenția și a marca coloanele tabelului. Deci, câmpul sau numele de coloană e și un atribut. Toate atributele ce apar într-un tabel trebuie să fie distincte și să fie incluse în universul U. Atributele au un caracter global în baza de date: dacă un nume denotă două coloane în tabele distincte în aceeași bază de date, atunci el reprezintă același atribut.
Relația tabelară cu i linii și j coloane are i*j elemente. Fiecare element este o valoare dintr-un domeniu simplu. Cu toate că atributele în universul U trebuie să fie distincte, domeniile acestor atribute nu trebuie neapărat să fie disjuncte.
1.3.7. Relații și scheme
Fie R o submulțime a universului U.
Relația r asupra R este o mulțime finită de tupluri cu schema R.
Aritatea relației r este egală cu cardinalitatea mulțimii R.
Cardinalitatea relației r este numărul de tupluri în ea.
Baza de date relațională (sau simplu bază de date) este o mulțime finită de relații,
Schema bazei de date este mulțimea schemelor relațiilor ce formează baza de date,
Db = <R1,…,Rm > ,unde Ri = sch(ri).
Deci schema unei relații este o expresie a priorităților comune și invariante ale tuplurilor ce compun o relație. Schema unei relații mai este cunoscută sub denumirea de intensia unei relații. Relația se mai numește extensie. Extensia reprezintă mulțimea tuplurilor care compun la un moment dat relația, mulțime care este variabilă în timp.
Prin intermediul celor menționate anterior se poate de conchis că:
Ordinea coloanelor e nesemnificativă;
Valorile atributelor în ri sunt atomice fiindcă domeniile sunt simple.
Ordinea tuplurilor în ri e nesemnificativă, fiindcă ri este o mulțime.
Relația ri nu are tupluri identice, fiindcă ri este o mulțime de tupluri.
Relațiile ce se stochează fizic și formează baza de date se numesc relații de bază. Există, însă, și situații în care extensia nu se memorează în baza de date. Este cazul așa – numitelor relații virtuale, cunoscute și sub numele de relații derivate sau viziuni. Relația virtuală nu este definită explicit ca relația de bază, prin mulțimea tuplurilor componente, ci implicit pe baza altor relații. Relațiile de bază sunt proiectate de administratorul bazei de date, în timp ce viziunile sunt definite de utilizatorii bazei de date.
Relațiile asupra unei mulțimi de atribute pot avea un nume, sau pot să nu aibă, dacă ele sunt identificate în mod unic de schemele sale. Numele relației se scrie de obicei cu minuscule.
1.3.8. Chei. Tipuri de chei
Întrucât relația reprezintă o mulțime de tupluri, iar o mulțime nu poate conține elementele duplicate, relația nu poate prezenta tupluri identice. Deci tuplurile sunt unice și trebuie să existe posibilitatea identificării lor în cadrul unei relații. Identificarea unui tuplu fără a consulta toate componentele tuplului a dus la apariția noțiunii de cheie.
Fie U mulțimea universală de atribute, și R≠0. Mulțimea K de atribute, unde KR, se numește cheie pentru schema R (sau pentru relația r cu schema R), dacă ea posedă următoarele proprietăți:
1. Pentru oricare două tupluri t1 și t2 avem t1[Kt2[K].
2. Nici o submulțime K1 proprie a lui K2 nu posedă proprietatea (1).
Proprietatea (1), numită restricția de unicitate a cheii, permite K-valorilor să identifice în mod unic toate tuplurile dintr-o relație. Însă respectarea proprietății de unicitate poate fi complicată, dacă însăși K conține o cheie K1 și KK1. În acest caz, cu toate că atributele din K sunt suficiente de a atinge scopul, unele din ele nu sunt necesare, deci pot fi eliminate din cheie fără a se efectua unicitatea. Dacă, însă, K este o submulțime proprie a unei chei, atunci utilizarea a astfel de K-valori pentru căutarea datelor va descoperi tupluri ce coincid pe toate valorile atributelor din K.
Proprietatea (2) ne asigură că o cheie K constituie numai acele atribute ce sunt necesare și suficiente pentru a determina univoc pe celelalte. Cu alte cuvinte K-valorile întotdeauna asigură un grad exact de informație nici mai mult, nici mai puțin, pentru a găsi un tuplu unic într-o relație.
1.3.8.1. Noțiune de supercheie și cheie primară
Mulțimea de atribute ce posedă proprietatea (1) se numește supercheie.
Deci cheia este o supercheie minimală. Orice cheie e și supercheie.
Afirmația inversă nu e corectă.
Este evident că o mulțime vidă nu poate servi drept cheie a unei relații ce conține mai mult de un tuplu. Orice relație are cel puțin o cheie. La limită cheia este constituită fie dintr-un singur atribut, fie din totalitatea atributelor din schema relației respective.
Într-o relație pot exista mai multe chei. Se spune în acest caz că relația posedă mai multe chei candidate. În această situație se va stabili una din cheile candidate de către administrator să servească în mod efectiv la identificarea unică a tuplurilor. Ea va primi numele de cheie primară. Primare se vor numi și domeniile atributelor ce formează o cheie primară.
Cheie primară a unei relații se numește cheie simplă, dacă este constituită dintr-un singur atribut, iar atunci când este formată din mai multe atribute este denumită cheie compusă.
Așadar, prin cheie primară înțelegem un câmp sau un set de câmpuri care identifică univoc înregistrarea. În tabel nu trebuie să existe două sau mai multe câmpuri cu aceleași valori a cheii primare. Cheia primară nu trebuie să conțină câmpuri ștergerea cărora din cheia primară s-ar reflecta asupra unicitatății cheii.
De unicitatea cheii primare se ține cont de program sau automat. În primul caz la adăugarea unui câmp nou, aplicația ce lucrează cu baza de date găsește valoarea maximală corespunzătoare cheii primare și o incrementează cu 1. În al doilea caz unicitatea se realizează prin câmpurile autoincrimentabile. Pentru el acțiunile indicate se realizează de însăși baza de date. Cheile primare sub un mecanism univoc de identificare a câmpurilor și excluderii suprapunerii anumitor înregistrări.
O cheie externă reprezintă un atribut (grup de atribute) dintr-o schemă Ri definit (definite) pe același (aceleași) domeniu (domenii) ca și cheia primară a altei scheme Rj. Relația ri se numește relație care referă, iar rj poartă numele de relație referită.
Unele atribute pot avea așa numitele valori nedefinite sau necunoscute notate cu “nul”. Însă sunt bine cunoscute constrângerile formulate prin următoarele reguli numite reguli de actualizare (inserare, modificare, și eliminare) a relațiilor.
Constrângerea entității: cheia primară a unei relații de bază nu poate conține valori “null”;
Constrângerea referirii: dacă atributul A al unei chei compuse relației rI este definit pe un domeniu primar, atunci trebuie să existe o relație de bază rj cu o cheie primară B încât orice A-valoare din ri să apară în calitate de B-valoare în rj.
Constrângerea entității impune ca la inserarea unui tuplu, valoarea cheii să fie cunoscută, pentru a putea verifica faptul că această valoare nu este deja încărcată (respectarea constrângerii de unicitate a cheii). Cu valori “null” cheia își pierde rolul de identificator de tuplu.
Constrângerea referențială impune ca într-o relație ri, care referă o relație rj, valorile cheii compuse să figureze printre valorile cheii primare din relația rj pentru atributele compatibile.
E de dorit ca cheile pe parcursul timpului să nu să se schimbe. Cheile trebuie să rămână chei pentru orice eventuale extensii. Prin urmare determinarea cheii unei relații necesită cunoașterea semanticii relației respective, nu numai celei din momentul în care se stabilește cheia. Dacă relația posedă o singură cheie sau dori să evidențiem numai cheia primară mai departe vom sublinia atributele ce formează această cheie.
Regulile de actualizare a bazei de date fac parte din cele trei componente ale modelului relațional de date. Vom examina cele trei operații de actualizare a datelor: inserarea datelor, ștergerea datelor și modificarea datelor.
Scopul operației de inserție constă în adăugarea unui tuplu într-o relație concretă. Fie că în relația r(A1A2…An) vrem să introducem date. Operația de inserție, a unui tuplu în relația r poate avea forma:
Add(r;<a1a2…an|A1A2…An>).
În cazul că ordinea atributelor în relație e cunoscută, e acceptabilă o formă mai scurtă a operației:
Add(r;<a1a2…an>).
Rezultatul operației poate să eșueze din următoarele cauze: tuplul de inserție e definit pe o mulțime de atribute ce nu corespunde schemei relației; valorile componentelor tuplului nu sunt luate din domeniile corespunzătoare; în relație deja se găsește un tuplu cu asemenea componente cheie. În toate aceste cazuri operația Add păstrează relația r intactă.
Operația de ștergere se utilizează pentru eliminarea conținutului relațiilor. Pentru relația r de mai sus, operația de ștergere se reprezintă:
Del(r;<a1a2…an|A1A2…An>).
În cazul când numele de atribute sunt sortate, poate fi utilizată următoarea notație scurtă:
Del(r;<a1a2…an>).
În realitate o parte di informația de mai sus poate fi redundantă pentru determinarea tuplului destinat ștergerii. E suficientă definiția valorilor atributelor cheie. Dacă K=B1B2…Bm este cheia relației r, atunci e utilă următoarea formă a operației Del:
Del(r;<b1b2…bn|B1B2…Bn>).
Rezultatul de ștergere a tuplurilor nu se lasă mult așteptat. Tuplul e eliminat, dacă el este relație. În cazul când tuplul lipsește – relația rămâne intactă. Nu se pune nici o restricție asupra eliminării ultimului tuplu în relație: relația vidă se admite.
Uneori, în loc de eliminarea unui tuplu e mai efectivă schimbarea unei părți a tuplului. Schimbarea se face cu operația de modificare. Dacă C1C2…Ck, A1A2…An, atunci operația de modificare poate avea forma:
Ch(r;<a1a2…an|A1A2…An>;<c1c2…ck|C1C2…Ck>).
Dacă mulțimea K=B1B2…Bm este cheia relației r, atunci expresia de mai sus poate fi redusă la:
Ch(r;< b1b2…bn|B1B2…Bm>;<c1c2…ck|C1C2…Ck>).
Operația de modificare este foarte utilă. Același rezultat poate fi obținut prin intermediul operațiilor de înserare și ștergere sunt specifice și operației modificare.
Operațiile binare asupra relațiilor: uniunea, intersecția și diferența, necesită ca operanzii(relațiile) să fie definiți pe scheme compatibile.
Vom spune că două relații r(R) și s(S) sunt compatibile (sau au scheme compatibile), dacă între R și S există o corespondență biunivocă f: pentru orice atribut A din R, există un atribut B în S încât dom(A)=dom(B), B=f(A) și A=f-1(B), unde f-1 este funcția inversă funcției f.
Uniunea a două relații compatibile r(R) și s(S), notată cu rs, e o relație definită pe schema R sau S și constă din tuplurile ce aparțin relațiilor r sau s, adică
rs = {t | t r t s}.
Operația uniunea posedă proprietățile de asociativitate și de comutativitate.
Intersecția a două relații compatibile r(R) și s(S), notată cu r/s, este o relație definită pe schema R sau S și constă din tuplurile ce aparțin concomitent relațiilor r și s, adică:
r/s = {t | t /r, t /s}.
Diferența a două relații compatibile r(R) și s(S), notată cu r \ s. este o relație definită pe mulțimea de atribute R sau S și are în calitate de tupluri, toate tuplurile din relația r ce nu sunt în s, adică
r \ s = {t | t\r, t\s}
Prin proiectarea bazei de date se subînțelege proiectarea unei scheme logice care ar înlătura apariția unor anomalii în lucrul cu baza de date, asigurând totodată facilități și performanțe sporite la expluatarea ei.
Anomaliile care apar în lucrul cu baza de date sunt cunoscute sub anomalii de actualizare a datelor. Ele sunt puse în legătură cu dependențele care se manifestă între atribute. O asemenea abordare a anomaliilor de actualizare permite caracterizarea riguroasă a gradului de perfecțiune a schemei bazei de date și face posibilă definirea unor tehnici formale de proiectare a unor astfel de scheme.
Anomaliile, care apar se produc datorită dependențelor “nedorite” care se manifestă între atributele din cadrul schemelor relațiilor din baza de date. Aceste dependențe determină creșterea redundanței datelor și reducerea flexibilității structurii bazei de date, făcând extrem de dificil lucrul cu ea.
Prelucrarea datelor o perioadă de timp, cum se întâmplă în bazele de date, poate provoca o serie de probleme personalului responsabil de menținerea integrității datelor. Anomaliile în date cum ar fi datele duplicate sau pierderile de informații pot apărea, dacă datele nu sunt organizate într-un mod rezonabil.
Procesul de normalizare constă în aplicarea unui set de reguli predefinite asupra unei aranjări a datelor cu scopul reducerii structurii complexe și transformării lor în structuri mai mici și stabile ce vor facilita manipularea și menținerea datelor.
La fiecare pas o regulă este aplicată, datele pot fi restructurate și când regula este satisfăcută se spune că datele sunt într-o formă normală.
Deci normalizarea este o abordare formală de analiză și grupare a datelor în structuri mai eficiente ce se pot acomoda viitoarelor actualizări. În afară de aceasta normalizarea minimizează impactul ce poate avea loc asupra aplicațiilor în procesul actualizării bazei de date.
Pentru a produce o bază de date bine proiectată de obicei se pornește de la relații nenormalizate și printr-o serie de pași se descompun structurile de date pentru a obține schema finală a bazei de date.
Unul din scopurile, pe care și le propune să le atingă modelul relațional este eliberarea utilizatorului de a specifica căile de acces la date. Această problemă este cunoscută sub denumirea de problema navigației logice. Însă, dacă baza de date constă din mai multe relații independența navigației logice nu este asigurată.
Formulând o interpelare (cerere) la baza de date ce se referă la mai multe relații din baza de date e comod a interpreta lumea reală ca o singură relație, schema căreia include toate atributele din schemele relațiilor bazei. Această relație se numește relație universală, iar schema ei – schema relației universale sau schema universală.
Modelul relației universale realizează complet independența navigației logice, excluzând astfel definirea unor căi de acces neoptimale din partea unor utilizatori neinițiați. Deci acest model facilitează interacțiunea sistem – utilizator, cerând de la ultimul doar cunoașterea atributelor și semanticii.
2. DESCRIEREA MIJLOACELOR INSTRUMENTALE
2.1. Limbajul HTML – Hipertext Markup Language
Ca descendent al SGML-ului, istoria limbajului HTML debutează cu publicarea în 1986 de către Organizația Internațională pentru Standardizare (ISO) a unui articol întitulat "Information Processing – Text and Office Systems – Standard Generalized Markup Language (SGML)". După trei ani, Tim Berners-Lee de la CERN înaintează o propunere – proiect ce a circulat sub numele de "HyperText and CERN" – de sistem de documente hipertext, denumit în octombrie 1990 World Wide Web. El scrie de asemeni prima aplicație Web, un pachet de server Web rulând pe calculatoare NeXT. În noiembrie 1990, Nicola Pellow începe să conceapă un navigator (browser) text care la sfârșitul aceluiași an era disponibil în cadrul CERN.
În mai 1991, CERN prezintă WWW la seminarul anual și browser-ele în mod linie pentru platforme ca VAX, RS6000 și SUN, care sunt disponibile pe grupurile de știri alt.hypertext, comp.sys.net, comp.text.sgml și comp.mail.multi-media (august 1991).
Dan Connolly se alătură proiectului Web, iar experiența sa în utilitare de documentare on-line și sisteme formale îl ajută să dezvolte specificația pentru HTML. Pe data de 15 ianuarie 1992 apare pentru prima dată, disponibil prin FTP anonim, un browser text conceput de CERN, interpretând noul limbaj HTML, prezentat și la AIHEP'92 – La Londe. Proiectului Web i se alătură Jean-Francois Groff și Carl Barker.
În 1993, primul navigator grafic, numit Mosaic, rulând sub X Window este proiectat de Marc Andreesen și făcut public de NCSA (luna februarie). Mosaic utilizează primul standardul HTML, bazat pe tag-uri, inspirat după SGML.
Urmează ulterior prezentarea standardului HTML 2.0 (IETF RFC 1866) care include abilități de afișare mai precisă a imaginilor, utilizarea de formulare, tabele, tipuri de legaturi etc. HTML 2.0 permite dezvoltarea masivă a Web-ului și toate browser-ele WWW moderne îl suportă fără restricții. În fapt, standardul HTML 2.0 doar pune în ordine anumite facilități practice apărute începând cu anul 1994. Netscape extinde o parte din specificațiile HTML 2.0 în 1996 adăugând o serie de tag-uri utile în versiunea foarte populară Netscape Navigator 2.0.
HTML+ se dorea a fi o încercare de a extinde HTML-ul, prima dată publicată de Dave Raggett în 1993 și prezentată la prima conferință Web în 1994.
O extensie a HTML+ a fost HTML 3.0 care n-a fost niciodată standardizată. Ea a fost propusă de tânărul pe atunci Consorțiu W3, format în 1994 de către CERN și MIT cu scopul de a alcătui un standard viabil al limbajului HTML și de a ghida conceperea de pagini Web.
În luna iulie 1996, consorțiul W3 anunță oficial standardul HTML 3.2 adăugând specificații pentru tabele, imagini, applet-uri, perfect compatibil cu HTML 2.0. În ianuarie 1997, acest standard a fost aprobat și toate navigatoarele recente se așteaptă a se conforma acestui standard.
Proiectanții de navigatoare (ca Netscape și, mai nou, Microsoft) au adăugat diferite facilități care nu apar definite de nici un standard HTML. De exemplu, Netscape Navigator 3.0 oferă posibilități de adăugare de elemente multimedia direct în paginile Web, fundaluri reprezentate de imagini, cadre (frames) etc. plus suport pentru script-uri Java interpretate direct de către client.
Următoarea versiune a HTML-ului dezvoltată de consorțiul W3, denumita Cougar, este standardul HTML 4.0, apărut relativ recent, în anul 1997, care aduce suport pentru accesibilitatea paginilor Web din partea persoanelor cu handicap, foi de stiluri interne, suport lingvistic și pentru formule matematice, evenimente etc. După cum stipulează inventatorul Web-ului și directorul W3C, Tim Berners-Lee: "Cu HTML 4.0, orice aplicație Web va fi independentă de navigator."
HTML 4.0 este disponibil în trei variante:
– HTML 4.0 Strict;
– HTML 4.0 Transitional;
– HTML 4.0 Frameset;
– HTML 4.01 Transitional;
Pentru a asigura fidelitatea și corectitudinea comunicațiilor pe WWW, consorțiul W3 a introdus HTML Validation Service (http://validator.w3.org/) care verifică dacă un anumit document respectă standardul HTML 4.0. În prezent, nu există încă un navigator care să suporte acest standard, dar se așteaptă apariția noilor versiuni care să se conformeze acestuia. De fapt, Tim Berners-Lee declară că HTML 4.0 n-a fost conceput pentru navigatoare ci pentru aplicații viitoare și produse Web.
2.1.1. Prezentare a limbajului HTML
Un document poate fi indentificat prin următoarele caracteristici fundamentale: structură, conținut și formă. Dacă forma de vizualizare este dependentă de programul de afișare a informațiilor conținute de acel document, structura și conținutul său trebuie să aibă un format general de reprezentare, pentru a asigura portabilitatea.
Format:
Formatul se specifică prin HTML, limbaj care conformându-se SGML-ului, acceptă un număr de tag-uri pentru formatarea documentului. Ca și în SGML, tag-urile se încadrează între < și >, putând exista tag-uri de început și de sfârșit. Fișierele HTML sânt fișiere ASCII obișnuite având extensia .html (sau .htm) și sânt divizate în două parți: antetul (head) și corpul (body).
Astfel, o pagină Web marcată cu tag-uri HTML are forma generală:
<html> <!– tag obligatoriu –>
<head> <!– început de antet –>
…
</head> <!– sfârșit de antet –>
<body> <!– început de corp –>
…
</body> <!– sfârșit de corp –>
</html> <!– sfârșit de document –>
Conform specificației HTML 3.2 pentru a fi identificat ca document SGML un fișier HTML trebuie precedat și de linia:
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 3.2 Final//EN>
pentru a putea fi procesat și de analizatoarele SGML.
În cadrul antetului, printre altele, poate apărea titlul documentului (al paginii Web) specificat de tag-ul <title>:
<title>Faculty of Computer Science</title>
De obicei între <head> și </head> apar definiții de rutine scrise în limbaje script (ca JavaScript) pentru a fi siguri că sânt analizate și memorate de navigator (antetul e procesat primul).
Tag-uri:
În cadrul corpului pot apare diverse tag-uri:
• Stil de afișare
<b> (îngroșat), <i> (înclinat), <u> (subliniat), <strong> (intensificat), <big> (mai mare), <small> (mai mic), <sub> (indice), <sup> (exponent), <font> (dimensiune și culoare font), <pre> (text preformatat), <code> (cod sursă), <center> (centrat), <blink> (clipitor)
• Titluri
<h1> … <h6>
• Secțiuni
<div> (diviziuni), <p> (paragrafe), <hr> (linie orizontală), <br> (trecere la linie nouă)
• Liste
<ul> (lista nenumerotată), <ol> (lista numerotată), <li> (element de listă), <dir> (lista de directoare), <menu> (meniu)
• Imagini
<img src>
• Tabele
<table> (început de tabel), <tr> (linie de tabel), <td> (definiție celulă), <th> (antet)
• Legaturi (ancore)
<a href>
• Formulare
<form> (definiție), <input> (câmp de interogare)
• Cadre (frame-uri)
<frameset> (definire), <frame> (cadru), <noframes>
• Suport pentru alte limbaje
<applet>, <script>, <style>
• Suport multimedia
<embed> (extensie Netscape)
• Extensii
<meta>
• Entități speciale
< > & © etc.
2.2. CSS – Cascading Style Sheets
2.2.1. Noțiuni generale
Consortiul W3C dezvoltă și recomandă mai multe specificații care descriu modalitatea în care informațiile sunt afișate, tipărite sau, de ce nu, reprezentate sonor. În aceste specificații sunt prezentate așa numitele „Style Sheets", prin care autorii pot crea look-and-feel-ul dorit, pastrând independența de platforma a documentelor HTML. Ceea ce este foarte important, utilizarea style sheet-urilor oferă creatorilor HTML aproape aceleași posibilități de formatare ca și autorilor din lumea consacrată DTP-ului, fără a fi necesară introducerea de noi taguri HTML.
Cascading Style Sheets formează o parte a acestor specificații și descriu modalitatea prin care se pot atașa documentelor HTML informații de afișare referitoare la fonturi, culori, poziționari în cadrul paginilor s.a.m.d. Dezvoltarea a început în 1994 la CERN, iar în decembrie anul trecut, a fost lansată specificația Cascading Style Sheets 1 ca o recomandare a consorțiului W3C, recomandare ce va conduce la raspândirea largă a specificației.
CSS 1 prezintă un mecanism simplu prin care autorii sau cititorii controlează stilul (fontul, culoarea, spațierea) documentelor HTML. Atributul de „cascading" înseamnă că, atât autorul, cât și cititorul își pot alege anumite stiluri preferate care se suprapun ca într-o cascada.
Există deja navigatoare și editoare HTML care suportă parțial specificația CSS, iar în acest an se așteaptă ca specificația să fie adoptată rapid. Printre navigatoare se numără Internet Explorer 3.0, Netscape Navigator 4.0, Emacs-w3, Arena și Amaya. În categoria editoarelor care suportă CSS intră Amaya, HotDog, HomeSite 2.5, HotMetal, HoTaMale, QuickSite 2.0, JoyHTML, Webmaker și Personal Views.
Crearea de stiluri CSS 1 se realizează prin definirea unor reguli și presupune cunoașterea elementelor de bază din limbajul HTML și din terminologia DTP. Așa cum paginile HTML sunt simple fișiere text, și regulile CSS 1 sunt reprezentate prin fișiere text.
Regulile de definire a stilurilor au urmatoarea forma:
Să luăm următorul fragment de cod, de exemplu, și să-l inserăm în cadrul secțiunii HEAD a unei pagini web.
<style type="text/css">
<!–
BODY {
background-color: white ;
color: black ;
font-face: Arial, Helvetica, sans-serif;
}
–>
</style
Regulile stilului
Font-family
În lumea ideală, toți vizitatorii site-ului ar avea aceleași fonturi încărcate în computerul lor și deci am putea specifica cu încredere numele unui font fiind siguri că browser-ul lor îl recunoaste. În realitate lucrurile stau puțin altfel, fiecare computer având alt set de fonturi încărcate.
Pentru ca Css-urile să aibă efect se specifică o lista de fonturi dorite pentru tagul respectiv, iar browser-ul le va încerca pe toate până la o prima potrivire. Sistemele Windows au în general un font numit Arial, care seamănă cu fontul Helvetica de pe Mac-uri. Este bine ca la sfârșitul unei liste să se specifice un font care există cu siguranță pe computerul ce ne acceseaza site-ul. Se poate alege pentru font unul dintre fonturile generice: serif, sans-serif, monospace, fantasy, cursive. Aceste sunt prezente pe multe computere și deci putem fi destul de siguri că browser-ul le va întelege.
Font-size
Se poate specifica dimensiunea fontului în points (pt), pixeli (px) sau într-o varietate de alte moduri. Se poate specifica "font-style: italic" pentru a face apel la text italic, "font-weight: bold" pentru text bold. Există și posibilitatea de a alege o dimensiune pentru font, în general aceasta se face prin încercări și, în funcție de rezultatul ce apare în diferite browsere, se alege dimensiunea potrivită textului selectat.
Text-transform
Se utilizează pentru a face tot textul cu litere mari sau cu litere mici. Valorile permise sunt uppercase, lowercase, capitalize (title style) și none.
Text-decoration
Această proprietate permite impresionarea vizitatorilor sau aducerea lor în stare de confuzie prin intermediul acelor linkuri nesubliniate și necolorate diferit. Mai sunt și alte valori pentru text-decoration și anume: underline, blink, line-through.
Color
Se poate adăuga culoare textului afișat sau se pot specifica elemente de background cu proprietațile color și background-color.
De exemplu: "B { color:#000000; background-color: #FF0000 }" , va face toate textele incluse în tagul <B> să fie scrise cu negru pe un backgound roșu. Se poate de asemenea specifica o imagine ce să apară ca și background prin proprietatea background-image. Se poate de exemplu specifica doar pentru un paragraf sau un singur element o imagine de background "P { background-image: url(images/image.gif) }".
Alinierea textului
După cum s-a văzut și in exemplul inițial de CSS, s-a utilizat proprietatea text-align pentru a seta preferințele legate de alinierea textului. Acastă aliniere se poate face doar pentru head-ere, liste și paragrafe.
Margini
BODY {
margin-left:10pt;
margin-right: 15pt };
Realizează ca toată pagina să aibă o margine la stânga de 10 points și la dreapta o margine de 15 points. Mai sunt comenzi relative la marginea de sus margin-top sau la marginea de jos margin-bottom.
Borduri
Orice element poate avea o bordură, care poate fi manipulată cu border-width, border-color, border-style. Lățimile se specifică numeric, stilurile pot fi selectate dintre următoarele: dashed, dotted, double, inset, outset, ridge sau solid. Se poate specifica un stil diferit pentru fiecare latură a bordurii.
Se poate pune întrebarea: ce ne facem dacă dorim ca diferite paragrafe să aibă proprietati diferite? Solutia este simplă, pur si simplu se specifică STYLE in-line. De exemplu:
<P STYLE="text-indent: 20pt; color: #660066"> exemplu </P>.
Se poate ușor observa că pentru a specifica pentru fiecare tag in-line stilul utilizat presupune un efort considerabil de tipărit. Există posibilitatea de a utiliza clase într-un mod mult mai eficient. Se definește și se dă nume unui stil în cadrul atributului <CLASS>. Se poate scrie o regulă de felul următor:
.nume{
color:black;
font-family: "gill sans", impact sans-serif
};
Obligatoriu se pune punct în fața numelui stilului la definire. Această definire se face în cadrul tagului <STYLE>!.
Această regulă poate fi învocată ca și atribut în cadrul mai multor taguri astfel:
<P CLASS="nume"> exemplu2 </P>.
Se poate crea un document numai cu definițiile de stiluri și apoi să includem acest document în diverse pagini pentru a crea senzația de unitate. Tot prin această modalitate se poate modifica extrem de ușor look-ul site-ului. Aceste reguli se includ în cadrul unui fișier cu extensia "css", de ex: "stiluri.css". În fiecare pagină ce se dorește a conține regulile specificate în fișierul stiluri.css se va include în cadrul secțiunii HEAD linia următoare:
<LINK REL=stylesheets HREF="stiluri.css" TYPE="text/css">.
2.3. Flash 5.0
Acest software este un produs de firma MACROMEDIA Corp. Există o mulțime de programe derivate produse de aceeași firmă și anume: Dreanweaver, Fireworks, Coldfusion, Flash MX, Authorware, Freehand, etc. Aceste produse au apărut prin anii1995, odată cu apariția posibilității de animare a imaginilor în 2D și elaborarea firmelor în timp real. Acest program poate fi utilizat pentru diferite necesități: poate fi elaborată animație care mai apoi să fie inclusă pe pagină web (pagină dinamică), imaginea poate fi reprezentată ca grafic sau film.
Orice lucrare poate fi salvată ca film sau grafic. Filmul are extensia .swf , iar lucrările grafice extensia .fla. Flash este foarte mult utilizat de programatorii paginilor web. Cu autorul lui pagina web arată mult mai simpatic, se poate de plasat: efecte muzicale, filme, animații, etc.
Flash conține un limbaj de programare propriu numit ACTION SCRIPT, cu ajutorul căruia putem elabora programe care ar rezolva animații mai comlexe.
2.3.1. Modul de plasare a animațiilor pe paginile Web
Acest procedeu nu este atât de complicat și prevede următorii pași:
1. Se salvează fișierul în care se lucrează, apoi se face testarea flmului. Prin acționarea butonului Test Movie din meniul Controls.
2. După ce a fost testat filmul în mapa curentă apare un fișier cu extensia .swf care apoi va fi apelat din programul sursă.
3. Din meniul File alegem opțiunea Publish Settings. Apoi putem defini diferite tipuri de publicare a filmului.
4. Alegem opțiunea html. Dacă în cadrul filmului nu sunt incluse animații adică imaginea este statică atunci putem publica filmul ca imagine .jpg. Calitatea este aceeași și conține mai puțini octeți de memorie în urma comprimării imaginii.
5. Deschidem html-ul format și din meniul View al browers-ul Microsoft Outlook alegem opțiunea Source.
6. Extragem sursa programului din html și o plasăm în site-ul oficial asupra căruia se lucrează. Codul sursă a programelor apar în html în mod automat îndată după ce se efectuează publish din Flash a filmului.
Mai jos este arătat un exemplu ce conține codul programului Flash.
<!–la comanda dumneavoastra –>
<OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0"
WIDTH=210 HEIGHT=150>
<PARAM NAME=movie VALUE="emblema_taxiu.swf"> <PARAM NAME=quality VALUE=high> <PARAM NAME=scale VALUE=exactfit> <PARAM NAME=bgcolor VALUE=#FFFFFF> <EMBED src="emblema_taxiu.swf" quality=high scale=exactfit bgcolor=#FFFFFF WIDTH=210 HEIGHT=150 TYPE="application/x-shockwave-flash" PLUGINSPAGE="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"></EMBED></OBJECT>.
2.4. PHP – Hipertext Preprocessor
2.4.1. Noțiuni generale
Limbajul PHP permite de a crea pagini cu context dinamic. PHP este un limbaj de “scripting” utilizat în fișierele HTML. Scriptul PHP este rulat de a permite programatorilor Web să scrie rapid pagini ce se generează dinamic. Prin intermediul PHP se pot accesa Microsoft SQL Server și baze de date Microsoft ACCES cu ajutorul ODBC. PHP este un limbaj de programare destul de tânar. El a fost creat în 1994 de către programistul Расмусом Лердофом. Chiar de la început limbajul reprezenta în sine CGI-interfața, scrisă pe Perl, care a lucrat pe pagina de acasă a lui Лердофом. Pe urmă autorul a copiat interfata de pe Perl pe C. Toate schimbarile sau înclus în întregul pachet, aparut în anul 1995 și numindu-se Personal Home Page Tools (PHP). El includea în sine cîteva macrosuri folositoare, parțial, se putea de găsit cartea de adrese, contorul și multe altele.
Rasmus Ledorf s-a pasionat serios de baze de date, adăugând interfața sa, mijloace pentru organizarea interpelării favorabile. Programistul de asemenea a scris interfață pentru schimbul comod între bazele de date și formele textuale – Form Interpreter. Unirea lucrarilor trecute și de asemenea descrierea de mai sus a pachetelor sau înclus în crearea PHP/FI (PHP and Form Interpreter). Anume acest limbaj a ramas actual pentru PHP4. În perioada de la 1996-1997 îl foloseau circa 50 mii de WebMasters. În anul 1997 codul limbajului a fost transcris și complectat de Zivom Suranski și Endy Gatmensom – anume ei au creat machetul de bază PHP4.
Principiile de lucru PHP
Oficial el se numește preprocesorul hipertextual. Spre deosebire de Perl, care cerea scrierea programului aparte, PHP lucreaza cu scenariu, aflindu-se în fișierul obișnuit HTML. Cum numai acest script este gasit, el se trimite pe ordonarea intertretorului pe server, care și indeplinește toate instrucțiunile scrise de WebMasters.
Acest mecanism este foarte comod din punct de vedere al programării și este utilizat în cele mai cunoscute limbaje ale serverilor, cum sunt Asp și ColdFusion.
Cu ajutorul PHP se pot crea pagini WEB dinamice, care sunt generate în momentul în care programul utilizator (de exemplu: Nescape) a formulat cererea către serverul de VEB. Serverul de WEB trebuie să aibă activat suportul pentru PHP. Toate fișierele care au extensia .php4 trebuie să fie rulate de către motorul PHP. Fișierele se creează în aceeași manieră ca și fișierele HTML.
Începutul semnalului PHP – scenariul este container-ul
<?… cod …/?>.
Alte însemnări ale PHP-script este exprimarea <?php … cod…/?>,
<script language = “php”>cod</script>.
La determinarea reglării PHP e posibil chiar întrebuințarea tagului asp-lui <%…%>. În total este comod, desigur, de atribuit primul variant, astfel încît el este compact.
Exemplu de pagină cu tag-uri PHP:
<html>
<head>
<title>
PHP Test
</title>
</head>
<body>
<?php echo “Hello World<P>”: ?>
</body>
</html>
Fiecare tag PHP începe cu <? php, se continuă cu propoziția PHP și se închide în partea dreaptă cu ?>. Într-un fișier HTML pot exista un număr nelimitat de tag-uri PHP.
Identificarea tipului de browser o putem vedea în cazul când tipul de browser pe care utilizatorul îl folosește pentru a vizualiza pagina dorită, informațiile pe care browserul le trimite împreună cu cererea pe care o face cître serverul web.
PHP este foarte asemanator cu C – acest limbaj de programare Rasmus Ledorf îl stima și-l aprecia – așa dar, daca voi sunteți cunoscuți măcar cu Java Script, atunci cu comanda PHP nu este atît de greu să te discurci.
Comentarii:
PHP lucrează cu câteva tipuri de date: masive, numere întregi și fracționare, obiecte și șiruri. Una din cele mai importante caracteristici este “database integration layer”. Scrierea paginilor Web cu acces la baze de date este foarte ușor datorită PHP4. Următoarele SCBD-uri pot fi utilizate împreună cu PHP4: Oracle, Adabas D, Sybase, FilePro, mSQL, Velocis, MySQL, Informix, Solid, dBase, ODBC, Unix dbm, PostgreSQL, Interbase.
În limbaj nu se cere descrierea schimbării înaintea începerii lucrului cu ele. În script pur si simplu, se scrie expresia $<variabila>= <valoare> și se întîmpla atribuirea schimbării valorii. Expresia <variabila> se supune acelorași legi, cum și numele în toate limbajele de programare. Elementul <valoare> pentru toate tipurile de date poate fi și negativ și pozitiv, și întelege a șaisprezecea variantă de înscrire a datelor.
În schimbarea elementelor fracționare <valoare> se scrie în forma <valoare intreagă>.<valoare zecimală>. La fel se poate de scris numărul fracționar în formă prescurtată.
Rândurile întotdeauna se termina cu ghilimele duble “” și le împarte după posibilitatea prelucrarii simbolurilor speciale, caracteristic trăsăturii în care se afla în prezența slashului înapoi (back slash).
2.4.2. Sintaxa și gramatica limbajului PHP
Sintaxa PHP este preluată în prealabil din C, Java și Perl.Trecerea din HTML
Se cunosc patru metode de ieșire din HTML și trecerii în “regimul PHP cod”.
Exemplu: Metoda de trecere din HTML.
1. <? echo(“metoda simplă, instrucțiuni prelucrătoare SGML\n”); ?>
2. <?php echo(“la lucru cu documentele XML faceți în felul următor \n”); ?>
3. <script language=”php”> echo (”unii redactori (ca și Front Page)nu acceptă instrucțiunile prelucrate”); </script>;
4. <% echo(“ De la PHP 3.0.4 se poate individual de aplicat tag-ul ASP”); %>
Divizarea instrucției
Instrucțiunile afirmației se divizează tot așa cum în C sau Perl – punct și virgulă. Închiderea tag-ului (?>) de asemenea se subînțelege sfîrșitul afirmării, de aceea următoarea înscriere este echivalentă.
<php
echo “Acesta este un test”;
?>
<php echo“Acesta este un test”?>
Tipuri de variabile
PHP susține următoarele tipuri de variabile:
integer – întregi;
double – număr cu parte fracționară;
string – șirul variabil;
array – masiv;
object – variabilă obiectivă;
pdfdoc – PDF- document (numai în prezența susținerii PDF);
pdfinfo – PDF-info (numai în prezența susținerii PDF).
Tipul variabil obișnuit nu se stabilește de către programator; în locul acestuia, el stabilește în PHP timpul îndeplinirii programului, în dependență de context în care variabila dată este utilizată.
Dacă vă place să indicați tipul variabilei direct, voi puteți utiliza pentru aceasta instrucțiunea cast sau funcția settype().
Variabila poate să se comporte în diferite situații stabilite, în dependență de aceea, ce fel de tip este stabilit pentru ea în timpul dat..
Inițializarea variabilei
Pentru inițializarea variabilei în PHP, pur și simplu îi atribuim ei o valoare. Pentru majoritatea variabilelor aceasta este anume așa; pentru masivuri și variabilelor obiective, totuși se poate utiliza câteva mecanizme.
Inițializarea masivelor
Masivul poate să inițializeze unul din două posibilități: succesiv atribuirea valorilor sau prin construirea instrucțiunii array().
La adăugarea succesivă a valoarii în masiv, vor fi pur fi simplu notate valorile elementelor masivului, utilizând indexul gol. Fiecare valoare următoare va fi adăugată în calitatea ultimului element a masivului.
$names[] = "Jill"; // $names[0] = "Jill"
$names[] = "Jack"; // $names[1] = "Jack"
Cum în C și Perl, elementele masivului se numerotează începând cu 0, dar nu cu 1.
Inițializarea obiectelor
Domeniul variabilei
Domeniul variebilei se află în context, în interiorul căreia ea este determinată. În caz deneral, toate variabilele PHP au un singur domeniu. Însă, înăuntrul funcției este determinat de utilizatori, prezentării domeniului local al funcției. Orice variabilă, determină implicit înăuntru funcției restrângerea domeniului funcției locale.
De exemplu:
$a = 1; /* domeniul global */
Function Test () {
echo $a; /* trecerea pe domeniul variabilei locale */
}
Test ();
Acest script, nu va da ceva la ieșire pentru că instrucțiunea echo se referă la versiunea variabilei locale $a, valoarea căreia se atribuie nu în înăuntrul acestui domeniu. În PHP variabilele globale trebuie să fie declarate în interiorul funcției globale, dacă se presupune utilizarea lor în funcțiile date.
De exemplu:
$a = 1;
$b = 2;
Function Sum () {
global $a, $b;
$b = $a + $b;
}
Sum ();
echo $b;
Descrierea de mai sus a scriptului va da valoarea “3”. Întrucât $a și $b se declară global în înăuntrul funcției, referite pe variabilele date sunt tratate ca referințe la versiunile globale ale lor. Nu există restrângere la numărul variabilelor globale, cu care se poate manipula în înăuntrul funcției. A doua posibilitate de trecere la variabilele din domeniul global este utilizarea determinării masivului special PHP $GLOBALS.
Variabilele în PHP
Formele HTML (GET și POST)
Când programul prelucrării formelor este PHP- script, variabilele acestor forme automat sunt accesibile pentru scriptul dat PHP.
Exemplu: Formele variabilelor simple. <form action=”foo.php3” method=”post”> Name: <input type=”text name”=”name”><br> <input type=”submit”> </form>
La activizarea formei PHP va creea variabila $name, sensul căreia va fi acel conținut, care a fost introdus în câmpul Name: formei date.
PHP de asemenea primește masive în context cu formele variabilelor, dar numai concomitent. De exemplu, putem să grupăm în legături variabilele împreună sau de întrebuințat această caracteristică pentru determinarea semnificației la alegerea a mai multor variabile la ieșire:
Exemplu: Formele variabilelor mai compuse <form action="array.html" method="post"> Name: <input type="text" name="personal[name]"><br> Email: <input type="text" name="personal[email]"><br> Beer: <br> <select multiple name="beer[]"> <option value="warthog">Warthog <option value="guinness">Guinness </select> <input type="submit"> </form>
Directivele configurației serverului
Schimbarea tipului
PHP nu are nevoie de determinare a tipului la anunțarea variabilei, tipul variabilei se determină după context în care ea se folosește. Adică, dacă îi atribuiți o semnificație de șir a variabilei var, var se transformă în șir. Dacă după aceea se atribuie variabilei var semnificația numărului întreg, atunci va fi număr întreg (integer).
Exemplu de transformare automată a tipului PHP poate servi operatorul adunării '+'. Dacă careva din operanzi este număr cu fracție (tip double), atunci după aceasa toți operanzii se apreciază ca și double. Astfel, acești operanzi vor fi interpretați ca integer și rezultatul de asemenea va fi de tip întreg. Specificăm că totodată nu se schimbă tipurile operanzilor, se schimbă doar nota acestor operanzi.
$foo = "0"; // $foo reprezintă șirul (ASCII 48)
$foo++; // $foo reprezintă șirul "1" (ASCII 49)
$foo += 1; // $foo reprezintă întreg(2)
$foo = $foo + 1.3; // $foo are tip double (3.3)
$foo = 5 + "10 Little Piggies"; // $foo este întreg(15)
$foo = 5 + "10 Small Pigs"; // $foo este întreg (15)
Aducerea tipului
Aducerea tipului funcționează în PHP multilateral ca și în C: denumirea tipului folosit se înscrie în paranteze rotunde () înainte de variabila care trebuie să fie adusă la tipul dat.
$foo = 10; // $foo is an integer
$bar = (double) $foo; // $bar is a double
Se permite următoarele aduceri ale tipului:
(int), (integer) – aducerea la întreg
(real), (double), (float) – aducerea la tipul double
(string) – aducerea la șir
(array) – aducerea la masiv
(object) – aducerea la variabilă de obiect
Remarcăm, ca tabularea și spațiile se permit înăuntrul parantezelor rotunde, deaceea următoarele sunt funcțional echivalente:
$foo = (int) $bar;
$foo = ( int ) $bar;
Transformarea șirurilor
Atunci când variabila de șir se prețuiește ca de număr, însemnătatea rezultatului și tipul variabilei se determină în felul următor. Variabila string va fi preluită ca și double,dacă ea conține oricare din simbolurile '.', 'e', sau 'E'.
Manipularea cu masivuri
PHP susține atât masivele scalare cât și asociative. Practic, între ele nu-I nici o diferență. Putem crea masivuri folosind funcțiile list() sau array(), sau poate clar de creat însemnătatea fiecărui element al masivului.
$a[0] = "abc";
$a[1] = "def";
$b["foo"] = 13;
Masivul poate fi sortat cu funcțiile asort(), arsort(), ksort(), rsort(), sort(), uasort(), usort(), și uksort() în dependență de tipul sortării dorite.
Numărarea numărului de elemente este permisă de funcțiile next() și prev(). Alte metode tipice transformării masivului reprezintă folosirea funcției. перемещения по массиву является each().
Orice script PHP este alcătuit succesiv din operatori. Operatorul poate fi atribuit, chemarea funcției, ciclul, expresiilor condiționale sau a expresiei vide.(care nimic nu îndeplinesc) Operatorii de obicei se termină cu punct și virgulă. De asemenea operatorii pot fi grupați în grupuri, închiderea grupurilor de operanzi în paranteze figurate. Grupuri de operatori sunt de asemenea operatori.
Constante
PHP determină câteva constante și acordă mecanismul pentru determinarea constantelor. Constantele sunt asemănătoare variabilelor, dar ele au o mică schimbare a sintaxei.
Constantele predeterminate – sunt __FILE__ and __LINE__, care corespund numelui failului și numărul șirului, care se îndeplinește în timpul de față.
Exemplu: Utilizarea __FILE__ и __LINE__ <?php function report_error($file, $line, $message) { echo "An error occured in $file on line $line: $message."; } report_error(__FILE__,__LINE__, "Something went wrong!"); ?>
Putem determina constantele complimentare cu ajutorul funcției функций define() și undefine() .
Exemplu: Descrierea constantelor <?php define("CONSTANT", "Hello world."); echo CONSTANT; // outputs "Hello world." undefine ("CONSTANT"); ?>
Expresiile
Expresiile – sunt piatră unghiulară în PHP. În PHP apoape tot sunt expresii. Exemple simple sunt constante și variabile. Când scriem , "$a = 5", noi atribuim valoarea'5' variabilei $a. '5' cu alte cuvinte '5' este expresia cu valoarea 5 ( în situația dată '5' este constanta numărului întreg).
PHP susține 3 tipuri scalare de valori: întregi, număr cu virgulă mobilă și șir. PHP susține 2 tipuri de structuri (nescalare): masivuri și obiecte.
Fiecare din aceste valori pot fi atribuite de variabile sau întoarse de funcții. Operatorii de majorare și micșorare sunt variable++ and variable–.
PHP este limbajul orientat pe expresii, practic toate sunt expresii.
În PHP există două tipuri de incrimenți – precedentul și următorul. Și precedenții și următorii incrimenți măresc valorile variabililor și influințiază la variabila indentică. Precedenta mărire, care se notează ca '++$variable', se egalează cu majoritatea variabilelor (PHP mărește variabilele ână când citește valoarea ei).
Expresiile de comparare au valoarea 0 sau1. (înseamnă fals sau true corespunzător) PHP susține: >, >= , =, <, <=. Aceste expresii în general se utilizează în interiorul condiției, de exemplu de operatorul IF. Există încă astfel de expresii – operatorul convențional cu trei operanzi:
$first ? $second : $third
Dacă valoarea primei expresii este adevărată (nu este egală cu zero), atunci se folosește a doua expresie și aceasta este rezultatul convențional al expresiei date. În caz contrar se folosește al treilea operator. Orice expresie nu egală cu zero dar întreagă este TRUE, zero este FALS.
Instrucțiunea IF
Structura IF este una din importantele posibilități a mai multor limbaje, incluzând PHP. Ea permite de organizat îndeplinirea fragmentelor codurilor după condiție. Posibilitatea PHP pe utilizarea expresiei IF este asemănătoare ca în C:
if (expr) statement
Dacă expr este egală cu TRUE, atunci PHP îndeplinește “statement”, dar dacă FALSE – se ignorează.
Următorul exemplu extrage fraza 'a is bigger than b' dacă $a e mai mare ca $b:
if ($a > $b)
print “a is bigger than b”;
Instrucțiunea ELSE
ELSE – mărește posibilitățile IF pe părți prelucrătoare variantelor expresiilor, când ea este egală cu FALSE.
Exemplul dat, extrage fraza 'a is bigger than b' dacă $a e mai mare ca $b, și 'a is NOT bigger than b' în situația contrară:
if ($a > $b) {
print "a is bigger than b";
} else {
print "a is NOT bigger than b";
}
Expresia ELSE se îndeplinește dacă numai expresia IF este egală cu FALSE, dar dacă este construcția ELSEIF – atunci de asemenea sunt egale cu FALSE.
Instrucțiunea ELSEIF
ELSEIF, este combinația IF, ELSE. ELSEIF cum și ELSE permite îndeplinirea expresiei dacă valoarea IF este egală cu FALSE, dar spre deosebire de ELSE ea îndeplinește numai dacă expresia ELSEIF este egală cu TRUE. Exemplul următor extrage 'a is bigger than b' dacă $a>$b, 'a is equal to b' dacă $a==$b, și 'a is smaller than b' dacă $a<$b:
if ($a > $b) {
print "a is bigger than b";
} elseif ($a == $b) {
print "a is equal to b";
} else {
print "a is smaller than b";
}
Expresia ELSEIF va fi îndeplinită numai dacă expresia IF precedentele ELSEIF sunt egale cu FALSE, dar ELSEIF date sunt egale cu TRUE.
Instrucțiunea WHILE
Ciclul WHILE – cel mai simplu tip a ciclului în PHP4. El funcționează ca și C.forma principală a operatorului WHILE:
WHILE(expr) statement
Instrucțiunea DO..WHILE
Ciclul DO..WHILE este asemănător cu WHILE cu excepția că, această însemnătate a expresiei logice se verifică nu până ci după, terminarea interației.
Exemplu:
$i = 0;
do {
print $i;
} while ($i>0);
Acest ciclu se execută odată, deoarece după terminarea interației se va verifica însemnătatea expresiei logice,iar ea este egală cu FALSE ($i nu mai mare ca 0), și ciclu va fi finisat.
Instrucțiunea FOR
Ciclul FOR este cel mai puternic ciclu în PHP. El lucrează ca și analogul în C. Sintaxa ciclului FOR este:
FOR (expr1; expr2; expr3) statement
Prima expresie se execută înaintea ciclului. Înaintea fiecării interații se execută expr2. Dacă ea este egală cu TRUE atunci ciclu se va prelungi și se vor executa operatorii integrați. Dacă el este egal cu FALSE, atunci ciclul este întrerupt, finalul din aceste expresii se execută espresia 3.
Exemplu:
for ($i = 1; $i <= 10; $i++) {
print $i;
}
Instrucțiunea BREAK
BREAK – întrerupe executarea ciclului trecut.
Exemplu:
$i = 0;
while ($i < 10) {
if ($arr[$i] == "stop") {
break;
}
$i++;
}
Instrucțiunea CONTINUE
CONTINUE – trece la începutul ciclului apropiat.
Exemplu:
while (list($key,$value) = each($arr)) {
if ($key % 2) { // skip even members
continue;
}
do_something_odd ($value);
}
Instrucțiunea SWITCH
Operatorul SWITCH se aseamănă cu grupul de operatori IF cu aceeași expresie. SWITCH execută fiecare operator unul după altul. La început codul nu se execută. PHP continuă execuția operatorilor până la sfârșitul blocului SWITCH sau până nu va întâlni operatorul BREAK. Dacă nu vom scri Break la sfârșitul ciclului, atunci PHP va continua să execute operatorii și a următorului SWITCH.
Exemplu:
switch ($i) {
case 0:
print "i equals 0";
break;
case 1:
print "i equals 1";
break;
case 2:
print "i equals 2";
break;
}
Instrucțiunea REQUIRE
Operatorul REQUIRE înlocuieștepe sine cu conținutul fișierului, asemănător #include din C. cuзаменяет себя содержимым указанного файла, похоже на то,как в препроцессоре C работает #include. Aceasta înseamnă că nu putem require() în mijlocul fișierului dat. Folosiți INCLUDE require ('header.inc');
Instrucțiunea INCLUDE
Operatorul INCLUDE întroduce și execută conținutul fișierului dat. Aceast se întîmplă de fiecare dată când se întâlnește operatorul INCLUDE, așa că putem include acest operator înăuntrul ciclului pentru a conecta câteva fișiere.
Exemplu:
$files = array ('first.inc', 'second.inc', 'third.inc');
for ($i = 0; $i < count($files); $i++) {
include($files[$i]);
}
FUNCTION
Funcția poate fi definită în modul următor:
Exemplu:
function foo ($arg_1, $arg_2, …, $arg_n) {
echo "Example function.\n";
return $retval;
}
În interiorul funcției poate fi oricare cod corect PHP4, ori chiar dacă este declarată altă funcție sau clasă.
Întoarcerea rezultatelor
Rezultatele se întorc prin operatorul return. Rezultatul întors poate fi de orice tip, incluzând liste și obiecte.
Exemplu:
function my_sqrt ($num) {
return $num * $num;
}
2.5. Sisteme de gestiune a bazelor de date MySQL
2.5.1. Noțiuni generale
MySQL a fost elaborat de către Michael Widenius. El reprezintă un SGBD destul de mic după marime și destul de rapid și relațional fondat pe tradițiile Huges Technologies Mini SQL (mSQL).
Cele mai îmbucurătore facilități implementate în pachetul MySQL sunt :
1. Multithread – Posibilitatea de a efectua simultan mai multe comenzi SQL.
2. Optimizarea legăturilor și cuplarea mai multor date la un singur proces de cerere.
3. Driverul ODBC este furnizat în complect cu pachetul MySQL.
4. Un sistem flexibil de previlegiere și a parolelor.
5. Până la 16 chei în tabelă. Fiecare chee poate fi compusă din maximum 15 câmpuri.
6. Susținerea numerelor cu o lungime de la 1 pâna la 4 biti (ints, float, double, fixed), stringuri cu o marime variabilă, etc.
7. Este concepută pe thread-uri, o repartizare a memoriei rapidă.
8. Toate datele se păstrează în formatul ISO8859_1.
9. Toate operațiile lucrului cu stringuri nu atrag atenție la regiștrii simbolurilor în prelucrarea stringurilor.
10. Pseudonimele sunt aplicate atât pentru tabele, cât și pentru coloane în parte.
11. Toate câmpurile au valoare predefinită.Ușurința de lucrul și manevrare a tabelelor – este ușor de adăiuga sau a elimina orice chee și câmp.
Acest SGBD are ca baza limbajul SQL – Structured Querz Languages (limbaj de interogare).
2.5.2. Sintaxa limbajului SQL
Acest capitol realizează o introducere în limbajul de interogare utilizat pentru a accesa o bază de date MySQL. Mulțimea comenzilor SQL sunt conturate ca blocuri de interogare de bază. În particular, noi discutăm declarațiile SQL folosite la:
– execuția calculelor;
– specificarea alternativă a capetelor de coloană;
– concatenarea coloanelor;
– sortarea rîndurilor;
– introducerea criteriilor de căutare.
Privire de ansamblu asupra SQL
Un sistem de management al bazei de date necesită un limbaj de interogare pentru a permite utilizatorului să acceseze datele, SQL (limbaj de interogare structurată) este limbajul utilizat de majoritatea sistemelor de bază de date relațional.
Limbajul SQL a fost dezvoltat într-un prototip de sistem de management a bazelor de date relaționale – System R -de IBM la mijlocul anilor 1970.În 1979, Corporația Oracle introduce prima implementare a SQL în varianta comercială.
Trăsături caracteristice SQL
SQL este un limbaj neprocedural: specifică ce informații dorești, dar nu cum să le obții.Cu alte cuvinte SQL nu îți cere să specifici metoda de acces la date.Toate cererile SQL folosesc optimizarea cererilor- o parte a RDBMS – pentru a determina rapid remedierea datelor specificate. Aceste trăsături ușurează obținerea rezultatelor dorite.
Procesarea SQL asupra înregistrărilor nu se poate face decât asupra unei singure înregistrări la un moment dat.Cea mai comună formă a unui set de înregistrări este un tabel.
SQL poate fi folosit de un șir de utilizatori încluzând DBA, programatori de aplicații, personal de management și multe alte tipuri de utilizatori.
SQL pune la dispoziție comenzi pentru o varietate de tascuri încluzând:
date interogate; înserarea, extragerea și ștergerea rândurilor într-un tabel; crearea, modificarea și ștergerea obiectelor de tip bază de date; controlul accesului la baza de date și la obiectele de tip bază de date; garantarea consistenței bazei de date.
2.5.3. Comenzile limbajului SQL
SELECT – este comanda cea mai utilizată, este folosită pentru obținerea datelor din bazele de date;
INSERT, UPDATE, DELETE – aceste trei comenzi sunt utilizate pentru a introduce noi rânduri, pentru a schimba rândurile existente și ștergerea rândurilor nedorite din tabelele bazelor de date respective. (Ele sunt cunoscute în ansamblu ca DML sau comenzi ale limbajului de manipulare a datelor.)
CREATE, ALTER, DROP – aceste trei comenzi sunt utilizate dinamic pentru a crea, utiliza și șterge orice structură de date, de exemplu, tabele, expuneri, indecși. (Ele sunt cunoscute sub numele colectiv DDL sau comenzi ale limbajelor de definire a datelor).
GRANT, REVOKE – aceste două comenzi sunt utilizate pentru a da sau a lua drepturile de acces pentru bazele de date și structurile din Oracle.
Acestea sunt o parte a comenzilor SQL.
Scrierea comenzilor SQL
Când scriem comenzi SQL, este important să ne reamintim câteva reguli simple pentru construirea unor declarații valide care sunt și ușor de citit și de editat:
Comenzile SQL pot fi pe una sau mai multe linii;
Clauzele sunt uzual plasate pe linii separate;
Tabelarea poate fi folosită;
Cuvintele de comandă nu pot fi separate pe mai multe linii;
Comenzile SQL nu sunt “case sensitive”;
Comandă SQL este introdusă la promptul SQL și liniile subsecvențelor sunt numărate;
O singură declarație poate fi considerată curentă cât timp ea este în buffer și poate fi rulată într-un număr de moduri:
– plasând un punct și virgulă (;) la sfârșitul ultimei clauze;
– plasând un punct și virgulă/slash la ultima linie în buffer;
– plasând un slash(/) la promptul SQL;
– scriind un R[UN] (comanda SQL) la promptul SQL.
Fiecare din următoarele declarații sunt valide:
SELECT * FROM denumirea_tabelului;
Blocul de interogare de bază
Declarația SELECT regăsește informația din baza de date implementând toți operatorii din algebra relațională.
În cele mai simple forme trebuie să conțină:
1. O clauză SELECT, care listează coloanele pentru afișare astfel încât este esențială o proiecție.
O clauză FROM care specifică tabela implicată.
Este posibil să se includă și alte elemente în clauza SELECT.
Expresii aritmetice;
Alias-uri de coloane;
Coloane concatenate;
Literali.
Toate aceste opțiuni ajută utilizatorul să ceară date și să le manipuleze în funcție de scopurile interogării; de exemplu, execuția calculelor, legarea coloanelor împreună, sau afișarea șirurilor de litere din text.
Aliasuri de coloană
Când se afișează rezultatul unei interogări, SQL*Plus în mod normal utilizează numele coloanelor selectate ca titlu. În multe cazuri acest nume poate fi criptic sau fară înțeles.
Putem schimba un titlu de coloană utilizând un 'ALIAS'.
Un alias de coloană dă unei coloane un nume de titlu alternativ la ieșire.
Într-o declarație SQL, un alis de coloană poate fi utilizat numai în clauza SELECT.
Operatorul de concatenare
Operatorul de concatenare (||) permite coloanelor să fie legate cu alte coloane, expresiilor aritmetice sau valorilor constante să creeze o expresie de caractere.
Coloanele din cealaltă parte a operatorului sunt combinate pentru a obține o singură coloană.
2.5.3.1. Operatori SQL
Sunt patru operatori SQL care operează pe toate tipurile de date:
Operator Semnificație
BETWEEN..AND… între două valori(inclusiv)
IN(list) compară cu o listă de valori
LIKE compară cu un model de tip caracter
IS NULL estе o valoare nulă
Operatorul BETWEEN
Realizează teste pentru valori între, și inclusiv, o valoare minimă și o valoare maximă.
Presupunând că dorim să vedem angajații ai căror salariu este între 1000 și 2000:
Exemplu:
SELECT ENAME, SAL
FROM EMP
WHERE SAL BETWEEN 1000 AND 2000;
De notat că valorile specificate sunt inclusive și că limita minimă trebuie specificată prima.
Operatorul IN
Testează valorile dintr-o lista specificată.
Presupunem că dorim să găsim angajații care au unul din cele trei numere de marcă(MGR):
Exemplu:
SELECT EMPNO, ENAME, SAL, MGR
FROM EMP
WHERE MGR IN (7902,7566,7788);
Dacă caracterele sau datele calendaristice sunt utilizate, ele trebuie întroduse între ghilimele(' ').
Operatorul LIKE
Uneori nu se cunosc valorile exacte pe care le căutăm. Utilizând operatorul LIKE este posibil să selectăm rândurile care se potrivesc cu un model specificat de caractere.Operația de petter-matching a caracterelor poate fi asemanata cu o căutare 'wild-card'. Două simboluri se pot utiliza la construirea șirului de căutare.
Simbol Reprezentare
% orice secvență de zero sau mai multe caractere
– un singur caracter oarecare
Pentru a lista toți angajații al căror nume începe cu un S, întroduceți:
Exemplu:
SELECT ENAME
FROM EMP
WHERE ENAME LIKE 'S%';
Caracterul '_' poate fi utilizat pentru căutarea unui anumit număr de caractere.
Semnele '%' și '_' pot fi utilizate în orice combinație de caractere.
Operatorul IS NULL
Operatorul IS NULL face teste specifice pentru valorile care sunt NULL.
Exemplu:
SELECT ENAME,MGR
FROM EMP
WHERE MGR IS NULL;
Negarea expresiilor
Urmatorii operatori fac teste de negație:
Operator Descriere
!= diferit de(VAX,UNIX,PC)
^= diferit de(IBM)
<> diferit de(toate o/s)
3. DESCRIEREA SISTEMULUI REALIZAT
3.1. Argumentarea necesității elaborării proiectului
Dezvoltarea rapidă a tehnologiei World Wide Web, tehnologie care stă la baza gestiunii și circulației documentelor în Internet, propune o nouă abordare a sistemelor informatice și o reconsiderare a tehnologiilor și relațiilor din sfera mecanismelor comerciale.
Rețeaua globală a cucerit o așa mare popularitate în rândurile utilizatorilor Internet, în lumea bussines-ului, științei, politicii, ș.a., încât majoritatea companiilor sunt dispuse de ași plasa informațiile despre produsele și serviciile ce le oferă rețeaua Internet spre atenția milioanelor de utilizatori. Plus la aceasta în ultimul timp o mare atenție se acordă sistemelor complexe de prezentare a produselor și a serviciilor, care facilitează lucrul nu numai clienților ci chiar și a colaboratorilor firmelor, adica se acordă o mare atenție elaborării produselor complexe compuse din programul client (în cazul nostru pagina Web) și programul administrator. De obicei, în marea majoritate a cazurilor, programul administrator este elaborat într-un mediu visual de programare (Delphi, Visual C++, Borlan C++ etc).
Avantajele utilizării Internet în afacerile economice a unei firmei:
1. Creșterea considerabilă a dinamismului afacerilor.
2. Lărgirea pieței de desfacere a produselor și serviciilor.
3. Facilitarea regăsirii produselor și serviciilor.
4. Reducerea termenului de realizare a afacerilor.
5. Reducerea cheltuielilor de realizare a afacerilor (de aproximativ 10 ori).
3.2. Funcțiile sistemului realizat
Sistemul elaborat este un sistem compus alcătuit din 2 părți total diferite:
– pagina Web al firmei taxi-service-907;
– baza de date.
Pagina Web este menită de a aduce la cunoștința utilizatorilor toată informația despre serviciile propuse de întreprinderii în cauză, iar administratorul paginii va face careva modificări asupra paginii doar dacă va necesar, de exemplu, pentru a adăuga servicii noi, etc.
Baza de date este elaborată în scopul organizării mai efective a informațiilor existente. Permite adăugarea, ștergerea, găsirea, modificarea datelor din BD.
3.2.1. Descrierea paginii Web : Taxi -service
Site-ul Web al întreprinderii în cauză a fost creat în conformitate cu cerințele utilizatorilor. Designul lui a fost conceput după analiza logotipului firmei, iar în calitate de suport al datelor am folosit sistemul de gestiune al bazelor de date MySQL. Este un site flexibil ce corespunde cerințelor de astăzi, realizat cu ajutorul limbajului PHP. La intrarea pe site utilizatorului i se propun spre atenție atât ultimile știri (apariția spre vânzare a unui nou produs etc.), cât și un meniu de navigare.
În anexa 2 este inclusă fațeta generală (meniul informațional) a paginii Web a firmei.
Numele domeniului paginii Web pe Internet este taxi-service.md.
Pagina oficială permite următoarele două posibilități (fig.3.1):
1. Comandare taxi.
2. Închiriere taxi.
Comandarea taxi-maxi permite clienților de a comanda taxi la momentul dat al timpului (acum).
Închiriere taxi-maxi cuprinde opțiuni semnificative:
1. Oferă posibilitatea de a brona auto-taxi pentru oricare zi din lună . Pentru acesta clientul trebuie să completeze un formular în care va înscrie numele (opțional), adresa personală (obligatoriu), telefonul sau telefonul mobil (obligatoriu), ora, data, un mesaj, adresa destinației.
În caz dacă formularul a fost transmis pe server însă nu a completat corect toate câmpurile obligatorii, atunci clientul trebuie să recompleteze din nou formularul returnat.
În fig.3.2 este arătat formularul ce trebuie completat.
Fig.3.1 Meniul comandării sau închirierii unui taxi
Cererea va fi stocată pe server până la parvenirea datei pentru care sa comandat, apoi înregistrarea se șterge din BD.
Dacă clientul se află în Internet Club atunci el poate scrie în dreptul câmpului mesaj, un mesaj scurt prin care va specifica adresa sau denumirea Internet Club-ului în care el se găsește.
2. La preferință clientul poate să-și aleagă la comandă automobilul dorit – alegând din cele trei auto: VAZ, GAZ sau Hyundai.
Automobilele Hyundai sunt utilizate ca taxi și rutiere care circulă pe ruta cu nr.8.
De asemenea în dreptul câmpului mesaj se poate de înscris de exemplu astfel de cerințe:
– să indice câte auto-taxi să vină la destinație (dacă sunt mai mulți de 3 persoane);
– să indice codul – firma taxi-service rezervează coduri tuturor clienților care utilizează frecvent serviciile firmei. Înscriind codul – fără nici o bănuială comanda va fi efectuată, pentru că se știe că este un client de-al lor cunoscut;
– să transmită mesaje sau să pună întrebări dacă au parvenit careva neregularități.
Fig. 3.2 Model de completare a formularului.
În meniul principal sunt incluse și alte servicii ca:
– servicii auxiliare – sun tinscrise toate serviciile suplimentare de care dispune firma;
– istoria taxi – sunt acumulate informațiile apariției firmei, evenimentele și succesele cele mai notabile înscrise pe parcursul întregii activițăți ale firmei;
– concursuri și premii – spre atenția clienților aici sunt prevăzute diferite concursuri interactive;
– help – ghidul utilizatorului. Este desris modul de pezentare și administrare a informației existentă pe site-ul oficial. Aici sunt prevăzute și drepturile de autor.
3.2.2. Descrierea programului administrator
Programul administrator a fost elaborat în Microsoft Access. Acest program prevede elaborarea unei baze de date pentru firma taxi-service. Firma dată este foarte mare și complexă , de aceia baza de date a fost elaborată doar în unele secții.
În anexa 4 este prezentată shema generală a firmei. Baza de date a fost proiectată pentru următoarele servicii:
– vizualizarea personalului;
– vizualizarea arhivei personalului, aici sunt stocate toate înregistrările (persoanele care au lucrat deja la firmă și nu ai lucrează în prezent);
– adăugarea personal;
– găsire a unei înregistrări;
– ștergere a unei înregistrări;
– vizualizarea claselor de automobile;
– vizualizarea arhivei de automobile;
Mai jos în fig.3.1, este afișată interfața de gestionare a bazei de date.
Microsoft Access permite plasarea parolei de acces pentru baza de date creată. Este un mijloc de contracarare a utilizatorilor neautorizați conta informațiilor personale ale firmei.
Fig. 3.1 Interfața bazei de date
În tabelele 3.1 și 3.2 sunt aduse două tabele: Personalul și Automobilul create în Microsoft Access din baza de date taxi-service. Forma acestor tabele este tabelară – aici se poate de a adăuga, șterge sau modfica înregistrările necesare. În fig.3.2 este prezentat un tabel (Personalul firmei) într-un meniu formal care este apelat prin intermediul macros-ilor.
Elaborarea bazei de date în M. Access este desttul de comodă și simplă. Majoritatea utilitarele sunt deja formate, trebuie doar să fie apelate corect și tilizat acolo unde este nevoie.
Microsoft Access recunoaște limbajele SQL. În principiu toate interogările (Queries) sunt formate pe baza limbajelor operatorilor SQL. Orice bază de date formată în Microsoft Access este susținută de alte limbaje de programare cum ar fi: Borland Delphi, C++ Builder, MS Front, etc.
Tabelul 3.1
Personalul firmei
Tabelul 3.2
Automobile
Fig. 3.2 Interfața tabelului inclus în forme Access.
=== PROTECTIA_MUNCII ===
5. PROTECȚIA MUNCII
5.1. Introducere
Protecția muncii (PM) reprezintă un sistem de măsuri și mijloace social-economice organizatorice, tehnice și profilactice care acționează în baza actelor legislative și a altor acte normative. Prin hotărârea parlamentului Republicii Moldova, legea cu privire la protecția muncii a fost pusă în aplicare la 1 august 1991.
Legea conține 5 capitole:
1. Dispoziții generale.
2. Garanții în executarea dreptului angajaților.
3. Asigurarea tehnică-organizatorică a PM și finanțarea ei.
4. Supravegherea și controlul asupra respectării legislației în Republica Moldova.
Protecția muncii conține următoarele compartimente:
1. Legislația în domeniul PM.
2. Sanitarea în producție și igiena muncii.
3. Tehnica securității.
4. Securitatea antiincendiară.
Sanitarea în producție și igiena muncii – reprezintă un sistem de măsuri organizatorice și tehnice care au scop reducerea factorilor nocivi sau dăunători și prevenirea îmbolnăvirilor profesionale.
Tehnica securității – reprezintă metodele și mijloacele de protecție a angajaților.
Funcțiile serviciului de PM sunt:
1. Elaborarea și realizarea planurilor de perspectivă și anuale de îmbunătățire a condițiilor de muncă și asigurare a PM.
2. Controlul și supravegherea asupra respectării normelor de PM la întreprindere.
3. Instructajul pe tehnica securității a angajaților la întreprindere.
4. Avizarea locurilor de muncă din punct de vedere a respectării normelor și standardelor.
5. Participarea specialiștilor în PM la încheierea acordului între administrație și comitetul sindical (participarea la finanțarea lucrărilor de PM).
6. Cercetarea și evidența accidentelor de muncă.
7. Analiza condițiilor și accidentelor de muncă și a îmbolnăvirilor profesionale.
5.2. Analiza și aprecierea condițiilor de muncă
Analiza stării PM permite evidențierea factorilor de producție periculoși și contribuie la prevenirea cazurilor de îmbolnăviri profesionale. Metodele de analiză a stării PM reprezintă în sine totalitatea mijloacelor și metodelor utilizate la depistarea și aprecierea factorilor de producție. Clasificarea igienică a muncii oferă posibilitatea de a aprecia condițiile și caracterul muncii la locul de muncă. Clasificarea este construită pe baza indicatorilor periculoși (negativi) a mediului ambiant.
Condițiile diferențiale și caracterul muncii prevăd limitele de abatere a parametrilor sferei de activitate contra normativelor igienice, de asemenea, influențelor asupra stării funcționale și sănătatea angajaților.
Conform acestor indicatori deosebim trei clase de condiții și caractere de muncă.
I clasă – condițiile optimale, în care sunt excluse acțiunile negative asupra angajaților.
II clasă – condițiile permise, în care nivelul factorilor de producție nu depășesc normativele igienice determinate la locurile de muncă iar schimbările funcționale se regenerează în timpul repausului lucrului de zi.
III clasă – condițiile periculoase și negative în care nu au fost vizate toate normele sanitaro-igienice.
Una din funcțiile principale a protecției muncii este crearea și supravegherea condițiilor favorabile și de siguranță națională pentru angajații la locul de muncă. Securitatea muncii – este principala obligativitate a conducătorilor întreprinderilor de a asigura angajații întreprinderii de la acțiunea factorilor negativi și dăunători sănătății.
Conform art.19 a legii cu privire la organizarea lucrului de PM și pentru executarea controlului asupra respectării de către toți angajații a legislației normelor și regulilor de PM, la întreprinderi se formează servicii de PM. La întreprinderile care au mai mult de 50 de angajați se introduce funcția de specialist în PM, inginer de PM sau inginer superior.
În procesul de muncă omul se află în condiții bine determinate. Persoana dată utilizează diferite obiecte și mijloace necesare lucrului, se află permanent în convorbiri cu cei din jurul său, ceea ce este un factor pozitiv și nu lasă amprente negative asupra psihicului, etc., însă există și alți factori care influențează într-un mod diferit – negativ. Procesul de muncă este determinat în mare măsură de starea psihică și starea emoțională în care se află lucrătorul. Ambele sunt prezente și influențează diferit, în dependență de seriozitatea și complexitatea lucrului, mai mult decât atât, care necesită concentrare sporită și efort considerabil la efectuarea cerințelor profesionale.
5.3. Factorii dăunători și periculoși la locul de lucru
Totalitatea factorilor ai mediului de producție, care influențează condițiile de muncă a omului în procesul de lucru formează condițiile de muncă. Condițiile de muncă se formează în rezultatul interacțiunii a mai multor factori naturali, social-economici, tehnici și organizatorici. Problema îmbunătățirii condițiilor de muncă se formează și trebuie rezolvată la toate etapele proiectării lucrării de cercetare și exploatare a utilajelor și proceselor tehnologice. Necesitatea de a îmbunătăți condițiile de muncă și de a ridica nivelul tehnic de producere este una din problemele de bază ale societății.
Este necesar de a proiecta, construi și introduce în procesul de producție doar utilajele și tehnologii necesare, care asigură formarea condițiilor de muncă favorabile. Astfel e posibil crearea condițiilor favorabile pentru protejarea sănătății lucrătorilor, evitarea accidentelor, ridicarea eficienței economice și nivelului de trai a oamenilor.
Etapa inițială a analizei condițiilor de muncă constă în determinarea factorilor dăunători și periculoși și acțiunea lor asupra organismului uman.
Factorul periculos (în producție) – se numește factorul de risc, care duce la vătămarea organismului uman sau la o înrăutățire bruscă a stării sănătății. Factorii periculoși produc vătămarea organismului în timp foarte scurt, uneori zecimi de secunde.
Factor nociv – se numește factorul de risc, acțiunea căruia asupra organismului uman aduce treptat la o îmbolnăvire profesională sau la o scădere bruscă a stării de lucru. Îmbolnăvirea profesională se manifestă asupra organismului uman într-un timp foarte îndelungat 3-5 ani și mai mult. Standardele naționale ce reglementează normele admise la întreprinderi a factorilor periculoși și nocivi sunt:
1. Factorii periculoși – STAS 12.0.002-82.
2. Factorii nocivi – STAS 12.0.003-79.
Factorii dăunători și periculoși se împart în patru clase: factorii fizici, chimici, biologici și psiho-fiziologici.
Factorii fizici – caracterizează procesul tehnologic sau utilajul industrial, la care se referă temperatura majorată a aerului, părțile mobile ale utilajelor, părțile agravate ale utilajelor, lucrul la înălțime, diferite tipuri de radiații.
Factorii chimici – caracterizează mediul înconjurător, la care se referă prăfuirea mediului, existența substanțelor periculoase în aer, umiditatea, etc.
Factorii biologici – sunt microorganismele biologice (plantele și animalele).
Factorii psiho-fiziologici – reprezintă supraîncărcările fizice (statice și dinamice) și supraîncărcările mintale și emoționale.
Analiza condițiilor de lucru și aprecierea factorilor dăunători se efectuează conform cerințelor și standardelor elaborate special de comisiile pentru Tehnica Securității, care sunt ca criterii de bază pentru analiza condițiilor la locul de lucru.
Tabelul 5.1
Factorii dăunători și periculoși la locul de lucru
Studierea numai a metodelor de securitate a persoanelor contra factorilor negativi necesită un timp îndelungat și este foarte complex. Astfel în prezent există sisteme de securizare moderne, compatibile pentru toate sferele de activitate a angajaților la diferite întreprinderi, în care sunt incluse toate observațiile și cerințele prealabile.
Odată cu dezvoltarea noilor tehnologii și modernizarea lor, cerințele asigurării protecției persoanei se cer a fi cât mai fiabile și flexibile din punct de vedere al modului de conducere și moderne din punct de vedere al metodelor de instruire, supraveghere și securizare a persoanelor. Astfel metodele de abordare a securității trebuie să corespundă cu nivel de modernizare a utilajelor sau instalațiilor utilizate.
Un sistem de activitate vitală este considerat eficient, dacă acest sistem comprimă în sine toate aspectele factorilor de natură fizice, chimice, naturale și umane și vizează metodele de evitare a riscurilor de accidente și a factorilor negativi în procesul de muncă. Fiecare tehnologie nouă are sistemul său propriu de securizare a muncii.
5.4. Etapele de elaborare a analizei unui sistem de securizare a muncii
Prima etapă prevede descrierea abstractizată a sistemului adică, se determină scopurile prevăzute din start, parametrii de intrare și ieșire, procesele de funcționare și restricțiile modelării, anticiparea reacțiilor negative ce pot apărea pe parcursul modelării analizei.
La pasul doi se efectuează analiza propriu-zisă adică, se stabilesc dependențele la modificarea parametrilor în diferite stări (cazuri) a sistemului.
La etapa finală se aleg criteriile și se efectuează optimizarea sistemului.
Conform rezultatelor finale obținute se proiectează sistemul deja sintetizat , se verifică toate variantele posibile și cea mai optimală dintre ele se alege.
5.5. Controlul protecției muncii
Controlul Protecției muncii, este asigurată legislativ, material, organizatoric și științific. Asigurarea legislativă este bazată pe existența legilor adoptate de parlamentul Republicii Moldova, regulamente, diverse articole în domeniul protecției muncii.
Conform legii la fiecare întreprindere se formează conturi bancare speciale pentru elaborarea măsurilor de ameliorare a condițiilor de muncă – aceasta este asigurarea materială.
Este interzis de a folosi aceste fonduri în alte scopuri. Înnoirea tehnicii conduce la apariția factorilor noi. Pentru cercetarea acțiunii lor asupra organismului uman există diferite instituții și catedre – asigurarea științifică. Sindicatele reprezintă fonduri speciale, pe lângă contractul colectiv, elaborează o convenție de măsuri de ameliorare a condițiilor de muncă.
Controlul stării protecției muncii se efectuează în trei etape:
Inginerul laboratorului și instructorul obștesc de la sindicate controlează starea protecției muncii în laboratorul dat în fiecare zi vizual.
Șeful catedrei, împreună cu președintele comisiei de protecție a muncii al laboratorului controlează o dată pe săptămână starea laboratorului dat.
În laborator se efectuează instructajul angajaților pe protecția muncii.
Există următoarele tipuri de instructaj:
1. Introductiv – se efectuează de inginerul tehnicii securității.
2. Periodic – se efectuează de inginerul laboratorului o dată în șase luni.
3. Neplanificat – se efectuează atunci când s–a produs accidentul la locul de muncă, când angajatul s–a transferat la un alt loc de muncă sau s–a schimbat procesul de studiu.
4. Curent – se efectuează înainte de lucrările de autorizare.
Starea nivelului de protecție a muncii în laborator poate fi calculat cu ajutorul coeficientului nivelului de respectare a regulilor de protecție a muncii de către lucrători:
.
5.6. Activitatea persoanelor oficiale
Conform art.33, a legii cu privire la activitatea persoanelor oficiale, persoanele oficiale poartă răspundere disciplinară, administrativă, materială și penală.
Responsabilitatea disciplinară – prevede pedepse conform ordinului conducătorului întreprinderii, mustrare aspră și transferarea la un lucru mai puțin plătit pe un termen de trei luni.
Responsabilitatea administrativă – prevede amenzi în mărime de până la 10 salarii minime. Dreptul de a amenda au numai persoanele care exercită supravegherea și controlul de stat.
Responsabilitatea penală – prevede pedeapsă conform sentinței judiciare, muncă corecțională pe un termen de până la un an, eliberarea din post și privațiune de libertate pe un termen de până la 5 ani.
Responsabilitatea materială – daunele materiale sunt impuse persoanelor responsabili de evitarea situațiilor contraindicate în favoarea păgubitului. Mărimea compensațiilor pentru daunele pricinuite sunt în dependență de starea în care se află persoana păgubită, iar cheltuielile materiale (inumane) sunt acoperite de către administrația întreprinderii.
5.7. Descrierea condițiilor de muncă la întreprindere
Întreprinderea “ S.A Taxi-Service – 907” este întreprindere de stat. Locul de muncă a fost efectuat în cadrul secției contabilitate a întreprinderii.
Secția contabilitate se află la etajul I (la parter) al blocul de administrare principal al întreprinderii. În această secție lucrează două persoane, ambele utilizând calculatorul. Secția măsoară 4/8/2,5 m2. Întreaga secție și aparatajul electric din interior sunt conectate la pământ. Sunt prevăzute căile de ventilare a camerei. Iluminatul este atât natural (lumina solară) cât și artificial (becurile electrice). Sunt două ferestre largi situate lateral din ambele părți a secției.
În secție se găsesc trei prize electrice, amplasate în mod echidistant una față de alta.
Blocul central de tensiune înaltă se află la distanța minimă de siguranță obligatorie față de blocul administrativ al întreprinderii. În secție există un stingător de mână de tipul ОУ-8.
Această secție corespunde tuturor normelor sanitaro-igienice, sunt prevăzute și supravegheate condițiile de muncă contre factorilor nocivi și periculoși.
5.8. Cerințele securității tehnice în timpul de lucru
Timpul de lucru la calculator nu trebuie să depășească 6 ore pe zi sistată cu întreruperi de 30 de minute. Calculatorul trebuie să fie amplasat astfel încât lumina solară să pătrundă din partea laterală a camerei, din partea stângă sau dreaptă. Nu se permite de a lucra cu carcasa blocului central al calculatorului deschisă. Nu se permite de plasat obiecte grele sau metalice pe el.
Majoritatea instalațiilor și echipamentelor electronice funcționează la tensiuni și curenți bine stabiliți. Există însă cazuri, când în prizele electrice tensiunea depășește 220V. În astfel de situații echipamentele electronice pur și simplu ard și pot duce la apariția incendiilor.
Pentru a preveni astfel de situații, instalațiile și echipamentele electronice sunt echipate cu filtre de tensiune, care sunt prevăzute la stabilizarea tensiunii aplicate în rețea, la parametrii normali de funcționare a aparatului.
De asemenea, nu se permite de a stinge incendiul provocat prin suflări, astfel focul poate să se extindă și mai repede asupra altor elemente electronice sau zone inflamabile. În figura 1, este prezentat modul de amplasare a operatorului în fața monitorului.
Monitorul calculatorului trebuie amplasat pe masă astfel ca distanța A de vizualizare a informației pe ecran să nu fie mai mare de 70 cm (distanța optimală 45-50 cm), vezi fig. 5.1. Monitorul după înălțime trebuie deplasat astfel încât unghiul α dintre normala la centru a monitorului și linia orizontală a vederii omului să cuprindă 200.
În plan orizontal unghiul de vizualizare a ecranului nu trebuie să depășească 600. Dispozitivul de introducere a informației (claviatura), trebuie situată pe masă la înălțimea de 60-72 cm de la podea.
Unghiul de înclinare γ a claviaturii să fie de 150.
Documentele care trebuiesc introduse la calculator se recomandă a fi amplasate la distanța de 45-50 cm de la ochii operatorului, din partea stângă, astfel unghiul dintre ecranul monitorului și document să formeze în plan orizontal de 30–400. Scaunul trebuie să fie reglabil, distanța minimă de la podea 45-50 cm.
Fig. 5.1. Modul de amplasare a operatorului în fața monitorului.
5.8.1. Aprecierea pericolului la monitor
Odată cu dezvoltarea tehnicii de calcul tot mai mult se atrage atenția asupra problemelor protecției utilizatorilor, în special operatorii de calculatoare, (se află în fața monitorului). Principalii factori dăunători, care influențează asupra sănătății omului, pentru operatori sunt:
– radiația sau iradieri ionizate;
– câmpul electrostatic;
– câmpul electromagnetic, etc.
Iradierile ionizate reprezintă iradierea electro-magnetică cu capacitate de ionizare a moleculelor. Dacă se provoacă ionizarea moleculelor organismului uman, atunci legăturile între molecule se distrug și în rezultat apar diferite boli contagioase. Capacitatea de ionizare o au următoarele particule: a, b, X, g – iradieri, fluxul de electroni, substanțele radioactive.
În cazul monitoarelor cel mai semnificativ tip de iradiere ionizată este b – iradiere, care însă este foarte mică, de obicei, nu depășește normele biologice. Celelalte tipuri de iradieri pot fi neglijate deoarece greu pot fi depistate.
b – iradierea apare în urma ciocnirii electronilor cu atomii substanței luminofore sau cu atomii ecranului din sticlă.
Pentru a micșora iradierea ionizată a monitoarelor moderne, pe suprafața lor se aplică o foaie metalică străvezie, care atenuează fluxul de iradiere. O altă cale de apărare împotriva iradierii ionizate este procurarea unui ecran protector, care se instalează pe monitor și are același efect ca și foaia metalică străvezie.
În genere iradierea ionizată asupra organismului omului poate provoca următoarele acțiuni:
locale – acțiuni de scurtă durată cu doze mari, care aduce la traume locale: îmbolnăvirea pielii, pierderea pielii, pierderea unghiilor, defectarea oaselor, apariția cancerului.
totale – reprezintă iradieri îndelungate cu doze mici, aduce la îmbolnăvirea sângelui (leucemie).
Câmpul electrostatic care apare pe ecranul monitorului este rezultatul bombardării permanente a monitorului cu fascicole de electroni emise de catod. Astfel sarcina electrică, case se acumulează pe suprafața monitorului, formează câmpul electrostatic. Fenomenul electrizării statice este legat și de umiditatea relativă. În condiții normale aerul se caracterizează cu proprietăți izolatorii înalte, însă sub acțiunea razelor solare și celor cosmice, radiației materialelor radioactive a scoarței pământului și a altor factor ionizatori, moleculele neutre a aerului se ionizează, formând ioni pozitivi și negativi – purtători ai sarcinii electrice.
Descărcarea electricității statice poate provoca o explozie, un incendiu sau alte accidente. La unele întreprinderi, care produc substanțe sintetice, polimeri și produse din aceste substanță, și care posedă proprietăți dielectrice înalte, electrizarea micșorează productivitatea muncii și este principalul motiv care duce la scăderea calității producției.
Influența sistematică a câmpului electrostatic de intensitate înaltă asupra organismului omului poate duce la unele dereglări funcționale a sistemului central nervos, a sistemului cardio-vascular și a altor organe.
Intensitățile admisibile a câmpului electrostatic sunt indicate fără a lua în considerație influența asupra omului a descărcărilor electrice. Normele indicate pentru intensitatea câmpului electrostatic mai mare de 20 kW/m se utilizează numai cu condiția, că restul timpul zilei de lucru, intensitatea nu întrece 20 kW/m. Dacă intensitatea câmpului electrostatic întrece valorile indicate, atunci se aplică unele măsuri de micșorare a ei.
Măsurile principale de micșorare a intensității câmpului electric în zona de lucru sunt:
îndepărtarea surselor a câmpurilor electrostatice din zona personalului care deservește aparatura;
ecranarea sursei câmpului sau a locului de muncă;
utilizarea neutralizatorilor de sarcini electrice statice;
umezirea materialului care se electrizează;
schimbarea materialelor, care ușor se electrizează cu materiale ce nu se electrizează;
alegerea suprafețelor care contactează conform condițiilor de electrizare minimă;
modificarea procesului tehnologic în așa mod ca să se micșoreze nivelul de electrizare;
alegerea materialelor și suprafețelor care greu electrizează alte corpuri sau le electrizează cu sarcini de polaritate diferită;
instalarea în toate încăperile, unde se află oameni podele izolante care nu conduc curentul electric.
În calitate de măsură de protecție individuală a omului de la electricitatea electrostatică poate servi încălțămintea ce conduce curentul electric, albituri, halat, etc. adică tot ce asigură legătura electrică a corpului omului cu pământul.
La majoritatea monitoarelor moderne problema câmpului electrostatic este parțial rezolvată prin introducerea tehnologiei antistatice. Datorită acestei tehnologii câmpul electrostatic se micșorează până la 10% din intensitatea inițială a acestuia. În afară de această majoritatea ecranelor protectoare, care micșorează iradierea ionizată, mai sigură și atenuarea considerabilă a câmpului electrostatic.
Câmpul electromagnetic creat de monitor este de asemenea un factor dăunător sănătății omului.
Influența câmpurilor electromagnetice de mare intensitate asupra omului constă în absorbția de către țesuturile corpului uman a energiei, însă influența principală îi revine câmpului electric. Nivelul de influență a câmpurilor electromagnetice asupra omului depinde de frecvență, de puterea emisiei, de durata acțiunii, de regimul de emisie (prin impulsuri sau continuu), și de asemenea de proprietățile individuale ale organismului. Influența câmpului electric de frecvență joasă provoacă dereglări în activitatea funcțională a sistemului cardio-vascular, și chiar la schimbări privind componența sângelui.
Influența câmpului electromagnetic de frecvență înaltă se reflectă sub forma efectului termic, care duce la ridicarea temperaturii corpului, la supraîncălzirea locală a țesuturilor corpului și a organelor cu o termoreglare slabă. Ca rezultat unii lucrători suferă din cauză insomniei, simt dureri în regiunea inimii, dureri de cap, ușor obosesc.
Pentru a micșora puterea de emisie a sursei câmpului electromagnetic pot fi utilizate următoarele mijloace tehnice:
utilizarea unui astfel de regim de lucrul, în care dispozitivul lucrează cu o putere mai mică
decât cea proiectată;
lichidarea locurilor de emisie suplimentară;
micșorarea undelor reflectate prin ajustarea sarcinilor, etc.
Alegerea corectă a regimului de lucru a personalului și a utilajului permite micșorarea prezenței omului în zona de acțiune a câmpurilor electromagnetice.
Utilizarea sistemelor de dirijare la distanță cu utilajul permite personalului să-și îndeplinească funcțiile în afara zonei de acțiune a câmpurilor electromagnetice.
Pentru confecționarea ecranului se utilizează materiale cu o conductibilitate electrică înaltă (aluminiu, cupru, oțel), și cu proprietăți de absorbție și reflectare sub formă de foi și plasă. Ecranele obligatoriu se unesc la pământ.
Eficacitatea acțiunii de ecranare a materialului se caracterizează prin adâncimea infiltrării câmpului electromagnetic în ecran, care depinde de materialul de confecționare.
Adâncimea infiltrării câmpului electromagnetic, la care acest câmp scade de 2,718 ori:
unde:
m – permeabilitatea magnetică relativă a materialului ecranului, Hn/m;
s – conductibilitatea relativă a materialului ecranului, cm/m;
f – frecvența câmpului electromagnetic, Hz.
Adâncimea infiltrării a frecvențelor înalte și supraînalte în ecran de obicei nu întrece un milimetru, astfel grosimea ecranului se alege din considerente constructive.
5.9. Securitatea electrică
5.9.1. Acțiunea curentului electric asupra organismului uman
Securitatea electrică este reglementată de standardul STAS – 12.1.019-76
Notă: SSSM (Sistemul de Standardizare Sigură a Moldovei) a fost editat în URSS în 1974. Aceste documente au fost ratificate de către RM și acționează la toate întreprinderile din țară.
În urma electrocutării, asupra organismului uman pot acționa concomitent mai multe tipuri de acțiuni și anume:
Acțiunea termică – este provocată de arcul electric și în caz de atingere de conductori aflați sub tensiune. La 6-7 kV arcurile electrice sunt și mai grave.
Acțiunea mecanică – omul nu se poate elibera singur de la conductor. Se pot produce ruperi de vase sanguine și de țesături a mușchilor.
Acțiunea biologică – fibrilarea inimii prezintă o mișcare haotică a mușchilor inimii la frecvența de circa 20-25 Hz și echivalează cu oprirea totală a inimii.
Acțiunea electrolitică – are loc la trecerea curentului continuu. Curentul electric produce în organismul uman acțiuni electrolitice și ca urmare se produc schimbări în componența sângelui.
Cauzele electrocutării:
1. Atingerea întâmplătoare a omului de conductori aflați sub tensiune.
2. Apariția unei tensiuni accidentale la carcasele metalice a utilajului electric.
3. Apariția arcului electric în caz de scurtcircuit monofazat, bifazat sau trifazat.
4. Ruperea conductoarelor liniilor aeriene și punerea lor la pământ.
5. Nerespectarea regulilor securității electrice.
6. Regime nesimetrice în instalațiile electrice.
Omul începe a percepe acțiunea curentului electric alternativ la valorile de 0,6-1,5 mA, la frecvența de 50 Hz și 5-7 mA la curentul continuu. Afectat de electrocutare omul este practic imobilizat (paralizat), încep să apară contracții musculare a mâinilor și a picioarelor, îngreunează respirația și poate conduce la fibrilarea inimii (slăbirea mușchiului inimii). Mărimea curentului permis ce trebuie să treacă prin corpul uman conform standardelor trebuie să fie de 0,3 mA la 50 Hz și 40 mA la 400 Hz.
În rețelele trifazate (fig. 5.2,a), tensiunea la capetele fiecărei faze sunt aceleași
Ua = Ub = Uc, echidistante între ele. Direcțiile de poziționare a tensiunilor sunt de 2π/3 (fig. 5.2,b)
Fig. 5.2(a). Schema electrică a rețelelor trifazate Fig. 5.2(b). Direcțiile de poziționare a
cu punctul neutru legat la pământ. tensiunilor.
Curentul electric trece prin țesuturile biologice a pielii, astfel, modificând potențialul celulelor și a țesuturilor afectate ceea ce duce la dereglarea de la funcționarea normală a lor. Curentul electric provoacă arsuri termice pe părțile corpului afectate de curent, provoacă încălzirea arterelor și a venelor. El cauzează două tipuri de vătămări corporale:
1. arsuri electrice.
2. șocuri electrice.
Șocul electric se caracterizează prin pierderi de cunoștință, îngreunează respirația, bătăile inimii devin intacte. Există situații când persoana electrocutată cade în comă sau a survenit moartea clinică, adică când respirația și circulația sângelui se oprește.
Acțiunea curentului electric asupra inimii și aparatului respirator poate fi direct – atunci când trece direct prin zona inimii sau a plămânilor și reflectiv – când trece prin sistemul central nervos. Starea de șoc poate dura de la câteva minute până la câteva zile după care poate interveni starea de moarte.
Astfel putem spune că, dacă curentul electric trece prin zonele organelor vitale principale (inima, plămânii, creier, etc.), atunci pericolul de vătămare gravă a organismului este destul de mare, iar dacă ocolește principalele zone vitale atunci riscul de vătămare scade considerabil. Gradul de vătămare a organismului uman este determinat de doi parametri importanți a curentului electric: frecvența și durata de acțiune a curentului electric. Frecvența utilizată la întreprinderi este de 50 Hz. Această valoare a frecvenței este periculoasă pentru organismul uman, iar la valoare de 400 kHz este practic inofensivă.
Rezistența organismului uman la acțiunea curentului electric este de 1 kΩ dacă pielea este uscată, curată și fără leziuni. În cazul apariției unor rupturi (leziuni) a pielii, atunci rezistența interioară scade considerabil. Rezistența pielii este repartizată neuniform pe suprafața întreagă a organismului uman.
5.9.2 Calculul protecției “ legarea la pământ”
Există diferite tipuri și forme de prize de pământ (bare metalice sferice, țevi, cabluri izolante). Pentru evitarea situațiilor nefaste, arsuri, leziuni pe corp, se utilizează protecția la pământ care poate fi pământul sau alte aparataje constructive metalice (nefiind conectate la tensiune). Fiecare dispozitiv sau aparat electric conține conductoare care o parte din ele se conectează la sursa de energie electrică (priza electrică) și restul conductoarelor se conectează la prizele de pământ, în caz că nu există posibilitatea d e a uni la pământ conductorul și dacă dispozitivul electric nu este unit la pământ atunci ca pământ poate servi un alt dispozitiv metalic la care se pot conecta conductorii de potențial φ0=0.
Dispozitivele de legare la pământ pot fi clasificate în:
– de protecție;
– de lucru (funcționale);
– de protecție-liniară;
– de măsurare.
Dispozitivele și mijloacele utilizate la protecția electrică. Aceste dispozitive sunt utilizate pentru protejarea omului contra scurtcircuitărilor electrice, rețelelor și blocurilor electrice. Dispozitivele dielectrice și metodele de protecție utilizate în rețelele electrice se clasifică în patru grupe:
– izolante;
– de îngrădire;
– de ecranare;
– de siguranță.
Mijloacele izolante asigură izolarea electrică a persoanei de la părțile instalațiilor și rețelelor electrice aflate sub tensiune înalte. Mijloacele izolante se clasifică în cele de bază și suplimentare. În rețelele electrice până la 1kV se utilizează mănuși dielectrice, mai mult de 1kV se utilizează cleștele cu mânere acoperite cu cauciuc dielectric. Mijloacele izolante suplimentare servesc drept: covorașe izolante, încălțăminte izolante (caloșii confecționați din material de cauciuc sau din brezent).
Mijloacele de îngrădire – sunt folosite atunci când are loc permutarea aparatajului electric sau au apărut careva defecțiuni ca de exemplu: fisuri, rupturi de contact sau dezolarea stratului protector al cablurilor). De asemenea, sunt necesare atunci când are loc renovarea utilajului vechi, astfel teritoriul dat izolat cu diferite elemente de îngrădire, păstrându-se o distanță minimă obligatorie.
Mijloacele de ecranare se folosesc la inhibarea și reflectarea energiei de diferită natură (electrică, solară, electromagnetică, etc.). Se construiesc din materiale care au o conductibilitate electrică foarte mare (aluminiu, cupru, oțel). Ele trebuie neapărat să fie legate la pământ.
Mijloacele de ecranare sunt folosite în diferite sfere de activitate de către electricieni – în instalații electrice, sudori – în siderurgie și construcții, operatori de calculatoare – lucrul cu calculatorul, etc.
Mijloacele de siguranță sunt destinate pentru protecție individuală a lucrătorului contra acțiunilor de iradiere solare, termice și mecanice. Se utilizează ochelari de protecție, măști antigaz, mănuși dielectrice speciale.
5.10. Rezolvarea problemei
Calculul protecției prin legare la pământ constă în determinarea parametrilor prizei electrice de pământ: numărul, dimensiunile și plasarea electrozilor, bătuți în pământ, care asigură rezistența prizei de pământ (și concomitent tensiunea de atingere) nu mai mare decât permisă de normative (Rp 4 Ω pentru rețele cu tensiune U 1000 V și Rp 0,50 Ω pentru U > 1000 V).
Calculul prizei de pământ se efectuează în felul următor:
1. Alegem tipul electrozilor și numărul lor. Ca electrozi ai prizei de pământ pot fi utilizate țevi, colțari, bare metalice, etc., cu lungimea de 0,8…3,0 m.
Vom utiliza cinci țevi metalice de 3 m lungime și diametrul țevilor de 10 cm;
2. Determinăm rezistența specifică calculată a solului în Ωm conform formulei:
,
unde: m – rezistența din literatura informativă;
m = 700 Ωm;
– coeficientul climatic corespunzător;
2 = 1,56 pentru pietriș și lut.
Ω∙m.
3. Rezistența electrozilor naturali este Rnat = 5,6 Ω;
4. Determinăm rezistența prizei artificiale, care în complex cu rezistența electrozilor naturali trebuie să nu fie mai mare decât cea normală (Rnor = 4 Ω ):
.
5. Determinăm rezistența unui electrod vertical bătut în pământ luând în considerație rezistența specifică calculată a solului. De exemplu, dacă electrodul prezintă o țeavă bătută la nivelul pământului, atunci rezistența în Ω a țevii este:
.
6. Prealabil situăm electrozii pe plan, găsim distanța dintre ei.
Din literatură găsim coeficientul de randament al electrozilor el în dependență de raportul distanței dintre ei la lungimea lor.
el = 0,83;
7. Determinăm rezistența bandei de unire a electrozilor între ei ținând cont de coeficientul de randament al bandei el. În cazul nostru b = 0,56:
8. Ținând cont că priza de pământ artificială este formată din țăvile bătute în pământ și banda de legătură găsim rezistența totală electrozilor:
.
9. Utilizând coeficientul de randament al electrozilor verticali, găsim definitiv numărul lor
țevi.
10. Se aduce planul situării electrozilor pe o foaie în partea de descriere ( fig. 3).
Fig. 3. Planul situării electrozilor în pământ.
5.11. Acordarea primului ajutor medical persoanei electrocutate
În caz de electrocutare persoana traumată trebuie urgent eliberată din zona accidentării. Trebuie de scos din priza electrică cablul de curent electric care este conectat la instalație. În instalațiile de tensiune până la 1 000 V persoana electrocutată poate fi trasă de cămașă (dacă e uscată). Se poate de distanțat cablul electric cât mai departe de la el cu ajutorul unui băț uscat sau tablă.
Cu ajutorul mănușilor dielectrice sau utilizarea încălțămintei de cauciuc se permite de întreprins acțiuni de ajutorare a persoanei electrocutate în instalațiile de tensiuni mai mari de 1 000 V. Dacă persoana în cauză este în conștiință dar se simte dezorientat și slăbit, are puls și respiră, el trebuie culcat pe podea sau dacă e posibil pe un pat. De eliberat căile respiratorice și de deschiat cât mai larg cămașa .
Dacă persoana este în stare gravă atunci noi trebuie să acționăm prompt și fără întârzieri pentru că în acel moment viața lui depinde de cunoștințele și abilitățile profesionale a celor care ajută și mai apoi de chemat salvarea.
Nu este permis persoanei afectate de curentul electric să se miște sau în cel mai rău caz să-și continue activitatea, chiar dacă se simte bine, pentru că, influența curentului electric uneori poate fi momentană iar în alte cazuri poate să decurgă într-un timp mai îndelungat. Dacă apar simptome de contracții musculare (crampe), respirația este îngreunată și neregulată, scade pulsul, atunci este necesar de acordat primul ajutor medical prin metoda de resuscitare (respirația artificială și masajul indirect al inimii).
Înainte de a efectua resuscitarea trebuie de înclinat capul persoanei electrocutate în așa fel ca bărbia să fie în linie dreaptă cu gâtul.
Notă: Respirația artificială și masajul indirect al inimii trebuie efectuat concomitent.
Cel mai des utilizată metodă de resuscitare este : din gură în gură. Se insuflă oxigen în plămânii persoanei electrocutată, astfel cantitatea de oxigen ce nimerește în plămâni este cu mult mai mare decât prin alte metode de resuscitare utilizate.
Masajul indirect al inimii se efectuează într-un tempou ritmic, apăsând în zona inimii, mai exact pe partea stângă unde are loc pulsarea sângelui din inimă. Acest proces se efectuează repetat în așa mod ca timp de un minut să se efectueze 10-12 încercări. Masajul indirect al inimii se efectuează astfel: câte 4-6 apăsări în momentul de insuflare a aerului în plămâni, apoi peste două secunde, are lor eliberarea aerului din plămâni. Pentru a verifica pulsul masajul inimii se întrerupe timp de 2-3 secunde. După apariția simptomelor de viață resuscitarea trebuie continuată aproximativ 5-10 minute.
5.12. Măsurile antiincendiare
Incendiu – este arderea necontrolată susținută cu daune materiale.
Arderea – este reacția chimică de oxidare, în rezultatul căruia se degajă o cantitate mare de căldură.
Iscra – sunt particule încărcate sau gaz ionizat.
Odată cu scăderea oxigenului în aer sau în încăperi, până la 12-14%, procesul de ardere pentru majoritatea substanțelor inflamabile diminuează, practic lipsește.
Cauzele apariției incendiilor în rețelele electrice și în instalațiile electrice sunt de diferită natură așa precum:
1. Descărcări de sarcină și formarea diferențelor de potențiale la capetele firelor de tensiune sau pe elementele de schemă a aparatajului.
2. Scurtcircuitări.
3. Străpungerile de izolație (rodarea cablurilor, apariția fisurilor).
4. Procese bio-naturale (acțiunea trăsnetelor și paratrăsnetelor).
5. Supraîncărcarea conductoarelor.
6. Creșterea de temperatură în conductoarele purtătoare de sarcină electrică.
Stingerea incendiilor la instalațiile electrice ce se află sub tensiune cu ajutorul lichidelor (apă, oțet, alcool etilic) nu este permisă. Trebuie imediat de întrerupt instalația de la priza electrică la care este conectată și dacă e posibil și rețeaua de curent electric de la blocul central. Zona incendiară trebuie îngrădită și întreg personalul din apropiere trebuie îndepărtat la o distanță minimă obligatorie.
În prezent se utilizează diferite dispozitive antiincendiare. Cele mai des utilizate dispozitive antiincendiare sunt de fabricație rusă, de tipul ОУ-2, ОУ-5, ОУ-8 și se găsesc la toate întreprinderile din țară. Sunt foarte eficiente, inofensive și ușor manevrabile.
Pentru a analiza nivelul securității incendiare la locurilor de muncă, în zonele de producție și în sălile de calcul se folosește următoarea clasificare:
1.Clasificarea materialelor de construcție și a construcțiilor conform nivelului de inflamabilitate:
– neinflamabile;
– greu inflamabile;
– inflamabile.
2. Clasificarea construcțiilor conform nivelului de rezistență la incendiu – (limita nivelului de rezistența la incendiu – timpul (în ore) din momentul începerii incendiului până la momentul apariției crăpăturilor).
3. Clasificarea încăperilor conform RCIE ("Regulile de Construcție a Instalațiilor Electrice"):
– cu pericol de explozie;
– cu pericol de inflamare.
4. Clasificarea proceselor de producție conform gradului de incendiere:
– cu pericol de explozie;
– cu pericol de explozie și inflamare;
– cu pericol de inflamare;
– fără pericol de inflamare.
Conform primei clasificări (clasificarea materialelor de construcție și construcțiilor conform nivelului de inflamabilitate), sala de calcul este neinflamabilă, deoarece sunt prevăzute multe măsuri de prevenire a incendiului cum ar fi: sisteme de semnalizare electronice sau mecanice, podele metalizate, mese metalice, pereții în sala de calcul se acoperă cu substanțe nearzătoare.
Conform clasificării a doua (clasificarea construcțiilor conform nivelului de rezistență la incendiu), sălile de calcul se află în clădiri construite din beton armat sau coteleț (pentru instituțiile de învățământ). Ambele materiale de construcție au o rezistență la incendiu mare – pereții în sala de calcul se acoperă cu substanțe nearzătoare. Conform clasificării a treia (clasificarea încăperilor conform RCIE), luând în considerație conținutul mic de substanțe inflamabile și regimul termic de prelucrare, sălile de calcul pot fi caracterizate – cu pericol mic de inflamare.
Securitatea antiincendiară poate fi asigurată prin măsuri de profilaxie antiincendiară și prin respectarea regulilor de prevenire a incendiului. Noțiunea de profilaxie antiincendiară include în sine un complex întreg de măsuri, necesare la prevenirea apariției incendiului.
5.13. Concluzii
În prezent respectarea normelor de ocrotire a mediului ambiant și protecții muncii sunt de o importanță deosebită. Odată cu schimbarea mediului ambiant (creșterea factorilor nocivi și periculoși) cresc și cerințele de ocrotire și supraveghere a mediului. Strategiile adoptate trebuie să conțină rezolvarea tuturor problemelor întâmpinate în diferite sfere de activitate ale întreprinderilor.
Problemele de ocrotire a mediului ambiant sunt ridicate și comentate de majoritatea parlamentelor statelor lumii, se adoptă în continuare legi care reglementează strict principiile și normele de activitate.
Odată cu creșterea și dezvoltarea civilizațiilor crește și puterea și dominația omului asupra naturii. La locul efectuării practicii incidente periculoase nu au apărut. Lucrul a fost bine organizat și supravegheat de responsabilii secției de lucru.
=== SCHEMA_BLOC ===
Anexa 5
Schema bloc a programului
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: Elaborarea Paginii Web Pentru O Firma Taxi cu Posibilitati de Accesare Si Folosire a Serviciilor Prestate (ID: 148787)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
