Anda di halaman 1dari 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

Realizarea unui magazin online in PHP

Capitolul 1 Introducere 1.1. Comerul electronic n ultimele dou decenii dezvoltarea fr precedent a tehnologiilor informaionale determinate de necesitatea stocrii i a transmiterii rapide a informaiilor cu costuri ct mai mici, a revoluionat comerul global, redefinind principiile clasice ale marketingului. n prezent noiunea de comer electronic a devenit sinonim cu creterea profitului. Potrivit Organizaiei Economice de Cooperare i Dezvoltare (OEDC), comerul electronic reprezint desfurarea unei afaceri prin intermediul reelei Internet, vnzarea de bunuri i servicii avnd loc on-line sau off-line. Comerul electronic const n derularea unei afaceri, ca activitate generatoare de valoare, avnd ca suport reeaua Internet i utilizarea unor pachete de programe software specifice. ntr-o accepiune tradiional, comerul electronic presupune utilizarea n reele cu valoare adugat a unor aplicaii de tipul transferului electronic de documente (EDI), a comunicaiilor fax, a codurilor de bare, a transferului de fiiere i a potei electronice. Dezvoltarea tot mai accentuat a interconectivitii calculatoarelor n reeaua Internet a avut ca efect utilizarea, tot mai evident, de ctre companii a acestei reele n cadrul unui nou tip de comer i anume comerul electronic care apeleaz pe lng vechile servicii amintite i altele noi. Un exemplu de astfel de servicii l reprezint posibilitatea de a se efectua cumprturi prin reea, consultnd cataloagele electronice on pe Web sau cataloagele off pe CD-ROM i pltind prin intermediul crilor de credit sau a unor portmonee electronice. Comerul electronic cunoate pe lng definiiile prezentate mai sus i altele. Astfel, comerul electronic reprezint relaiile de afaceri care se deruleaz prin reea ntre furnizori i clieni, ca o alternativ la variantele de comunicaii tradiionale prin fax, linii de comunicaii dedicate sau EDI pe reele cu valoare adugat. O alt form a comerului

Pagina 1 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

Internet implic transferul de documente, de la contracte sau comenzi pro forma, pn la imagini sau nregistrri vocale. O alt definiie dat comerului electronic este urmtoarea: comerul electronic (ecommerce, pe scurt E-C) este acea manier de a conduce activitile de comer care folosete echipamente electronice pentru a mri aria de acoperire (locul n care se afl potenialii clieni) i viteza cu care este livrat informaia. Comerul electronic poate fi considerat un schimb electronic de informaii ntre o afacere i clienii si. Aceasta se poate face prin fax, telefon, voice-mail, email, extranet sau Internet, pentru a enumera doar cteva dintre mijloace. Parte a Electronic Business (E-Business), comerul electronic a fost proiectat n mod special pentru a realiza schimbul de informaii ntre clieni i furnizori. n era informaional, cheia competitivitii ntreprinderilor o constituie comerul electronic, acesta asigurnd: -acces la noi segmente de pia sau la noi clieni; -crete viteza de derulare a afacerilor; -ofer o flexibilitate ridicat a politicilor comerciale; -reduce costurile cu aprovizionarea , cu desfacerea, cu publicitatea; -asigur simplificarea procedurilor. Comerul electronic poate lua o multitudine de forme, influennd profund activitatea de afaceri. Aplicaiile poteniale care sunt vizate de comerul electronic sunt urmtoarele: -oferirea de produse i servicii precum i efectuarea de servicii cum ar fi comanda de cri sau abonamente la publicaiile on-line; -regsirea i schimbul de informaie cum ar fi: detalii legate de produse i servicii, cataloage, instruciuni de folosire i briefinguri financiare; -creterea eficienei activitii de afaceri prin: promovarea utilizrii potei electronice i furnizarea de acces la bazele de date ; -realizarea de tranzacii financiare cum ar fi: telebanking i digicash. Prin eliminarea barierelor geografice dintre furnizori i clieni, comerul electronic ofer posibilitatea comercializrii de produse n ntreaga lume sporind astfel numrul potenialilor clieni. n ultimii ani dezvoltarea Internet-ului a oferit posibilitatea ca oamenii de afaceri s-i extind domeniul de activitate ptrunznd pe noi piee i s-i prezinte paginile Web indiferent de dimensiunea sau amplasarea geografic a firmei. Acest lucru a permis ntreprinderilor mici i mijlocii s concureze acum giganii industriei. Multe dintre firme
Pagina 2 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

consider Internet-ul locul potrivit pentru a oferi clienilor lor anumite servicii ns tot mai multe dintre paginile de Internet urmresc s evolueze de la obiectivele de marketing la vnzarea direct. n forma lui simpl, comerul electronic necesit prezena ntr-o reea de baz, promovarea firmei, furnizarea de servicii premergtoare vnzrii i servicii post-vnzare, condiii minime care pot fi asigurate fr dificultate i cu costuri reduse. Contrar acestuia, comerul electronic n forma sa complex ridic probleme de ordin legal, cultural i tehnologic, firma fiind obligat s i creeze un sistem propriu de comand. Datorit costurilor mari pe care le impune, acest tip de comer este permis numai firmelor mari care dispun de resursele financiare necesare. Utilizarea Internet-ului are ca efect reducerea duratei de vnzare a unui produs, scderea costurilor de comunicare, permite livrarea datelor n form digital, scade costurile de transport i distribuie i permite formarea unor parteneriate integrate i puternice. Evoluia comerului electronic are un impact major asupra economiei existnd premisele crerii de noi ntreprinderi, diversificarea celor existente i, n special, asupra potenialului pieei forei de munc i a gradului de ocupare a acesteia n viitor. Industria comerului electronic face distincie ntre tranzaciile Business-to-Business (B-2-B sau BTB) i tranzaciile Business-to-Consumer (B-2-C sau BTC): -Business-to-Consumer se refer la relaiile dintre comerciant i consumatorul final, fiind considerat comer electronic cu amnuntul; -Business-to-Business cuprinde toate tranzaciile ce se efectueaz ntre doi sau mai muli parteneri de afaceri. Acest tip de tranzacii se bazeaz, de regul, pe sisteme extranet adic partenerii de afacerii acioneaz pe Internet prin utilizarea de nume i parole pentru paginile Web proprii. O noua opiune n cadrul comerului electronic este tranzacia Business-to-Employee (B-2-E) care se refer la tranzaciile din interiorul unei firme, destinate personalului angajat al firmei i efectuate prin sistemul intranet propriu. Att Business-to-Consumer ct i Business-to-Business va ajunge n anul 2005 la cca. 9.800 $. La scar mondial comerul electronic are o dinamic ascendent pe msur ce tot mai muli oameni de afaceri i consumatori se conecteaz pe Web. Statele Unite se delimiteaz de restul regiunilor lumii prin valoarea tranzaciilor electronice: 510 miliarde de dolari n 2000 i 3.456 miliarde de dolari n 2005, dinamica fiind mai mic fa de alte regiuni. n Statele Unite comerul electronic s-a dezvoltat datorit micro-ntreprinderilor inovative. n prezent SUA deine rolul de leader situndu-se mult n
Pagina 3 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

faa Europei, att n domeniul instrumentelor i tehnologiilor informatice, ct i n utilizarea comerului electronic. n Europa de Vest comerul electronic va atinge pn n 2005 2.500 miliarde de dolari ca urmare a eforturilor depuse de giganii din industrie i a afacerilor on-line. Comerul european de tip Business-to-Business crete rapid ns doar o mic parte din europeni cumpr on-line. Odat cu apariia primilor operatori privai n telecomunicaii i a unor investitori strini ca operatori i furnizori de servicii n Romnia i-a fcut apariia Internetul. La noi n ar Internetul este utilizat n principal ca un mijloc de comunicare prin e-mail, ca mijloc de informare prin Web site-uri i ca mijloc de promovare a ntreprinderilor prin intermediul paginilor Web. Lipsa cadrului legal privind securitatea tranzaciilor, numrul redus de persoane care sunt conectate la Internet, accesul limitat la condiiile hardware i software de baz precum i valoarea ridicat a investiiilor pentru deschiderea unui magazin virtual sunt numai cteva din cauzele pentru care n Romnia comerul electronic de tip Business-to-Business se afl nc la nceput de drum. Totui se observ c n ultimii ani comerul electronic a cunoscut o dinamic ascendent datorit crerii unui mediu favorabil promovrii i utilizrii comerului electronic prin sensibilizarea i contientizarea ntreprinztorilor. 1.2. Beneficiile E-commerce (comerul electronic) este convenabil, siturile fiind operaionale 24 ore pe zi, 7 zile pe sptmn; costuri interne mici, comerul electronic eliminnd interaciunea dintre cumprtor i intermediarii tranzaciei; costuri sczute de procesare a tranzaciilor, metoda de plat electronic fiind mai puin costisitoare dect modul de plat prin monetar; o cretere substanial a vitezei procesului de vnzare. Companiile de e-commerce recepioneaz veniturile mai rapid dect n sistemul tradiional; reducerea erorilor, procesarea automat producnd mai puine erori dect procesul de vnzare tradiional; spaiul nelimitat - siturile de e-commerce putnd afia/indexa un numr nelimitat de bunuri i servicii; prezena global crescut, compania putnd fi accesat (teoretic) de posibilii clieni din orice col al lumii;
Pagina 4 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

disponibilitatea informaiilor despre clieni, existnd astfel posibilitatea de a studia preferinele unui client individual sau ale unui grup specific de clieni, de a modela afacerea dup dorinele clientului sau de a schimba rapoarte analitice privind clientela cea mai bun interaciune cu clientul. Deci, comerul electronic este o categorie de e-business. Exist posibilitatea comercializrii de servicii, de exemplu e-turism (www.bizravel.com, www.opentravel.org, www.rotravel.com), e-leasing, e-consulting. Avantaje Promovarea produsului - se poate realiza printr-un contact direct i interactiv cu clienii, primul avantaj fiind posibilitatea de a oferi informaii recente i ample despre produs. Totui, nu despre toate (parfumuri, etc.) Noi canale de vnzare - produsele existente pot fi livrate pe o arie larg fr a mai fi nevoie de ntreinut un magazin cu existent fizic. Mai mult, limitele geografice dispar n toate zonele unde exist Internet, o afacere poate fi desfurat n toat lumea la un singur centru de comand dotat cu mijloace computerizate. Economii la vnzarea/cumprarea produsului - generate de suprimarea costului deplasrii pn la vnztor, eliminarea cheltuielilor necesare pentru a ntreine un magazin clasic, reducerea timpului afectat tranzaciei, etc. Timpul redus de acces la produs - este un avantaj pentru servicii cu un ciclu de via scurt (tirile). Service mai bun pentru clieni- consultana poate fi disponibil non-stop, relaiile interumane fiind mai strnse; Marca i imaginea corporaiei pot fi mai uor modelate - acestea sunt importante mai ales cnd clienii folosesc tehnologii avansate (b2b); Adaptarea la shimbri poate fi mai rapid i mai facil efectuat atunci cnd firma este deja la curent i utilizeaz cele mai noi tehnologii ale comerului electronic; mbuntirea relaiilor cu clienii - fiecare client trebuie sa se simt apreciat, remarcat dezvoltndu-se relaii 1-la-1; Dezvoltarea de noi produse se poate realiza n concordan cu cerinele consumatorului - clienii pot afecta direct designul unui nou produs, vizualizndu-l cu ajutorul computerului. Monitoriznd atitudinile clienilor, firma poate obine informaii preioase despre proiectarea noilor produse sau mbuntirea celor vechi; Noi modele de afaceri - pot fi considerate vnzarea de informaii pentru experii n finane ori alte domenii.
Pagina 5 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

Probleme asisten - gradul de informaii referitoare la un produs poate fi insuficient; fiabilitate i credibilitate - punctul cheie este ca multitudinea de date pe web, pe care le poate oricine accesa, s se transforme n informaii ce vor deveni ulterior cunoatere. Din cauza timpului scurt de existen sau a dinamicitii ridicate, datele se nvechesc foarte rapid, lipsind mecanismele necesare unei analize de termen lung. 1.3. Modele de afaceri Magazin electronic (e-shop) Minimal, un e-shop conine un catalog de produse sau servicii cu descrieri tehnice i comerciale pentru fiecare poziie din catalog, gestionate de un sistem de gestiune a bazelor de date care se va ocupa cu stocarea i manipularea datelor i oferirea posibilitilor de acces la informaiile dorite de client. Varianta medie a unui e-shop ofer posibiliti pentru preluarea comenzilor (prin pota electronic sau prin formulare interactive completate direct de pe situl web al vnztorului), iar varianta extins adaug posibilitatea efecturii on-line a plii prin diverse mijloace de plat plus diferite alte activiti. n ansamblu, funciile unui sit web de comer electronic includ prezena unui catalog on-line, o metod pentru procesarea plilor electronice, realizarea facturrii, transportului, promovarea i realizarea altor servicii pentru client. Magazin electronic universal (e-mall) reprezint o colecie de magazine electronice reunite ntr-un site. Accept de obicei aceleai metode de plat i ofer anumite faciliti. (www.elibris.ro, www.anticariatonline.com ) Aprovizionarea electronic (e-procurement) - pentru procurarea bunurilor i serviciilor, marile companii i autoriti publice organizeaz licitaii. Prin publicarea pe web a specificaiilor ofertei, scad att timpul, ct i costul de transmisie, mrindu-se numrul de firme ce pot lua parte la licitaie. Astfel, crete concurenta i scade preul Piaa unui ter (third part marketplace) - se apeleaz la un site web pentru a avea acces la catalogul de produse al unei companii. Acest site aparine unui ter (un furnizor de servicii Internet, un furnizor de aplicaii sau o banc). Avantajul este c intersecia cu posibilii clieni este unic pentru mai muli productori. Comuniti virtuale - (virtual comunities). Fiecare membru poate oferi spre vnzare produse sau servicii sau poate adresa cereri de cumprare a unor produse/servicii. Calitatea de

Pagina 6 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

membru a unei comuniti virtuale presupune plata unei taxe sau s fie compus din clieni fideli ai unui produs sau grup de produse. Furnizori de servicii cu valoare adugat pentru canalele de comer electronic (value chain service provider) furnizorii de astfel de servicii sunt specializai pe funcii specifice, precum asigurarea logisticii, tarife sau cote procentuale. Platforme de colaborare (collaborative environments) cuprind un set de instrumente software i un mediu informaional pentru colaborarea ntre companii (via extranet), ce pot ndeplini funcia de proiectare sau concepie n colaborare. Ctigurile provin din taxa de membru sau taxa de utilizare i din vnzri de instrumente specializate (destinate proiectrii, organizrii fluxului de documente (workflow i gestiunii concurente a datelor. Brokerajul de informaii - exemplele cuprind cataloage de clieni clasificai pe profil, vnzarea de oportuniti de afaceri, consultan n domenii specializate. rezolvarea tranzaciilor financiare sau expertiz n managementul produciei i al stocurilor. Plata acestor servicii se realizeaz pe baza unor

Capitolul 2 Rolul i importana internetului i a paginilor web

Fenomen de amploare mondiala, Internetul cunoaste o evolutie incomparabila cu cea a altor instrumente media, la dezvoltarea sa continua participind intreg mapamondul. El se extinde cu o viteza fantastica, tot mai multi utilizatori se conecteaza zilnic la Internet avizi de informatie. Daca la inceputurile acestui fenomen ajuns acum la scara planetara, lumea nu.si punea probleme in legatura cu modul de utilizare, intre timp lucrurile s.au schimbat. Dupa citiva ani de educatie Internet, si o zestre de pagini Web ajunsa la un numar impresionant de citeva zeci de milioane utilizatorii nu mai cauta "pur si simplu" ci doresc ca aceste cautari sa aiba o logica, sa fie rapide si sa se finalizeze cu gasirea documentelor cautate. Fiind o retea a retelelor Net.ul este, de fapt o resursa comuna fiecarui utilizator, la formarea si exploatarea careia participa intreaga lume, singurul numitor comun fiind setea de informatie. In prezent toate domeniile de activitate ale omenirii sunt din ce in ce mai legate de reteaua mondiala. Oricine trebuie sa stie sa manipuleze resursele retelei si, chiar mai mult sa fie o parte activa a acesteia. World Wide Web.ul a aparut ca o necesitate de a aduce Internetul
Pagina 7 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

in casa si la intelegerea oricui, fiind datorita interfetei grafice prietenoase adeseori identificat cu Internetul. Siteurile sau paginile Web sunt in continua dezvoltare, fapt care atrage dupa sine o evolutie a limbajelor si a editoarelor,insotita de cea a navigatoarelor. 2.1. SCURT ISTORIC A localiza in timp momentul crearii retelei Internet este practic imposibil deoarece sunt prea multe sisteme de retele direct accesibile, fiecare dintre acestea avindu-si propria origine si fiecare in parte ajuta la definirea scopului si dimensiunii Internetului. Internetul a fost inainte de toate un sistem gindit si realizat de si pentru comunitatea academica. Internet a luat nastere ca ARPAnet (reteaua Agentiei de cercetari avansate) retea militara proiectata acum 20 de ani in scopul de a supravietui functional in cazul unei conflagratii. La mijlocul anilor 60, cercetatorii incepeau sa experimenteze ideea de retele de calculatoare care erau atit rapide cit si demne de incredere desi bazate pe medii de conexiune obisnuite cum ar fi liniile telefonice. In linii mari era un sistem asemanator celui utilizat in conexiunile telefonice la distante mari prin centrale si intermediari pe care beneficiarii nici nu le observa. Din framintarea cercetatorilor s.a nascut ideea retelelor cu comutare de pachete. Informatiile care circula prin acest tip de retea sunt fragmentate intr.un anumit numar de bucati numite pachete Aceste pachete sunt trimise prin retea la destinatiile dorite unde sunt reasamblate. Multi ani doar functionarii guvernamentali si cercetatorii au avut acces la aceasta retea care ulterior a devenit Internet. Treptat, dezvoltarea tehnologica si extinderea retelelor locale(LAN) au condus la ideea interconectarii retelelor. Daca la inceput au fost interconectate, prin intermediul unui blackbone (supercalculatoare aflate la distanta), retele locale mici si calculatoare individuale, mai tirziu s.a decis realizarea unor retele medii intermediare. Acest lucru a permis dezvoltarea unor companii si organizatii care creaza si mentin aceste retele. Firme precum IBM, MCI si altele au dezvoltat propriile nuclee backbone rapide asigurind accesul a milioane de utilizatori din toata lumea. In prezent reteaua Internet creste cu o viteza pe care creatorii ei nici nu au visat.o. Noi companii se conecteaza cu o frecventa de necrezut, si multe persoane particulare acceseaza Internet.ul prin intermediul distribuitorilor sau prin servicii familiare. Rata de crestere este imposibil de determinat din cauza modului descentralizat in care este gestionata reteaua, dar citeva estimari informale apreciaza cresterea la peste un milion de noi utilizatori in fiecare luna.

Pagina 8 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

2.2. PREZENTARE }I IMPORTAN|{ Internetul a fost descris ca "o colectie larga de retele" sau ca o "retea de retele". Desi ambele defintii sunt corecte, nici una nu surprinde Internetul in totalitatea sa. Pe linga instrumentul care este aceasta imensa conexiune, Internetul inseamna si multimea comunitatilor celor ce il folosesc, fiecare in scopuri diferite : Comunitatea academica utilizeaza Internetul ca pe cel mai mare, complet si totodata complex instrument de invatare (educational), deoarece pe Internet se pot gasi cunostiinte ce permit studierea practic a oricarei discipline imaginabile si in plus se poate comunica rapid si eficient cu alte persoane interesate de aceiasi disciplina; Comunitateaa stiintifica utilizeaza Internetul ca pe un instrument de cercetare si colaborare pentru ca Internetul ofera acces la cele mai avansate facilitati de cercetare din lume; Comunitatea economica utilizeaza Internetul ca pe un mediu de derulare al afacerilor. Internetul nu este o organizatie monolitica, avand o conducere si un grup de control unice: Internetul este o societate de retele de calculatoare interconectate, independente dar care se supun unor protocoale globale. In concluzie Internetul este o "retea de retele", ceea ce inseamna ca multe retele diferite conduse de mai multe organizatii sunt conectate impreuna pentru a forma Internet. Internetul permite oamenilor sa comunice, sa imparta informatii intre ei, dar cel mai mare avantaj este ca reprezinta un instrument ce ofera acces la cantitati vaste de informatii din intreaga lume. World Wide Web (WWW sau W3) este o retea de resurse informationale de o extraordinar de mare diversitate in ceea ce priveste continutul. Este un sistem interactiv hipermedia (adica un sistem ce contine si suporta patru categorii importante de tipuri de informatie: text, imagini, sunete si imagini animate) construit pe Internet. Pentru a face aceste resurse disponibile unei audiente cit mai largi, Web.ul se sprijina pe trei mecanisme fundamentale: O schema uniforma de denumire pentru a localiza resursele in Web; Protocoale pentru accesarea resurselor astfel denumite in Web; Hypertextul pentru navigarea comoda de la o resursa la alta. Web; Web-ul reprezinta totalitatea paginilor care pot fi cautate si accesate printr-un protocol special intitulat HTTP (HiperText Transfer Protocol). Web-ul este un spatiu virtual de informatie. In Internet gasiti calculatoare - in Web gasiti documente, sunete, imagini, animatii... intr-un cuvint informatie. In Internet,
Pagina 9 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

conexiunile sunt cabluri ce leaga calculatoarele - in Web conexiunile sunt legaturile hipertext dintre documente (link-urile). Web-ul exista datorita programelor care asigura comunicarea intre computerele conectate la Internet. Web-ul nu poate exista independent de Net. Web-ul a facut Internetul accesibil deoarece oamenii sunt interesati de informatie si nu prea vor sa stie de calculatoarele si cablurile din spatele acesteia. WWW-ul este cel mai vizibil instrument Internet, transformindu-l, prin capacitatea sa de a prezenta informatia, in cel mai important instrument al zilelor noastre si intr-o sursa de informatii fara egal. Pe Web se pot face in esenta patru lucruri si anume: Primul ar fi simpla publicare, cam ceea ce fac 99% din oameni, la aceasta ora. Publicatiile electronice apar la confluenta dintre publicatiile pe hirtie si produsele software cu caracteristicile lor de interactivitate. Al doilea lucru ar fi publicatii complexe, interactive. Se estimeaza ca acest tip de publicatii se va dezvolta spectaculos in urmatorii doi ani. Prin aceste publicatii se pot explora interactiv bazele de date ale unei companii, se pot cauta specificatiile unor anumite produse sau se poate solicita ceva completind niste formulare. Al treilea lucru este comertul. A face comert este mai greu decit a face publicare complexa deoarece presupune conectarea Web-ului la sistemul de management si la cel de contabilitate. Cel de-al patrulea lucru este IntraNet-ulsau Web-ul intern. In loc sa scrie citeva versiuni diferite ale aceleiasi aplicatii, una pentru PC, alta pentru Mac si una pentru Unix, proiectantii vor scrie una singura, independenta de platforma. Companiile mari vor utiliza zeci sau sute de servere Web interne ca mijloc de comunicatie interna. 2.3. HTML. PREZENTARE Limbajul pentru hipertexte, in engleza Hipertext Markup Language (HTML), a fost initial dezvoltat de catre oamenii de stiinta ca o unealta utilizata la partajarea documentelor in intreaga comunitate stiintifica internationala care utiliza si utilizeaza Internetul. Pentru a publica informatii care sa fie distribuite global in Internet este necesar un limbaj universal de scriere a acestora, limbaj care sa fie potential inteles de toate computerele din Internet. Limbajul folosit in acest sens de catre World Wide Web este HTML (Hipertext Markup Language). HTML se aseamana cu modalitatile de formatare a textelor de la un procesor de texte uzual in sensul ca adauga textului ce se doreste a fi publicat, informatii de formatare si
Pagina 10 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

permite inglobarea si altortipuri de informatii (imagini, sunete etc). Toate acestea indica modul de afisare (prezentare) pentru programele capabile sa inteleaga aceste informatii. Ceea ce il deosebeste de toate celelalte formate ale procesoarelor de texte este faptul ca un document HTML este un document ce contine informatie in format text-pur (numai caractere ASCII) in timp ce procesoarele de texte folosesc formate particulare. Astfel, un document HTML pote fi afisat (prezentat) de un numar mare de programe de navigare (browsere Web) care ruleaza pe un mare numar de platforme. Documentele HTML pot fi create cu un editor de texte sau cu editoare HTML care permit crearea vizuala (WYSIWYG) rezultind insa tot documente in format text-pur . Limbajul HTML da autorilor posibilitatea : Sa publice documente cu headere, texte, tabele, liste, fotografii etc; Sa regaseasca on-line informatii prin intermediul hiperlink-urilor accesate printr-un simplu click de mouse; Sa proiecteze formulare pentru realizarea tranzactiilor cu servere aflate la distanta pentru cautari de informatie sau pentru activitati specifice comertului; Sa includa foi de calcul tabelar, clipuri video, sunete si alte aplicatii direct in documente. Limbajul HTML are patru caracteristici principale: Foloseste un marcaj descriptiv pentru a indica diversele actiuni ce trebuie executate. Aceasta inseamna ca parti ale documentului descris de HTML sunt marcate cu nume descriptive, ca de exemplu <CHAPTER> sau <TITLE> care sunt aplicabile oricarei portiuni de date corespunzatoare din document. Defineste structuri de documente ierarhice si legaturi intra- si inter-documente. O legatura este o relatie unara intre doua elemente ale unui document. Structura unui document este insotita de astfel deee legaturi intre elementele sale. Limbajul HTML este guvernat de o descriere formala. HTML are o descriere a tipului documentului (Document Type Definition DTD) care stabileste specificatiile formale ale limbajului. DTD stabileste sintaxa limbajului, descrie fiecare element individual al unui document scris in limbajul HTML, defineste atributele permise pentru fiecare element si descrie modelul datelor continute in fiecare element. In corelatie cu informatiile despre elemente, DTD ofera definitii pentru entitatile externe ce pot fi referite in HTML. Atit specificatiile limbajului cit si limbajul insusi pot fi citite si de om dar si de computer. Datorita faptului ca elementele de marcare sunt separate de text prin siruri de delimitare alcatuite din caractere tiparibile, textul si marcajele pot coexista.
Pagina 11 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

HTML este un limbaj bazat pe SGML (Standard Generalized Markup Language). SGML este un standard international (ISO-8879) aprobat in 1986. SGML ofera o modalitate de a reprezenta structura documentelor si hyperdocumentelor. Este totodata si o cale de a codifica hyper-documentele astfel ca acesta sa poata fi interschimbate asemanator procesului de interschimbare a unor documente in cazul mai multor autori care colaboreaza utilizind platforme diferite aflate la distanta. SGML este un sistem complex de descriere a documentelor. Este utilizat pentru descrierea structurii generale a diferitelor tipuri de documente fara sa fie un limbaj de descriere a paginii. Principala preocupare a SGML se rasfringe asupra continutului documentului, nu asupra aspectului sau. Deci, in virtutea trasaturilor mostenite de la SGML, HTML este un limbaj pentru descrierea documentelor structurate. Teoria din spatele acestui limbaj se bazeaza pe faptul ca majoritatea documentelor au elemente comune si ca daca definesti un set de elemente, poti marca elementele documentului cu etichetele corespunzatoare. Majoritatea etichetelor HTML arata sub forma: <NUME ETICHET{> Textul afectat de eticheta </NUME ETICHET{> si indica navigatorului elemente de structura documentului, formatare, hypertext sau alte elemente. Documentele HTML contin doar textul propriu-zis si etichetele HTML iar sursa lor poate fi usor vazuta din orice navigator. Diferenta majora dintre procesoarele de texte si procesoarele HTML este ca acesta din urma nu se preocupa de cum anume vor aparea pe ecran elementele documentului. Cu foarte putine exceptii, HTML nu descrie modul de prezentare al documentului ca un intreg. El ofera (deocamdata) un suport redus in stabilirea plasamentului sau felului in care vor fi afisate elementele documentului. Proiectantii HTML au ales intentionat aceasta varianta, motivul fiind acela ca nu se cunosc posibilitatile platformei pe care va fi vazut documentul (dimensiunea ecranului, fonturile instalate, etc). Prin separarea structurii documentului de felul in care este afisat se ofera o mai mare libertate programului care intelege HTML si afiseaza documentul. Acesta poate sa ia hotariri privind formatarea documentului pe baza posibilitatilor platformei respective. Este ceea ce fac navigatoarele Web, in afara functiilor de comuniicare si aducere a documentelor de pe Net. Cind programul de navigare incarca un document HTML el citeste documentul in cautarea etichetelor HTML, formateaza textul si imaginea si le afiseaza pe ecran. Este motivul pentru care acelasi document HTML apare usor diferit cind este privit cu navigatoare diferite. Desi in aceasta faza de dezvoltare posibilitatile de formatare oferite sunt !nca destul de limitate, oferind un control destul de
Pagina 12 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

redus asupra formei documentului, avantajul faptului ca documentele pot fi transferate si vazute oriunde pe Net, independent de platforma si de programul de navigare folosit, a condus la raspindirea sa foarte rapida. Orice versiune a HTML include elemente cum ar fi : text centrat sau aliniat drreapta, tabele, formule matematice, aliniere imagine si text. Extensiile, care au aparut in numar mare in ultima vreme, sunt seturi de etichete HTML introduse de diverse companii (in general cele producatoare de navigatoare) care permit autorilor de documente HTML sa evite o parte din constingerile standardului. Cele mai raspindite sunt extensiile Netscape si Internet Explorer. Se pune insa intrebarea: De ce a fost preferat HTML pentru publicatii pe Web, cind pentru realizarea publicatiilor electronice exista mai multe tehnologii? Primul motiv este simplitatea. Al doilea ar fi acela ca permite formatarea textului ASCII cu etichete in format ASCII. Rezulta de aici o compresie buna, suport pentru legaturi hypertext si usurinta in a scrie programe de navigare pentru vizualizarea documentelor. 2.4. LIMBAJE DE SCRIPTARE Baza comunicarii intre serverele si clientii Web, la nivel de aplicatie este asigurata de protocolul HTTP(HyperText Transfer Protocol). Protocolul HTTP este folosit in special pentru hipertext, dar este un protocol generic, putind sustine un sistem distribuit pentru managementul obiectelor de date. O caracteristica importanta a protocolului este independenta de platforma, diferitele calculatoare care comunica prin HTTP putind folosi diverse sisteme de operare si aplicatii hipertext. Principalele concepte cu care lucreaza protocolul sunt cererea si raspunsul: un client Web trimite un mesaj(cererea) la un server. Mesajul contine identificatorul resursei dorite, dat sub forma unui URI(Uniform Resource Identifier), metoda de acces folosita, precum si o serie de meta-informatii care pot fi utile serverului. Raspunsul serverului cuprinde un cod indicind starea serverului dupa interpretarea cererii, un mesaj explicativ pentru codul de stare transmis, meta-informatiile care vor fi procesate de catre client si, eventual, un continut(resursa solicitata). Standard de facto pentru interactiunea clientilor Web cu serverele Web, Common Gateway Interface se afla in prezent la versiunea 1.1. Un program CGI, denumit in mod uzual script, se executa pe serverul WWW fie in mod explicit, apelat din cadrul paginii printr-o directiva speciala, fie la preluarea informatiilor aflate in cadrul cimpurilor unui formular interactiv sau coordonatelor unei zone senzitive. CGI confera interactivitate paginilor Web,
Pagina 13 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

documentele HTML putind sa-si modifice in mod dinamic continutul si sa permita prelucrari sofisticate de date. Programele CGI pot oferi suport si la autentificarea utilizatorilor pe partea de server. Programele CGI pot fi scrise in orice limbaj, fiind interpretate in cazul limbajelor PHP, Perl, Python, TCL sau compilate cum se intimpla pentru limbajul C si Delphi. In conceperea unui script CGI trebuie respectate anumite reguli de baza: programul scrie datele spre a fi transmise navigatorului Web la iesirea standard programul genereaza anteturi care permit serverului Web sa interpreteze corect iesirea scriptului Cele mai multe scripturi CGI sunt concepute pentru a procesa datele introduse in formulare. Un formular se defineste in XHTML folosindu-se marcatori specifici pentru afisarea continutului si introducerea datelor catre clienti, iar scriptul invocat si executat de serverul de Web, va prelua continutul acelui formular si-l va prelucra, returnind eventual rezultatele catre navigator. 2.4.1 PHP . PREZENTARE PHP (PHP: Hypertext Prepocessor), cunoscut n versiunile mai vechi i sub numele de PHP/FI (Personal Homepage/Form Interpreter), iniial a fost gindit a fi o simpl aplicaie CGI pentru interpretarea formularelor definte prin HTML i procesate de un program scris ntr-un limbaj Perl, script shell, executat pe server. n cazul interfeei CGI era necesar permisiunea de a rula programe pe server, ceea ce ducea la lacune n securitate i n plus la disocierea de documentul HTML a programului care procesa datele. PHP (n versiunea curent PHP 4.0) reprezint un pachet puternic care ofer un limbaj de programare accesibil din cadrul fiierelor HTML, limbaj asemntor cu Perl sau C, plus suport pentru manipularea bazelor de date ntr-un dialect SQL (dBase, Informix, MySQL, mSQL, Oracle, PostgreSQL, Solid, Sybase, ODBC etc.) i acces la sisteme hipermedia precum Hyperwave. De asemeni, PHP suport incrcarea fiierelor de pe calculatorul client: upload (standard propus de E. Nebel i L. Masinter de la Xerox, descris n RFC 1867) i ofer suport pentru cookies (mecanism de stocare a datelor n navigatorul client pentru identificarea utilizatorilor, propus de Netscape). Aceast aplicaie este disponibil gratuit pe Internet, pentru medii Unix i mai nou pentru medii Windows (inclusiv sursele), integrindu-se n popularul server Apache.

Pagina 14 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

Istoria PHP-ului ncepe la sfritul anului 1994, cnd Rasmus Lerdorf dezvolt prima versiune, ca proiect personal. PHP-ul este fcut public n debutul anului 1995 sub denumirea de Personal Home Page Tools, fiind considerat un analizor simplist care interpreta cteva macrouri ce puteau fi incluse n cadrul documentelor HTML, permind contorizarea accesului la paginile Web sau accesarea unei cari de oaspei (guestbook). Analizorul a fost rescris la mijlocul aceluiai an i denumit PHP/FI 2.0, unde FI era o alta aplicaie scris de Rasmus Lenford, un interpreter de formulare HTML. A fost adugat i suportul pentru bazele de date mSQL i astfel PHP/FI a nceput s aib succes, fiind disponibil gratuit pe Web. Se estimeaz c la sfritul lui 1996 cel puin 15 mii de site.uri Web utilizau PHP/FI, iar n anul 1997 numrul acestora era de 50 de mii. Programatorii Zeev Suraski i Andi Gutmans rescriu analizorul PHP i noua aplicaie formeaz nucleul versiunii PHP 3.0 care include o parte din vechile surse PHP/FI 2.0. Relativ recent, la nceputul anului 2000, a fost facut public versiunea PHP 4.0, utiliznd puternicul motor de scriptare Zend i oferind suport nu numai pentru servrul Apache ci i pentru alte servere Web. De asemeni, PHP 4.0 ofer posibilitatea accesrii documentelor XML via DOM. Se estimeaz c numrul site-urilor care folosesc n prezent PHP este de peste un milion. Deja, pe Web, exista o multitudine de aplicaii i utilitare concepute n PHP, care se regsesc grupate i n aa-numitul PEAR (PHP Extension and Add-on Repository). PHP este un limbaj de script care funcioneaz alturi de un server Web. Este de notat diferena cu alte limbaje script CGI scrise n limbaje precum Perl sau C: n loc de a scrie un program cu o multitudine de linii de comanda afiate n final ntr-o pagin HTML, vei scrie o pagin HTML cu codul inclus pentru a realiza o aciune precis. Codul PHP este inclus ntre tag-urile speciale de nceput i de sfrit care permit utilizatorului s treac din "modul HTML" n "modul PHP". Fa de alte limbaje script, precum Javascript, la PHP codul se execut pe serverul Web, nu in navigator(client Web). In consecinta, PHP poate obtine accesul la fisiere , baze de date si alte resurse inaccesibile programului JavaScript. Acestea contin bogate surse de continut dinamic care atrag vizitatorii. Dac pe serverul Web se afl un script similar, clientul nu va primi decit rezultatul execuiei scriptului, fr a avea nici o posibilitate de acces la codul care a produs rezultatul. V putei configura serverul de Web s prelucreze (analizeze) toate fiierele HTML ca fiiere PHP. Astfel nu exist nici un mijloc de a distinge paginile care sunt produse dinamic de paginile statice.
Pagina 15 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

Limbajul PHP posed aceleai funcii ca alte limbaje permiind s se scrie scripturi CGI, s colecteze date i s genereze dinamic pagini web sau s trimit i s primeasc cookies. Marea calitate i cel mai mare avantaj al limbajului PHP este suportul cu un numr mare de baze de date. A realiza o pagin web dinamic cu o baza de date este extrem de simplu. Urmtoarele baze de date sunt suportate de ctre PHP: Adabas D dBase Empress FilePro Hyperwave IBM DB2 Informix Ingres InterBase FrontBase mSQL Direct MS-SQL MySQL ODBC Oracle Ovrimos PostgreSQL Sesam Solid Sybase Velocis Unix dbm

Limbajul PHP are deasemenea suport pentru diverse servicii server utilizind protocoale precum IMAP, SNMP, NNTP, POP3 i HTTP. Fiecare program PHP include doua linii speciale, care indica serverului PHP ca textul cuprins intre cele doua linii este alcatuit din instructiuni PHP. <?php ?> Practic aceste linii pot fi asimilate copertelor unei carti, care pastreaza unitatea programului PHP. Programele PHP executa trei categorii de operatii elementare: obtin date de la un utilizator executa prelucrari ale datelor, respectiv obtin accesul la datele stocate in fisiere si baze de date si le manipuleaza afiseaza date astfel incit un utilizator sa le poata vizualiza. Pentru executarea unui script trebuie mai intii incarcat scriptul intr-un server unde este instalat PHP. Accesul la distanta la un server Linux sau Unix se poate face prin intermediul protocoalelor Telnet sau SSH, daca in prealabil se primeste autorizare de folosire a acestor protocoale de la administatorul de sistem pentru un anumit utilizator. Daca se foloseste un server Microsoft Windows situat in aceeasi retea locala ca si statia de lucru atunci este posibila alocarea de catre adimistratorul de retea a unei partitii de fisiere in acest scop.

Pagina 16 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

In vederea incarcarii scriptului prin intermediul protocolului FTP adimistratorul de sistem trebuie sa furnizeze utilizatorilor autorizati urmatoarele informatii: numele serverului gazda numele de utilizator si parola pentru deschiderea sesiunii de lucru prin intermediul protocolului FTP catalogul in care trebuie sa se gaseasca scripturile PHP localizatorul uniform de resurse(URL), pe care trebuie sa-l folositi pentru a obtine acces la scripturile PHP Dupa ce incarcarea scriptului PHP a fost realizata cu succes acesta se lanseaza in executie prin dechiderea unui navigator Web(client) cu adresa URL asociata scriptului PHP. 2.4.2. SERVERUL WEB APACHE Serverul de Web Apache sta la baza a peste 60% din domenii, potrivit unui studiu Netcraft Web Server. Providerii de Internet si companiile de gazduire de aplicatii pe Web apeleaza deseori la Apache din cauza suportului sau pentru numeroase platforme, capabilitatilor de gazduire virtuala usor de implementat si modulelor sale care ii extind capabilitatile. Caracteristica Apache Portable Routine(APR) optimizeaza capabilitatile precum administrarea proceselor pentru fiecare sistem de operare, dar permite serverului propriu-zis sa ignore distinctiile specifice fiecarei platforme. Acest lucru a imbunatatit performanta si stabilitatea implementarilor Windows, prin eliminarea emulatorului. Mai mult APR este accesibil si dezvoltatorilor Web care scriu programe multi-platforme in C, care este mai rapid decit limbajele interpretative, precum PHP si Perl, folosite de obicei pentru dezvoltare Web. La acest lucru se adauga faptul ca serverul propriu-zis este independent de protocoale. Cu toate ca este in principal un server HTTP(Web), este proiectat sa suporte alternative cum ar fi FTP. O astfel de structura simplifica administrarea si reduce riscurile de securitate. O parte insemnata din atractivitatea Apache o constituie versabilitatea sa. API-ul sau deschis a permis dezvoltatorilor sa scrie diferite module care i-au schimbat comportamentul. Daca serverului ii lipseste o functie de care are nevoie un sit, sunt mari sanse ca undeva sa fie disponibil un modul plug-in. Serverele de Web au ca functionalitate de baza receptionarea de cereri anonime de la clienti si furnizarea de informatii intr-o maniera dorita a fi eficienta si rapida. De fapt un server Web este un daemon care accepta conexiuni conforme protocolului HTTP, raspunzind cererilor receptionate de la clienti. Pentru a asigura servicii HTTP, serverul Apache trebuie sa
Pagina 17 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

fie instalat in sistem(in mod uzual, fiind vorba de un pachet RPM in Linux sau de un program executabil .exe in Windows), iar daemon-ul httpd pornit. Apache este un sistem modular, alcatuit dintr-un server de baza si mai multe module care sunt incarcate dinamic intr-un mod similar cu functionarea modulelor din nucleul Linux. Apache poate fi configurat cu ajutorul interfetei grafice apacheconf(Apache Configuration Tool). Fisierul de configurare principal este http-conf si este de obicei localizat in directorul /etc/httpd (in versiunile de Linux sau Unix). In anumite cazuri, este necesar sa se restrictioneze accesul la anumite documente, prin intermediul autentificarii prin nume de utilizator si parola sau in functie de adresa calculatorului clientului Web. Pentru autentificarea utilizatorilor, vom parcurge doi pasi: se creeaza un fisier continind numele si parolele utilizatorilor care vor avea acces la anumite date de pe serverul Web(in particular Apache) se configureaza serverul pentru a seta care resurse vor fi protejate si care sunt utilizatorii avind permisiunea accesarii lor, dupa introducerea unei parole valide Configurarea serverului se poate realiza fie prin fisierul httpd-conf, fie prin .htacces, indicind o zona protejata, de obicei in functie de directoarele dorite a fi accesate pe baza de autentificare. Fisierul .htaccess va fi stocat in directorul asupra caruia dorim sa modificam comportamentul implicit al serverului Web. Inainte de a modifica maniera de autentificare din fisierul .htaccess, administratorul serverului Apache va specifica in httpd.conf ca autentificarile sa se realizeze via .htaccess. De asemenea, Apache ofera posibilitatea de a servi mai multe situri Web simultan, altfel spus, gazduire virtuala(virtual hosting). Exista doua metode de implementare a gazduirii virtuale: prima bazata pe nume si a doua bazata pe adrese IP. Masinile virtuale bazate pe adresa utilizeaza adresa IP a conexiunii pentru a determina masina virtuala corecta. Astfel pentru fiecare gazduire virtuala bazata pe nume, determinarea masinii virtuale se face pe baza numelui acestuia. Gazduirea virtuala bazata pe nume este mai simplu de implementat, si este recomandata utilizarea acesteia. Pentru a utiliza serviciul de gazduire virtuala, trebuie mai intii stabilite adresa IP si portul pentru serverul care va accepta cereri pentru respectiva masina virtuala. 2.4.3 ADMINISTRAREA BAZELOR DE DATE CU MySQL

Pagina 18 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

Dezvoltat de firma suedeza MySQL AB, MySQL este un server de baze de date disponibil gratuit, cu sursa deschisa(open-source) care ofera fiabilitate si avantaje reale. Frumusetea serverului MySQL este simplitatea sa fundamentala. Administrarea bazei de date se face folosind peste o duzina de utilitare in linia de comanda, cel mai important fiind mysql, un shell interactiv pentru controlul si interogarea bazei de date. Utilitarele ruleaza cel mai bine pe sistemul Linux, platforma pe care MySQL a fost dezvoltat initial. Alte doua utilitare cu sursa deschisa, oferite pe platforma Windows, care ofera un set de comenzi de administrare sunt MySqlManager, un utilitar de interogare in mod grafic similar cu mysql si WinMySQL admin, o consola pentru administrarea detaliilor configurarii lui MySQL. MySQL realizeaza cu usurinta importarea diverselor baze de date si exportarea sub forma fisierelor sql. Tranzactiile nu sunt parte a tabelelor implicite(ISAM) ale lui MySQL, dar sunt incluse doua tipuri noi de tabele . Berkley DB(BDB) si InnoDB . care au fost dezvoltate de alte firme. Administratorii de firme si dezvoltatorii de baze de date au ajuns la concluzia ca MySQL are o dezvoltare energica si loiala, ca sa nu mai mentionam reputatia cistigata cu truda, de baza de date sigura. MySQL opereaza in baza unui model client/server. Orice masina care doreste sa proceseze interogari asupra unei baze de date MySQL trebuie sa ruleze MySQL server(mysqld), care este responsabil de tot traficul de tip intrari/iesiri(incoming/outgoing) cu baza de date. Ca orice server, mysqld "asculta" pe un port particular (3306) eventualele cereri de conexiune ale unui "client" - orice aplicatie care trimite cereri catre o baza de date via mysqld. Acest client poate fi un simplu script PHP care poate trimite o cerere catre baza de date prin intermediul serverului MySQL sau chiar clientului mysql. Clientul mysql este o interfata interactiva pentru transmiterea de comenzi catre server. Modelul de securitate folosit de MySQL se bazeaza pe nume de utilizator, parola, nume server(hostname) sau adresa de IP si privilegii, fiind similar celui generic folosit de sistemele Unix. Prin privilegii se inteleg in cazul MySQL operatiunile ce vor fi permise asupra bazei/bazelor de date, tabelelor sau indecsilor, cum sunt de exemplu SELECT, INSERT, UPDATE, DELETE, CREATE, DROP. Datele sunt obiectul celor mai multe operatii de prelucrare, iar sistemele de gestiune a bazelor de date furnizeaza cele mai complexe si puternice facilitati pentru lucrul cu datele. PHP include o biblioteca de functii care furnizeaza o interfata cu sistemul MySQL de

Pagina 19 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

gestiune a bazelor de date. Folosind aceste functii, un program PHP poate obtine accesul la datele rezidente intr-o baza de date MySQL si le poate modifica. Majoritatea interactiunilor cu o baza de date MySQL se poate desfasura dupa un model secvential simplu: se deschide o conexiune cu serverul MySQL se specifica baza de date la care se obtine accesul se emit interogari SQL, se obtine accesul la rezultatele interogarii si se executa operatii non-SQL se inchide conexiunea cu serverul MySQL Din punct de vedere al limbajului PHP, exista doua categorii de interogari SQL: interogarile SELECT, care returneaza rinduri ale unui tabel interogarile UPDATE, INSERT si DELETE, care nu returneaza rinduri ale unui tabel Ambele categorii de interogari sunt emise folosind functia mysql_query(), dar verificarea si prelucrarea celor doua categorii de rezultate ale interogarilor sunt procesate destul de diferit. Capitolul 3 Proiectarea general a unui magazin virtual

3.1 Obiectivele noului sistem Proiectarea general are ca obiectiv elaborarea concepiei logice a sistemului informatic, definirea acestuia din punct de vedere structural i funcional. Proiectarea general presupune stabilirea componentelor sistemului informatic. Totodat proiectarea generala presupune analiza datelor de ieire, a bazei informaionale de intrare, a documentelor pe care sunt consemnate datele de intrare, a legturilor dintre ele i a funcionalitii sistemului astfel nct toate elementele sale s formeze un ntreg. Structura general a sistemului informatic cuprinde un ansamblu de intrri, prelucrri i ieiri definite n funcie de obiectivele noului sistem. Exist mai multe variante de abordare a proiectrii unui sistem informatic : fie se poate pleca de la intrri, fie de la ieiri, fie se poate realiza o variant mixt. Analiznd modul de obinere a fiecrei informaii se determin baza informaional de intrare, apoi se realizeaz celelalte faze ale proiectrii. Fazele proiectrii se parcurg in ordinea :
Pagina 20 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

stabilirea obiectivelor; proiectarea ieirilor; proiectarea bazei informaionale de intrare; codificarea; proiectarea documentelor de intrare; proiectarea structural i funcional; elaborarea documentului. Aceast variant prezint avantajul furnizrii unui coninut complet al bazei informaionale de intrare pentru obinerea ieirilor solicitate. 3.2 Proiectarea unui magazin virtual 3.2.1 Pagina Web Lansarea unui magazin virtual nu este o chestiune simpl, ci necesit mult munc i studiu aprofundat al situaiilor existente si al posibilitilor viitoare. Ca i comerul clasic, vnzrile on-line constituie un proces care trebuie mbuntit n mod continuu, iar la baza sa trebuie s se afle un plan de afaceri bine pus la punct. Foarte important este dac magazinul virtual reprezint o extindere pe internet a unui magazin deja existent sau dac va efectua exclusiv comer electronic. In primul caz, exist deja experiena vnzrii. Mai mult, exist un sprijin solid pentru dezvoltarea reelei de distribuie a vnzrilor efectuate on-line. In fapt, majoritatea magazinelor virtuale din spaiul Internet romnesc sunt extensii ale unor magazine sau reele de magazine clasice. Aa cum un magazin clasic este situat ntr-o construcie, la fel i pagina web, respectiva magazinul virtual, va trebui gzduit pe un server Web. Acesta va constitui spaiul comercial virtual, punctul de legtur dintre vnztor i clienii poteniali. Se poate apela la serviciile unei firme specializate n acest sens. In cazul n care vnztorul nu posed cunotine, varianta a doua este cu siguran mai adecvat i va da rezultate cu mult mai bune. Ar fi bine ca firma respectiv s asigure i gzduirea web (i eventual nregistrarea domeniului). Vor trebui stabilite tehnologiile. Orice magazin virtual trebuie s dispun de un sistem complex de administrare a coninutului care s permit adugarea, modificarea i tergerea produselor din baza de date (text i imagini). De asemenea, nregistrarea comenzilor i a datelor despre clieni ntr-o baz de date este absolut necesar. Adiional poate fi creat i un sistem care s semnaleze prin e-mail lansarea unei comenzi.

Pagina 21 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

Tot acum este momentul oportun pentru a decide cine va ndeplini aceste sarcini i cine i cum se vor prelua i onora comenzile de pe site Angajarea unui webmaster va constitui desigur un avantaj. Produsele trebuie organizate pe categorii (i eventual subcategorii) astfel nct clienii s poat gsi cu cea mai mare uurin ceea ce caut. O atenie sporit trebuie acordat prezentrii produselor; mai ales imaginile trebuie s fie de calitate excepional, altfel ansele ca vizitatorii s cumpere scad considerabil. Nu n ultimul rnd va trebui s fie realizat un sistem de ajutor (help", ntrebri frecvente") n cadrul site-ului. Nu trebuie pornit de la premisa c vizitatorii magazinului sunt navigatori experimentai i au mai efectuat cumprturi online. De asemenea, trebuie puse la dispoziie informaii detaliate despre livrarea produselor, garanie i post-garanie (dac este cazul) etc i trebuie sa aib posibilitatea de a contacta firma n cazul n care mai au alte ntrebri despre produse (alturi de o adres de e-mail, un formular de contact este o opiune foarte bun).

3.2.2 Pli Un factor deosebit de important n cadrul comerului electronic l constituie plata. Pe web. Se poate vinde 24 de ore pe zi. 7 zile pe sptmn, peste tot n lume. In plus. Cumprtorii i potenialii clieni vor avea acces la informaii de ultim or referitoare la produse, servicii, preuri sau disponibilitatea acestora. Pentru ca acest scenariu s devin cu adevrat realitate, va trebui ca sistemul informatic implementat s fie disponibil non-stop i n tot acest timp el va opera gestiunea comenzilor, facturarea, procesarea plilor i remiterea banilor. Cu excepia cazului n care activitatea se bazeaz pe principiul plata n avans" sau alte metode de plat off-line, obinerea banilor rezultai n urma unei vnzri online presupune o serie de procese de interaciune cu bnci sau alte instituii financiare. Plile cu ajutorul crilor de credit (credit card), banilor electronici (e-cash, cecurilor electronice sau al cardurilor inteligente (smart card) sunt principalele modaliti de plat folosite n comerul electronic Acestea pot fi integrate n sistemul dumneavoastr informatic, sau oferite n regim outsource de un furnizor de servicii de comer (CSP - Commerce Service Provider) care va intermedia plile de la teri. Cea mai rspndit metod de plat n comerul electronic este cea cu carte de credit Aceste tranzacii sunt protejate criptografic, iar modalitatea concret de criptare face ca numai banca sau furnizorul de servicii pentru carduri de credit s poat vedea numrul crii
Pagina 22 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

de credit nu i comerciantul. Acest proces implic ncheierea unor contracte cu instituii financiare, iar din punct de vedere tehnic presupune utilizarea unor tehnologii avansate de criptare i autentificare pentru securizarea mesajelor trimise prin internet Unul din primii pai care trebuie fcui, este deschiderea unui cont la o instituie bancar care ofer servicii de tranzacionare online bazate pe carduri care vor trebui nchiriate pe o sum fix, reprezentat de costul achiziionrii sau nchirierii echipamentelor i softului aferent necesare realizrii comunicrii securizate cu banca, precum i costuri variabile rezultate n urma comisioanelor percepute de banc la fiecare tranzacie. De regul instituia financiar va impune un volum minim de tranzacii lunare, percepnd o sum minim pltit indiferent de volumul vnzrilor. Ca alternativ la implementarea unui sistem propriu, se poate apela la furnizori de servicii de plat (PSP) sau la furnizori de servicii de comer. PSP-ul acioneaz ca intermediar ntre comerciant i posesorii de carduri oferind servicii de autorizare i plat online. El beneficiaz de conexiuni integrate online cu bncile care autorizeaz plile i realizeaz automat transferul banilor. Poate conferi clienilor statutul de comerciani web i, de regul, furnizeaz tot ceea ce este necesar pentru integrarea uoar a funciilor de procesare a cardurilor de credit n propriul site web. Pe lng o calitate mai bun a serviciilor oferite clienilor, cum ar fi suport tehnic permanent sau eliminarea unei pri semnificative a birocraiei specifice sectorului bancar, PSP-ii mai au i alte avantaje, cum ar fi: credibilitate financiar dovedit n faa bncilor ca urmare a unei relaii de mai lung durat cu acestea (aspect extrem de important care lipsete de regul societilor comerciale mai tinere), au contracte cu mai muli furnizori de carduri, opereaz cu mai multe bnci, pot realiza conversia automat ntre monedele diverselor ri i, nu n ultimul rnd, practic un comision mult mai mic dect instituiile bancare. Cumprtorul este pus n legtur online cu PSP-ul care-i va cere informaiile necesare pentru procesarea plii: tipul cardului, numrul acestuia, numele proprietarului i data expirrii cardului. Aceste informaii sunt transmise mai departe ageniei de carduri, mpreun cu suma totala de plat, comisionul, numrul de cont al magazinului i tipul tranzaciei dorite. Din acest moment tranzacia urmeaz calea obinuit a oricrei tranzacii cu card de credit. Informaia este criptat i trimis de ctre procesorul de pli (PP) prin intermediul unei linii securizate de comunicaie ctre un sistem de faciliti integrate numit INP (interchange network processor), fiecare marc de card de credit urmnd a fi procesat de un INP distinct. Apoi se comunic pe o linie securizat cu banca, aceasta la rndul ei contactnd banca cumprtorului (cea care a emis card-ul folosit de client) pentru a verifica
Pagina 23 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

dac fondurile sunt disponibile, n caz afirmativ, tranzacia se finalizeaz i banca trimite un cod rezultat", sub forma unui numr de verificare ctre PSP. PSP trimite mai departe acest cod ctre softul care mijlocete cumprturile i care proceseaz datele, anunnd apoi clientul c tranzacia s-a efectuat cu succes sau a fost refuzat. Totul se ntmpl n interval de cteva secunde. Din pcate, n Romnia astfel de sisteme sunt implementate de foarte puine magazine virtuale. Soluiile alese de majoritatea comercianilor pe internetul romnesc sunt plata ramburs, la livrare, prin mandat potal sau ordin de plat. Motivele sunt lesne de neles, n consecin, aceste magazine virtuale nu pot fi considerate comer electronic n toat puterea cuvntului, ci mai degrab cataloage de produse cu opiune de comand online. 3.2.3 Promovare Spre deosebire de un magazin clasic, n care potenialii clieni mai intr i din ntmplare sau din curiozitate, pe web ansa ca cineva s acceseze direct pagina este extrem de mic (pornind de la premisa c nu a auzit niciodat de ea). Pentru a avea vizitatori, site-ul trebuie nscris la motoare de cutare i directoare web. Se poate apela i la publicitatea pe internet - bannere publicitare afiate pe diverse portaluri sau la marketingul prin e-mail. Bineneles c mai sunt si modalitile clasice de promovare: spoturi TV sau radio, inserri n diverse publicaii, etc. 3.2.4 Actualizare Informaiile nu trebuie lsate s se nvecheasc. Vizitatorii trebuie s vad c au n fa un site dinamic, cu coninut mereu proaspt, seciuni cu nouti, oferte speciale, concursuri sau alte faciliti asemntoare i va determina pe muli s se ntoarc cu plcere la magazinul virtual astfel proiectat. 3.2.5 Mecanisme de plat electronic Comerul electronic va putea evalua dincolo de un anumit nivel doar atunci cnd consumatorii obinuii vor percepe un mecanism de plat electronic la fel de sigur ca cel obinuit. plata prin Internet - de ndat ce a fost pus n funciune un sistem de vnzri on-line, comerciantul va putea vinde 24 ore pe zi, 7 zile pe sptmn, peste tot n lume pe unde a ajuns Internetul. Mai mult, cumprtorii i clienii poteniali vor avea acces la informaii de ultim or referitoare la produse, servicii, preuri i disponibilitatea acestora. Dar comerciantul va trebui s se asigure ca sistemul informatic s fie disponibil non-stop i n tot
Pagina 24 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

acest timp el va opera gestiunea comenzilor, facturarea, procesarea plailor i remiterea banilor; soluiile de plat n timp real - cu excepia cazurilor off-line, obinerea banilor rezultai n urma unei vnzri de tip on-line presupune o serie de procese de interaciune cu bnci sau alte instituii financiare. n prezent achitarea unei facturi se realizeaz cu ajutorul crilor de credit (credit card), banilor electronici (e-cash), cecurilor electronice sau al cardurilor inteligente (smart card) care sunt principalele metode de plat folosite n comerul electronic. Metodele de plat pot fi integrate fie la nivelul comerciantului, n sistemul informatic al acestuia, fie oferite outsource de un furnizor de servicii de comer (CSP Commerce Service Provider) care va gestiona/intermedia plile de la teri; cartea de credit - reprezint cea mai utilizat form de plat prin Internet. Utilizarea acesteia este simpl: clienii care navigheaz n cadrul unui sit web i decid s achiziioneze un produs sau serviciu trebuie s introduc informaiile despre cartea de credit prin intermediul unui formular HTML. Coninutul completat (tipul cardului, numrul acestuia, numele proprietarului i data expirrii cardului) este trimis sitului web, unde informaia este colectat i trimis la banc. Daca situl comerciantului are stabilit o legtur direct cu banca, atunci este posibil plata pe loc n cazul n care exist credit suficient pentru a plti bunurile comandate. Tranzaciile on-line care folosesc plata cu carduri sunt protejate criptografic, iar modalitatea concret de criptare asigur faptul c numai banca sau furnizorul de servicii pentru cri de credit vor putea avea acces la numrul crii de credit, nu i comerciantul. O prim faz implica ncheierea unor aliane /contracte cu instituii financiare, utiliznd tehnologii avansate de criptare i autentificare pentru securizarea mesajelor trimise prin Internet. Comerciantul trebuie sa-i deschid un cont la o banc oferind servicii de tranzacionare on-line bazata pe carduri. Tehnologia de criptare folosit n mod curent este SSL (Secure Socket Layer) elimin cu succes posibilitatea ca un intrus s obin numrul cardului, presupunnd c el intercepteaz datele astfel criptate. Dezavantajul consta n faptul ca SSL nu permite comerciantului s se asigure c persoana care folosete cardul ntr-o tranzacie este chiar deintorul acestuia. De asemenea, SSL nu ofer nici o cale prin care clientul s afle dac situl comerciantului este cu adevrat autorizat s accepte plata cu cri de credit i c nu este doar un sit pirat, proiectat cu scopul de a coleciona datele despre astfel de carduri (crackers). Problema a fost rezolvata prin apariia unor noi tehnologii denumite SET (Security Electronic Transaction), dezvoltata de MasterCard i Visa. Set rezolv problema autentificrii prin asignarea unor certificate digitale att clientului, ct i comerciantului. Set ofer o securitate sporit fa de cea tradiional. Pentru a nu mai da acces comerciantului la
Pagina 25 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

numrul de card al clientului, SET l cripteaz de o manier care asigur faptul c doar consumatorul i instituiile financiare abilitate au acces la el. Fiecare dintre actorii implicai ntr-o tranzacie (comerciant, client sau instituie financiar) folosete certificatul SET privat, care joac i rol de autentificare, n conjuncie cu cheile publice asociate certificatelor care identific pe ceilali actori. n practic, o companie ter (Verisign) ofer serviciul de a furniza certificate digitale clienilor si, deintorii de cri de credit. Ct privete comerciantul, procesul este similar: n momentul efecturii unei cumprturi on-line, nainte de a se realiza vreun schimb de date n vederea demarrii tranzaciei, software-ul care integreaz tehnologia SET valideaz identitatea comerciantului i a deintorului crii de credit, procesul de validare const n verificarea certificatelor emise de furnizori autorizai de astfel de servicii; facturile de plat (e-invoice) - crile de credit reprezint cea mai comun soluie n modelul B2C i B2B. Volumul tranzaciilor n sectorul B2B este mult mai mare fa de volumul tranzaciilor efectuate prin intermediul crii de credit. Un alt motiv este c majoritatea companiilor au utilizat deja acest instrument n forma sa clasic i schimbarea modalitii de plat ar impune o reorganizare a proceselor economice, care ar necesita costuri prea mari. Procedura de plat prin e-invoice este urmtoarea - valoarea tranzaciei necesare este transmis automat la furnizori printr-un sistem informatic, acestea rspund printr-o factur care urmeaz a fi pltit prin diferite mijloace. Sunt necesare metode securizate pentru filtrarea accesului la bazele de date interne ale companiei. Standardul EDI (Electronic Data Interchange) ofer o infrastructur n acest scop. Problema major o constituie legislaia comercial a fiecrei ri care ar trebui s recunoasc valabilitatea facturilor electronice. Avantajele facturii electronice in de reducerea costurilor pentru transmitere i de micorarea posibilitilor de apariie a erorilor; cecurile electronice (Internet cheques) - NetCheque - un sistem dezvoltat la Information Sciences Institute of the University of Southern California - www.usc.edu . Cumprtorul i vnztorul trebuie s aib un cont deschis pe situl NetCheque. Pentru asigurarea securitii este folosit identificarea prin protocolul Kerberos i parol. Pentru a plti prin cec, trebuie instalat la client un software special care lucreaz asemenea unui carnet de cecuri. Un client poate trimite un cec criptat prin intermediul acestui software. Comerciantul poate ridica banii de la banc sau poate folosi cecul digital pentru o tranzacie cu alt furnizor. Un cont special din reea verific validitatea cecului i n caz afirmativ trimite un mesaj de accept comerciantului care va livra apoi bunurile. Exemple: PayNow, serviciu dezvoltat de CiberCash - www.cibercash.com sau echech - www.echeck.org
Pagina 26 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

crile de debit (debit cards) necesit introducerea unui numr personal de identificare (PIN) i utilizarea unui dispozitiv hardware care sa citeasc informaia pe band magnetic a crilor de credit. - nu este posibila pe Internet. Posibil s fie nlocuite benzile magnetice cu cipurile electronice folosite pentru smart card-uri, ce vor nlocui crile de credit. banii electronici (e-cash) - utilizeaz un software pentru a salva pe disc magnetic echivalentul banilor lichizi ntr-o form digital. Avantajul acestui sistem l reprezint costul transferului de bani care este aproape nul (costul conexiunii la Internet). Pentru a primi bani este necesar accesarea unei casierii automate (virtuale) disponibile pe web sau deplasarea la un automat bancar, de unde pot fi ridicai banii electronici direct din contul bncii sau prin sistemul de plata cu carte de credit. Dificultatea folosirii e-cash reprezint implementarea unei securiti care s garanteze c acestea nu pot fi alterai. Utilizarea tehnologiilor de criptare, a semnturilor digitale, i a semnturilor electronice ajut la reducerea posibilitilor de fraud care s fac imposibil de utilizat mai mult de o singura dat. O alt condiie este ca banii electronici nu trebuie s dezvluie identitatea persoanei care a pltit cu ei, trebuie s fie anonimi. Sistemul de plat nu trebuie sa aib ca intermediar o banc, doar ntre cei doi parteneri implicai. Exemple: www.digicash.com www.cybercash.com www.milicent.digital.com cardul inteligent (smart card) este popular n Europa Occidental. Permite stocarea informaiilor suplimentare despre clieni n afar de pstrarea banilor pe cipul cardului. Banii de pe card sunt salvai ntr-o form criptat i sunt protejai printr-o parol. Pentru a plti este necesar introducerea acestuia ntr-un terminal hardware. Dispozitivul necesit o cheie special emis de banc pentru a se transfera banii n alt direcie. Putem merge la banc, ncrca cardul i s pltim prin Internet. Avantaje: securitate, simplitatea utilizrii, efectuarea direct fr intermediari, costul sczut al tranzaciilor. Mondex - Marea Britanie, Geld-Karte - Germania. 3.2.6 Momentul efecturii plii electronice Plata nainte de tranzacie - un sistem de acest gen funcioneaz prin salvarea banilor digitali pe un disc sau pe un smart card - care poate fi considerat ca o form digital a banilor obinuii. Un fiier care conine banii digitali este numit portofel virtual (virtual wallet) i pot fi folosii oricnd pentru a plti on-line produse i servicii. Avantajul portofelului virtual const n faptul c este anonim. Dezavantaj - daca este pierdut, banii sunt pierdui.

Pagina 27 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

Plata pe loc necesit accesul direct la baza de date intern a bncii i a ofertantului de plat electronic, iar securitatea trebuie sa fie implementat mai strict (crile de debit); Plata dup tranzacie. Sistemul crilor de credit este cea mai comun form de asemenea plat. 3.3. E-commerce-ul romnesc la sfritul anului 2004 Conform Visa International: n trimestrul II 2004, s-au efectuat circa 7500 de tranzacii comerciale online unde romanii au cheltuit aproximativ 1 milion $ dintre care: 44% din sum s-a cheltuit n SUA, 20% n Italia, 15% in Anglia, iar restul in magazine din alte ri. Valoarea medie a unei tranzacii a fost de circa $133. Tot conform Visa International: n aceeai perioad, n magazinele virtuale romneti, s-au cheltuit circa. 8.000$, cu o medie de 2 tranzacii / zi. Cei care au cheltuit cel mai mult au fost cetenii americani (31%) urmai de britanici (30%). Conform RomCard: 700.000 deintori de carduri, 30 comerciani configurai pentru tranzacii online i 4 bnci ofer suport n Romnia pentru tranzacii online (Alpha Bank, BCR, BCIT i Raiffeisen) prin programele Verified by Visa i 3D Secure.

Capitolul 4 Proiectarea i programarea n PHP a magazinului virtual

4.1 Obiective Site-ul proiectat are ca obiectiv promovarea i vnzarea on-line de produse de mbrcminte ce se afl n stocul magazinului Moda Fashion. Fiecare vnzare va fi precedat de o comand, care va trebui confirmat pentru ca livrarea s aib loc. Confirmarea se va face prin e-mail, astfel c serverul pe care magazinul va fi instalat va trebui s fie capabil s trimit i s recepioneze e-mail-uri. 4.2 Structura magazinului i baza de date Structural, magazinul este compus din trei seciuni: Seciunea de prezentare; Seciunea de client; Seciunea de administrare.
Pagina 28 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

4.2.1. Seciunea de prezentare se adreseaz vizitatorului obinuit, nenregistrat, care poate afla informaii despre magazin, poate avea acces la catalogul de produse i poate afla mai multe detalii despre firm, magazin sau un anume produs prin completarea unui formular. Rspunsul va fi trimis prin e-mail utilizatorului. Principalele pagini care sunt accesibile acestui tip de utilizator (guest) sunt: index.php, magazine.php, produse.php i contact.php. Pentru a avea acces la comenzi, un oaspete al magazinului virtual va trebui s se nregistreze, folosind pagina usernou.php. 4.2.2. Seciunea de client este disponibil utilizatorilor nregistrai. Acetia au posibilitatea, pe lng facilitile obinuite oferite unui oaspete, s comande produse. Pentru aceasta ei au la dispoziie un co de cumprturi n care pot aduga sau din care pot scoate produse pe parcursul navigrii. La sfrit pot trimite comanda printr-un singur click. Paginile principale aflate la dispoziia unui client sunt comanda.php i mod_user.php, unde clienii au acces la datele personale, pe care le pot modifica dup dorin, inclusiv parola de acces. 4.2.3. Seciunea de administrare este accesibil administratorului magazinului virtual, care poate fi un angajat cu acces la produsele magazinului, nu neaprat programatorul magazinului. Un administrator are acces la toate paginile magazinului, n plus el putnd aduga sau modifica produse, vizualiza comenzi i formulare de contact ale utilizatorilor, modifica date, niveluri de acces ale utilizatorilor ori tergere utilizatori, rspunde la mesaje sau tergerea lor, prelucrare comenzi sau tergere manual a acestora n cazul n care nu sunt confirmate. De asemenea, un administrator nu are acces la parola unui utilizator, el neputndu-se loga ca i client folosind numele i parola acestuia. Este o procedur normal n e-commerce, toate parolele fiind stocate criptat n baza de date, dndu-i clientului impresia de siguran. Oricum, un administrator are acces la ntreaga baz de date, putnd manipula informaia dup dorin. 4.2.4. Baza de date folosit este cea aparinnd serverului MySQL i conine 7 tabele: useri, dateuseri, categorii, produse, cart, comanda, contact. Tabela useri este de tip MyISAM i are urmtoarele cmpuri: Camp id nume parola level Tip bigint(4) varchar(16) varchar(16) tinyint(1) Proprietati Nu l Nu Nu Nu Nu Setare de baza Extra auto_increment 1

Pagina 29 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

id id-ul unic al utilizatorului, fiind i index primar nume numele utilizatorului, aa cum va fi el recunoscut de sistem. Scriptul de nregistrare va obliga acest cmp s aib o dimensiune ntre 6 i 16 caractere. parola parola criptat a utilizatorului. i n acest caz, scriptul va condiiona dimensiunea parolei ntre 6 i 16 caractere. level: nivelul de acces: 0 administrator, 1 client Tabela dateuseri este de tip MyISAM i are urmtoarele cmpuri: Camp Tip Proprietati Nu l Nu Nu Nu Nu Nu Nu Nu Nu Nu Nu Setare de baza Extra auto_increment

id bigint(20) nume varchar(70) firma varchar(100) localitate varchar(50) email varchar(100) telefon varchar(20) mobil varchar(20) fax varchar(20) user varchar(20) data date id indexul primar al tabelei; nume numele complet al clientului;

0000-00-00

firma cmp facultativ, reprezint firma creia i aparine clientul; localitate localitatea de reedin; email adresa de e-mail a clientului; telefon cmp facultativ, destinat pentru memorarea telefonului fix al clientului, pentru contactare; mobil cmp facultativ, destinat pentru memorarea telefonului mobil al clientului, pentru contactare; fax cmp facultativ, destinat pentru memorarea faxului clientului, pentru contactare; user numele de utilizator, identic cu cmpul nume din tabela useri; data data nregistrrii clientului. Tabela categorii este de tip MyISAM i are urmtoarele cmpuri: Camp id Tip bigint(20 Proprietati Nu l Nu Setare de baza Extra auto_increment

Pagina 30 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

numecat

) text

Nu

id indexul primar al tabelei; numecat numele categoriei. Tabela produse este de tip MyISAM i are urmtoarele cmpuri: Camp id categorie nume cod pret um culoare marime fisier fisierm tag descriere vitrina unicat Tip bigint(20) text text varchar(15) varchar(20) varchar(10) text varchar(20) text text varchar(20) text tinyint(2) tinyint(2) Proprietati Nu l Nu Nu Nu Nu Nu Nu Nu Nu Nu Nu Nu Nu Nu Nu Setare de baza Extra auto_increment

0 0

id indexul primar al tabelei; categorie categoria n care se afl produsul, avnd corespondent n cmpul numecat al tabelei categorii; cod codul produsului; pret preul produsului; um valuta; culoare culoarea produsului; marime mrimea produsului; fiier numele fiierului care stocheaz imaginea produsului; fiierm numele fiierului de dimensiune redus care stocheaz imaginea produsului; tag eticheta produsului aceasta poate avea una din urmtoarele valori: de vnzare, indisponibil, oferta i special, valori implementate prin program; descriere cmp de tip text, care memoreaz caracteristici distincte ale produsului; vitrina cmp cu dou valori, care stabilete dac produsul va fi afiat ca primul pe coperta catalogului, n dreptul categoriei corespunztoare;

Pagina 31 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

unicat cmp care stabilete dac produsul este unicat sau nu. Tabela cart este de tip MyISAM i are urmtoarele cmpuri: Camp id user data id_prod numeprod buc nr_cart Tip bigint(20) varchar(20) date bigint(20) text int(4) bigint(20) Proprietati Nu l Nu Nu Nu Nu Nu Nu Nu Setare de baza Extra auto_increment 0000-00-00 0 0 0

id indexul primar al tabelei; user numele de utilizator, identic cu cmpul nume din tabela useri; data data comenzii; id_prod id-ul produsului comandat; numeprod numele produsului comandat, lsat aici pentru o mai rapid folosire a tabelei; buc numrul de produse comandate; nr_cart numrul de ordine al coului de cumprturi. Tabela comanda este de tip MyISAM i are urmtoarele cmpuri: Camp id nr_cart data valoare confirmat stare observatii vazut Tip bigint(20) bigint(20) date varchar(20) varchar(4) varchar(100) text varchar(4) Proprietati Nu l Nu Nu Nu Nu Nu Nu Nu Nu Setare de baza Extra auto_increment 0 0000-00-00

id indexul primar al tabelei; nr_cart - numrul de ordine al coului de cumprturi, corespondent cu cmpul cu acelai nume din tabela cart. data data comenzii; valoare valoarea total a comenzii;

Pagina 32 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

confirmat cmp disponibil pentru confirmare. Dac clientul trimite un e-mail de confirmare, acest cmp va fi setat la valoarea da prin cod, altfel, comanda nu va putea fi confirmat i nu va fi luat n considerare stare starea onorrii comenzii - aceasta poate avea una din urmtoarele valori: aplicat, confirmat, n procesare i confirmat, valori implementate prin program; observaii cmp aflat la dispoziia administratorului, pentru adnotri; vzut cmp cu dou valori, indicnd dac aceast comand a fost sau nu vizualizat de ctre administrator, foarte util n cazul unui numr mare de comenzi, pentru c se poate realiza foarte uor un filtru al vizualizrii. Tabela contact este de tip MyISAM i are urmtoarele cmpuri: Camp id nume firma localitate email telefon mobil fax observatii data ora vazut Tip bigint(20) varchar(70) varchar(100) varchar(50) varchar(100) varchar(30) varchar(30) varchar(30) text varchar(20) varchar(20) char(3) Proprietati Nu l Nu Nu Nu Nu Nu Nu Nu Nu Nu Nu Nu Nu Setare de baza Extra auto_increment

id indexul primar al tabelei; nume numele vizitatorului din formularul Contact; firma firma vizitatorului, dac exist, din formularul Contact; localitate localitatea vizitatorului din formularul Contact; email adresa de e-mail; telefon telefonul fix de contact al vizitatorului din formularul Contact; mobil - telefonul mobil de contact al vizitatorului din formularul Contact; fax numrul de fax de contact al vizitatorului din formularul Contact; observaii textul de contact; data data trimiterii formularului; ora ora trimiterii formularului; vazut cmp pentru filtrarea formularelor vzute de ctre administrator.
Pagina 33 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

Tabela contact poate deveni foarte important ca instrument al strategiei de marketing al magazinului virtual. Chiar dac se putea opta foarte uor pentru trimiterea formularului prin e-mail, a fost aleas stocarea acestora n baza de date pentru a putea avea mai uor acces la problemele clienilor. tiind c o csu de mail poate deveni foarte aglomerat de emailuri nesolicitate, problema ar fi ca, n cazul unui numr foarte mare de mesaje, unele din ele s devin potenial pierdute. Stocarea acestora ntr-o tabel provoac att atenionarea administratorului, ct i necesitatea ca acesta s le citeasc, ele fiind marcate ca necitite iniial, starea acestora schimbndu-se numai dup acesta le deschide. 4.3 Funcionare Site-ul este structurat sub form de tabel, fiind mprit n trei pri: header, coninut i footer. Header-ul i footer-ul se vor repeta n fiecare pagin, funcia include(nume_fisier.php) permind scrierea codului doar o singur dat, includerea acestuia fcndu-se foarte uor.

Structura fiecrei pagini va fi urmtoarea: <? include (header.php); // instruciuni script php include (footer.php); ?> Scripturile vor implica folosirea anumitor funcii, cum ar fi, de exemplu aceea de conectare la baza de date MySQL, sau folosirea unor variabile globale. Acestea vor fi memorate ntr-un fier de funcii, numit taxe_func.php, ce se va include n fiecare pagin. Din acest motiv, includerea acestui fiier va avea loc n codul fiierului header.php. De asemenea, va fi inclus un fiier numit stil.inc, care va conine cod css, pentru stabilirea stilului codului html generat de scripturi. Acest fiier respect specificaiile css i are urmtorul coninut:
Pagina 34 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

<style> H1 { font-size: 20pt; color: I0910a3; margin-top : 1px; margin-bottom : 1px; } H2 { font-size: 16pt; color: IFF3300; margin-top : 1px; margin-bottom : 1px; } H3 { font-size: 12pt; color: I000000; margin-top : 1px; margin-bottom : 1px; } H4 { font-size: small; font-variant: small-caps; font-weight: bold; color : IFF6600; } H5 { font-size: 14pt; color: I0000FF; margin-top : 1px; margin-bottom : 1px; }
Pagina 35 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

A{ text-decoration: none; color: Navy; } A:Hover { text-decoration: underline; color: teal ; } HR { color: blue; height: 1pt; } </style> Astfel, dac administratorul decide s schimbe formatul afirii informaiei n pagin, nu va trebui dect s modifice o linie din acest fiier pentru a avea rezultatul scontat de-a lungul ntregului site. Scripturile vor trebui s recunoasc un utilizator din momentul logrii, pn n cel al de-logrii. Acest lucru se poate realiza foarte uor prin intermediul sesiunilor. Controlul sesiunilor reprezint o modalitate nativ a PHP-ului de a recunoate un utilizator n timpul navigrii prin site. Sesiunile n PHP sunt date de un numr unic de identificare generat de server (Session ID) i stocat n partea de client a aplicaiei (se afl stocat n calculatorul) vizitatorului, fie prin intermediul unei cookie, fie transmis prin intermediul URL-ului de la pagin la pagin. Un ID Session funcioneaz ca o cheie ce permite nregistrarea pe server a unei variabile numite session variable, a crei coninut este stocat n partea de server. Astfel, pe toat durata de via a acestei variabile, serverul va ti, bazat pe Session ID, starea clientului ce a cerut accesul. Astfel, dac un client se logheaz folosind un username i o parol, se va crea o variabil numit valid_user, genernd un cookie pe calculatorul clientului, pn la de-logarea acestuia sau avnd o durat de via temporal stabilit. Acest lucru se face prin folosirea funciilor PHP session_register(), respectiv session_destroy().

Pagina 36 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

n cazul nostru, exist dou fiiere, auth.php i auth_admin.php, care gestioneaz starea a dou variabile, $valid_user i $valid_admin, pentru un client (utilizator de nivel 1) i administrator (utilizator de nivel 0). Dac se include unul din acest fiiere ntr-o pagin, scriptul acestora va verifica starea variabilelor de sesiune generate, cu ajutorul variabilelor globale $_SESSION, cu ajutorul instruciunilor de atribuire $_SESSIONa'userid's=$valid_user; i $_SESSIONa'password's=$password. La o prim logare, fiierul login.php va avea un cod de genul: $query ="select * from useri "." where nume='$userid' "." and parola=password('$password')"; $result =mysql_query($query) or die ("invalid Query"); $nr=mysql_num_rows($result); n acest caz, s-a interogat tabela useri, unde s-a cutat numele de utilizator i parola acestuia pentru corespondena acestora cu dou variabile transmise de formularul de logare:

n continuare se verific dac numrul de linii rezultate din interogare este mai mare ca zero, ceea ce nseamn c utilizatorul i parola exist: if (mysql_num_rows($result)>0 ) { $valid_user =$userid; $row=mysql_fetch_array($result); $nivel=$rowa"level"s; if (($nivel==1)||($nivel==0)) { session_register("valid_user"); $_SESSIONa"valid_user"s=$userid; session_register("password"); $_SESSIONa"password"s=$password; } }

Pagina 37 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

Valorile pentru $userid i $password se vor stoca aadar pe server ca i variabile globale $_SESSIONa"valid_user"s, respectiv $_SESSIONa"password"s. Fiierul auth.php va verifica starea acestor variabile. n cazul n care nu le identific, va proceda la afiarea unui mesaj de logare. Dac le gsete, le va pasa mai departe scriptului ca dou variabile obinuite, cea de nume fiind folosit pentru afiarea n orice moment, n pagin, a username-ului clientului logat. Este de la sine neleas utilitatea unei asemenea proceduri: dac un utilizator acceseaz o pagin ce presupune identificare, scriptul va realiza acest lucru i va verifica identitatea clientului. Ulterior, pe toat durata sesiunii, n header va fi afiat, n locul obinuitei interogri de logare:

urmtoarea fereastr:

dac username-ul a fost popescu. Acest lucru indic vizual i transparent faptul c utilizatorul este logat i recunoscut de ctre scripturile ce ruleaz pe server n acel moment, pe toat durata sesiunii. Scriptul din fiierul logout.php va realiza distrugerea tuturor variabilelor de sesiune create: $result =session_unregister("valid_user"); session_destroy(); adic utilizator, precum i ale coului de comenzi i ale comenzii, dac acestea au existat: if ($_SESSIONa"cart"s) { $result=session_unregister("cart");

Pagina 38 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

session_destroy(); } if ($_SESSIONa"com"s) { $result=session_unregister("com"); session_destroy(); } Structurarea magazinului virtual propune vizitatorului parcurgerea anumitor pai: vizitare, nregistrare i comanda produselor. Vizitarea propune mai multe pagini, printre care cea de start index.php care prezint magazinul virtual, cea de imagini din magazinul fizic i cea a catalogului, pagini ilustrate n continuare:

index.php

Pagina 39 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

magazine.php

produse.php n interiorul catalogului, fiecare categorie va conine mai multe produse, n funcie de stocul curent aflat n baza de date:
Pagina 40 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

Fiecare imagine din categorie va conine un link spre caracteristicile produsului respectiv (gama de mrimi, culori, pre, descriere, etc). De asemenea, utilizatorul, chiar i cel nenregistrat va putea completa un formular de contact, n seciunea contact.php

contact.php Navigarea ntre aceste pagini se face cu ajutorul unui meniu grafic, realizat cu ajutorul tehnologiei Javascript:

Pagina 41 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

Pentru accesul la alte seciuni, utilizatorul trebuie fie s se logheze, fie s se nregistreze. nregistrarea presupune accesul link-ului Utilizator nou din header sau prin doi pai, accesarea aceluiai link din pagina login.php, disponibil n meniu. Pagina de nregistrare arat n felul urmtor:

Formularul reine datele deja introduse i ncarc din nou aceast pagin, corespunztor variabilei $submitadduser salvate odat cu apsarea butonului nregistrare. Dac exist, nseamn c s-a apsat butonul, iar seciunea din script va verifica datele introduse: n primul rnd va verifica existena cmpurilor obligatorii, precum i mrime lor, avnd n vedere c att username-le ct i parola au lungimi minime i maxime bine determinate. Folosind funcia valid_email($email) se va verifica validitatea semantic a adresei de e-mail: function valid_email($address) { if (ereg("^aa-zA-Z0-9_s+iaa-zA-Z0-9 t-s+t.aa-zA-Z0-9 t-t.s+$",$address)) return true; else return false; } Dac una din condiii nu este ndeplinit, scriptul va returna o eroare, determinnd utilizatorul s reintroduc datele eronate. Dac acestea au fost corectate, scriptul va afia un mesaj de confirmare i serverul va nregistra n tabelele useri i dateuseri noul utilizator,

Pagina 42 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

invitnd utilizatorul s se logheze cu username-ul i parola alese, pentru a putea fi nregistrat n variabilele de sesiune. n continuare, utilizatorul are acces la partea de comenzi, unde poate naviga i comanda, coul de cumprturi reinnd produsele cu ajutorul unei variabile de sesiune numite cart:

Dup alegerea tuturor produselor, utilizatorul va hotr dac realizeaz comanda, o modific sau o anuleaz. Pentru primele dou opiuni, va alege link-ul din partea dreapt a paginii: Comand sau modific:

Aici se poate modifica o anumit cantitate de produse sau se poate elimina un produs din coul de cumprturi. Dup verificare, se poate trece la validarea comenzii, primul pas fiind acela al apsrii butonului Valideaz. n acest moment, n tabela comanda se va insera o nou inregistrare, cu datele cart-ului utilizat. Vizual, nregistrrile din aceast tabel arat astfel:
Pagina 43 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

id nr_ca Editar e Editar e Editar e Editar e Editar e Editar e Sterg e Sterg e Sterg e Sterg e Sterg e Sterg e 8 12 7 11 6 10 5 9 3 8 2 rt 7

data 2004 -0509 2004 -0509 2005 -0203 2005 -0207 2005 -0207 2005 -0207

valoare 110000 0 174000 0 275000 0 800000

confirma t NU

stare submitted

observat ii

vazu t DA

NU

submitted

NU

NU

submitted

NU

NU

submitted

NU

850000

NU

submitted

NU

480000 0

NU

submitted

NU

Odat cu scrierea n tabel a comenzii, scriptul trimite un e-mail la adresa clientului pentru o nou confirmare: $queryaddcmd=mysql_query("insert ("Nu pot insera in comanda"); session_unregister("com"); session_destroy; session_unregister("cart"); session_destroy; echo "<tr><td align=center><h3>Comand trimis. V mulumim. <br> n scurt timp vei primi un e-mail pe adresa cu care v-ai nregistrat, <br> pentru a confirma comanda</h3></td></tr> <tr><td align=t"centert"><a href=t"produse.phpt">Catalog Charisma</a></td></tr> <tr><td align=t"centert"><a href=t"login.phpt">Pagina ta</a></td></tr> <tr><td align=t"centert"><a href=t"logout.phpt">Logout</a></td></tr> into comanda set nr_cart='$cart', valoare='$total', vazut='$vazut', stare='$stare', data='$data', confirmat='$confirmat'")or die

Pagina 44 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

"; //trimitere e-mail pentru confirmarea comenzii $queryuser=mysql_query("select * from dateuseri where user='$valid_user'") or die ("Nu pot selecta din dateuseri"); $rown=mysql_fetch_array($queryuser); $nume=$rowna"nume"s; $email=$rowna"email"s; $nm='Moda Fashion'; $nme='modafashionidainet.ro'; $to = $email; $secret="modafashion"; $from= stripslashes($nm)."<".stripslashes($nme).">"; $subject="Confirmare comand Moda fashion; $idconf=md5($email.$cart.$secret); $html_data="Stimate <strong>".$nume."</strong>, <br> Ai Pentru comandat mai multe comenzii produse dvs. pe v site-ul rugm magazinului s apsai <a <a href=t"http://www.modafashion.dap.rot"><strong>Moda Fashion</strong></a><br> confirmarea href=t"http://www.modafashion.dap.ro/comconfirm.php? email=$email&cart=$cart&idconf=$idconft">aici</a> <br> V mulumim c ai comandat de la noi!<br> Cu stim,<br> $ownername,<br> <em>- executive manager -</em>"; E-mail-ul va conine un hash (un text unic generat de script) care va fi decodat cu ajutorul paginii comconfirm.php. Variabila $idconf este un string criptat, format din alturarea e-mailului, numrului cartului i unei variabile secrete, stabilite anterior. Toate aceste valori, luate separat sunt transmise in text, mai puin cheia secret (n cazul nostru criptarea cuvntului modafashion). Criptarea acestor trei elemente alturate ne d un cod de felul urmtor: idconf=9ba0174b7ed54e7fbc33dbd8d18db97e, care este rezultatul funciei: $idconf=md5($email.$cart.$secret);

Pagina 45 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

La decriptare, cunoscndu-se att e-mail-ul clientului, ct i numrul cartului, acestea fiind transmise n clar n link-ul e-mailului, i de asemenea cunoscndu-se cheia secret, se va putea reface uor variabila $idconf, pentru confirmare. Administrarea site-ului se face prin accesarea meniului admin.php. Toate legturile ce privesc administrarea vor avea inclus fiierul authadmin.php, care va determina autentificarea ca administrator a utilizatorului sau afiarea unui formular de autentificare (loginadmin.php). Odat autentificat, administratorul are acces la mai multe pagini:

utilizatori se pot modifica datele despre utilizatori, precum i parola sau nivelul de acces al acestora categorii se pot aduga, modifica sau terge categorii de produse

adaug produse se pot aduga produse, n funcie de categoriile existente:

Pagina 46 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

modific produse permite modificarea caracteristicilor produselor mesaje afieaz mesajele primite prin intermediul formularului de contact. Acestor mesaje li se poate rspunde, sau se pot terge. comenzi se pot vizualiza comenzile, detaliat, se poate vedea starea lor, dac o comand este validat de client sau nu, se poate modifica starea onorrii sale, se poate rspunde clientului punctual, sau pur i simplu se poate terge aceast comand:

Pagina 47 din 48

Vizitati www.tocilar.ro ! Arhiva online cu diplome, cursuri si referate postate de utilizatori.

logout realizeaz de-logarea administratorului

Pagina 48 din 48

Anda mungkin juga menyukai