Structura Functionala a Magazinului Virtual
INTRODUCERE
În ultimele două decenii dezvoltarea fără precedent a tehnologiilor informaționale determinate de necesitatea stocării și a transmiterii rapide a informațiilor cu costuri cât mai mici, a revoluționat comerțul global, redefinind principiile clasice ale marketingului. În prezent noțiunea de comerț electronic a devenit sinonim cu creșterea profitului.
Lucrarea de disertație se numește Realizarea și administrarea unui magazin virtual și tratează această noțiune de comerț electronic ce constă în derularea unei afaceri, ca activitate generatoare de valori, având ca suport rețeaua internet și utilizarea unor pachete de programe software și echipamente hardware specifice.
Potrivit Organizației Economice de Cooperare și Dezvoltare (OEDC), comerțul electronic reprezintă “desfășurarea unei afaceri prin intermediul rețelei internet, vânzarea de bunuri și servicii având loc on-line sau off-line”.
Comerțul electronic presupune utilizarea în rețele cu valoare adăugată a unor aplicații de tipul transferului electronic de documente (EDI – Electronic Data Intercharge), a comunicațiilor fax, a codurilor de bare, a transferului de fișiere și a poștei electronice. Dezvoltarea tot mai accentuată a interconectivității calculatoarelor în rețeaua internet a avut ca efect utilizarea, tot mai evidentă, de către companii a acestei rețele în cadrul unui nou tip de comerț și anume comerțul electronic care apelează pe lângă vechile servicii altele noi.
Comerțul electronic reprezintă relațiile de afaceri care se derulează prin rețea între furnizori și clienți, ca o alternativă la variantele de comunicații tradiționale prin fax, linii de comunicații dedicate sau EDI pe rețele cu valoare adăugată. O altă formă a comerțului internet implică transferul de documente, de la contracte sau comenzi pro forma, până la imagini sau înregistrări vocale.
Comerțului electronic mai poate fi definit astfel: comerțul electronic (sau e-commerce) este acea manieră de a conduce activitățile de comerț care folosește echipamente electronice pentru a mări aria de acoperire și viteza cu care este livrată informația.
Comerțul electronic poate fi considerat un schimb electronic de informații între o afacere și clienții săi. Aceasta se poate face prin fax, telefon, voice-mail, email, extranet sau internet, pentru a enumera doar câteva dintre mijloace.
În era informațională, cheia competitivității întreprinderilor o constituie comerțul electronic, acesta asigurând:
acces la noi segmente de piață sau la noi clienți;
crește viteza de derulare a afacerilor;
oferă o flexibilitate ridicată a politicilor comerciale;
reduce costurile de aprovizionarea, de desfacerea și de publicitatea;
asigură simplificarea procedurilor.
Prin eliminarea barierelor geografice dintre furnizori și clienți, comerțul electronic oferă posibilitatea comercializării de produse în întreaga lume sporind astfel numărul potențialilor clienți.
În ultimii ani dezvoltarea internet-ului a oferit posibilitatea ca oamenii de afaceri să-și extindă domeniul de activitate pătrunzând pe noi piețe și să-și prezinte paginile web indiferent de dimensiunea sau amplasarea geografică a firmei. Acest lucru a permis întreprinderilor mici și mijlocii să concureze cu giganții industriei.
În forma lui simplă, comerțul electronic necesită prezența într-o rețea de bază, promovarea firmei, furnizarea de servicii premergătoare vânzării și servicii post-vânzare, condiții minime care pot fi asigurate fără dificultate și cu costuri reduse.
Contrar acestuia, comerțul 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 vânzare a unui produs, scăderea costurilor de comunicare, permite livrarea datelor în formă digitală, scade costurile de transport și distribuție și permite formarea unor parteneriate integrate și puternice.
Evoluția comerțului electronic are un impact major asupra economiei existând premisele creării de noi întreprinderi, diversificarea celor existente și, în special, asupra potențialului pieței forței de muncă și a gradului de ocupare a acesteia în viitor.
Industria comerțului electronic face distincție între tranzacțiile Business-to-Business (B-2-B sau BTB) și tranzacțiile Business-to-Consumer (B-2-C sau BTC):
– Business-to-Consumer se referă la relațiile dintre comerciant și consumatorul final, fiind considerat comerț electronic cu amănuntul;
– Business-to-Business cuprinde toate tranzacțiile ce se efectuează între doi sau mai mulți parteneri de afaceri. Acest tip de tranzacții se bazează, de regulă, pe sisteme extranet adică partenerii de afacerii acționează pe internet prin utilizarea de nume și parole pentru paginile web proprii.
O noua opțiune în cadrul comerțului electronic este tranzacția Business-to-Employee (B-2-E) care se referă la tranzacțiile din interiorul unei firme, destinate personalului angajat al firmei și efectuate prin sistemul intranet propriu.
În ultimii ani comerțul electronic a cunoscut o dinamică ascendentă datorită creării unui mediu favorabil promovării și utilizării comerțului electronic prin sensibilizarea și conștientizarea întreprinzătorilor.
Beneficiile E-commerce (comerțul electronic)
este convenabil, siturile fiind operaționale 24 ore pe zi, 7 zile pe săptămână;
costuri interne mici, comerțul electronic eliminând interacțiunea dintre cumpărător și intermediarii tranzacției;
costuri scăzute de procesare a tranzacțiilor, metoda de plată electronică fiind mai puțin costisitoare decât modul de plată prin monetar;
creștere substanțială a vitezei procesului de vânzare. Companiile de e-commerce recepționează veniturile mai rapid decât în sistemul tradițional;
reducerea erorilor, procesarea automată producând mai puține erori decât procesul de vânzare tradițional;
spațiul nelimitat – siturile de e-commerce putând afișa/indexa un număr nelimitat de bunuri și servicii; prezența globală crescută, compania putând fi accesată de posibilii clienți din orice colț al lumii;
disponibilitatea informațiilor despre clienți, existând astfel posibilitatea de a studia preferințele unui client individual sau ale unui grup specific de clienți, de a modela afacerea după dorințele clientului sau de a schimba rapoarte analitice privind clientela cea mai bună interacțiune cu clientul.
Avantaje magazinului virtual
Promovarea produsului – se poate realiza printr-un contact direct și interactiv cu clienții,
Noi canale de vânzare – produsele existente pot fi livrate pe o arie largă fără a mai fi nevoie de întreținut un magazin cu existentă fizică. Mai mult, limitele geografice dispar în toate zonele unde există internet, o afacere poate fi desfășurată în toată lumea la un singur centru de comandă dotat cu mijloace computerizate.
Economii la vânzarea/cumpărarea produsului – generate de suprimarea costului deplasării până la vânzător, eliminarea cheltuielilor necesare pentru a întreține un magazin classic sau reducerea timpului afectat tranzacției.
Service mai bun pentru clienți- consultanța poate fi disponibilă non-stop, relațiile interumane fiind mai strânse;
Marca și imaginea corporației pot fi mai ușor modelate – acestea sunt importante mai ales când clienții folosesc tehnologii avansate;
Adaptarea la shimbări poate fi mai rapid și mai facil efectuată atunci când firma este deja la curent și utilizează cele mai noi tehnologii ale comerțului electronic;
Îmbunătățirea relațiilor cu clienții – fiecare client trebuie sa se simtă apreciat, remarcat.
Dezvoltarea de noi produse se poate realiza în concordanță cu cerințele consumatorului – clienții pot afecta direct designul unui nou produs, vizualizându-l cu ajutorul computerului.
Monitorizând atitudinile clienților, firma poate obține informații prețioase despre proiectarea noilor produse sau îmbunătățirea celor vechi;
Noi modele de afaceri – pot fi considerate vânzarea de informații pentru experții în finanțe ori alte domenii.
Magazinul virtual este o oportunitate de exploatare a mediului de afaceri de pe internet.
Vânzarea de produse pe internet cu ajutorul unui magazin virtual este un domeniu în continuă dezvoltare, ce inregistrează creșteri semnificative de la an la an.
Succesul în cazul magazinului virtual depinde de strategia de marketing și de resursele de care dispunem pentru această investiție. Printre factorii cheie care influențează reușita unui magazin virtual se numară:
un website serios cu un design profesionist, bine structurat din punct de vedere al utilizării de către cumpărătorii potențiali;
marketing bine coordonat, un bun suport și serviciu pentru clienți;
un bun management al clienților și al menținerii acestora, bună promovare pe internet a magazinului virtual;
dezvoltarea de parteneriate în vederea impulsionării afacerii;
buna gestionare a încasăriilor.
Scopul acestei lucrări este de a prezenta și descrie etapele realizării unui magazin virtual cuprinzând studierea structurii de piața unde va activa magazinul virtual, analiza condițiilor legale, structura funcțională și proiectarea și programarea site-ului web.
Obiectivul lucrării de disertație este realizarea unui magazin virtual ce va comercializa echipamenete și component IT. Magazinul virtual va activa pe un domeniu gâzduit pe un server dedicat.
CAPITOLUL 1. STUDIU DE PIAȚĂ
1.1 Dimensiunile și structura pieței
Elementele de bază în cercetările pieței sunt considerate:
capacitatea pieței;
dinamica sa;
distribuția spațială și structura sa internă.
A. Capacitatea pieței efective: exprimă volumul tranzacțiilor (valoric sau cantitativ) ce s-au desfășurat într-o anumită perioadă de timp. Volumul tranzacțiilor poate fi exprimat volumul vânzărilor sau cumpărărilor sau indirect prin numărul cumpărătorilor de astfel de produse.
B. Volumul vânzărilor (cumpărărilor) de mărfuri: înfățișează dimensiunile efective ale pieței pentru că exprimă măsura în care ca urmare a confruntării cererii cu oferta, a avut loc actul de vânzare – cumpărare.
C. Capacitatea pieței potențiale: cercetarea pieței efective exprimă o capacitate a unei perioade trecute în timp ce cercetarea de marketing oferă întreprinderii o evaluare a posibilității de extindere.
D. Potențialul de absorbție al pieței: exprimă volumul maxim al vânzărilor (cantitativ sau valoric) la un produs ce se poate realiza pe piață, într-o anumită perioadă de timp, avânduse în vedere cererea potențială.
În determinarea acestui indicator se utilizează mai multe metode:
metoda analogiei – pentru evaluarea potențialului unei subdiviziuni sau unui segment din cadrul pieței interne sau externe,
metoda relațiilor intersectoriale – pentru evaluarea potențialului de absorbție al pieței pentru diferite materii prime sau produse prelucrate, și metode matematice.
E. Potențialul de export: atunci când oferta depășește cererea internă se pot evalua și disponibilitățile de produse ale pieței în raport cu cererile interne de consum.
F. Efectivul și numărul nonconsumatorilor relativi: cunoașterea numărului și structurii nonconsumatorilor, a distribuției lor spațiale, a motivelor necumpărării, oferă întreprinderii posibilitatea de a acționa eficient în antrenarea acestora la cumpărarea produselor proprii.
G. Cota de piață: este un raport între o subdiviziune a pieței și ansamblul acesteia; ponderea ce revine întreprinderii în piața totală a producției echipamentelor pentru uz didactic.
1.2 Localizarea activității de piață
Localizarea pieței urmează, în general, localizării cererii, iar acesta reflect distribuirea în teritoriu a consumului. Cererea ce se manifestă în afara localităților de referință, care migrează către alte localități are o pondere mai mare în cazul grupelor de produse dedicate uzului didactic și a unor categorii de consumatori.
Migrarea cererii este strâns legată de fenomenul mobilității populației, ea poate fi un efect al acestui fenomen sau o cauză. Cercetarea fenomenului de migrare a cererii și a obiectivelor sale a scos în evidență forța de atracție comercială a omului, forță care depinde de: mărimea centrului urban, funcțiile acestuia (centru administrativ, industrial, cultural, științific), accesibilitate, structura socio-profesională a populației din zonele de influență a orașului. Cercetarea fenomenului gravitațional se bazează pe metode deterministe și metode probabilistice.
Structurarea pieței poate fi abordată din diferite unghiuri:
cel al obiectului tranzacțiilor,
al agenților vânzători sau cumpărători,
al specificului tranzacțiilor.
Din punctul de vedere al întreprinderii, piața reprezintă un ansamblu de cumpărători efectivi (potențiali. Piața va fi segmentată după mai multe criterii care diferă de la o piață la alta. Din mulțimea criteriilor de segmentare și a segmentelor de piață se aleg cele mai importante, prin deferite tehnici ajungându-se la o structură arborescentă a pieței.
Analiza tipologică a pieței are același obiectiv de determinare a structurilor interne ale pieței dar atât programul său cât și forma de exprimare a rezultatelor sunt diferite față de cele ale segmentării. În timp ce segmentarea reprezintă un proces coborâtor, prin care colectivitatea este fracționată până la ultima subdiviziune, segmentul de piață, analiza tipologică pornește de jos, de la componenții individuali ai colectivității pe care îi regrupează succesiv până la alcătuirea unui număr de tipuri.
1.3 Cererea de mărfuri
Cunoașterea cererii beneficiarilor potențiali pentru produsele și serviciile ce se oferă pieței constituie premiza orientării eficiente a activității oricărei întreprinderi. Cererea este analizată din punct de vedere al dimensiunilor sale cantitative și valorice, al motivațiilor, iar pentru studiul ei se folosesc un grup de metode si tehnici în funcție de natura produselor, dacă bunurile sunt pentru consumul populației sau mijloace pentru consum productiv. Cercetarea cererii de mărfuri a populației este dificil de realizat și analiza are la bază: analiza vânzărilor de mărfuri; analiza mișcării stocurilor de mărfuri în comerț și analiza datelor din bugetele de familie.
Cererea de mărfuri a întreprinderii apare în dublă ipostază: întâi ca furnizor iar în al doilea rând ca beneficiar. Cererea unităților economice are o dimensiune apreciabilă influențând prin cererea de bunuri productive ansamblul pieței naționale. Studierea calitativă a cererii își propune evidențierea tuturor surselor potențiale de aprovizionare, distribuția lor geografică, puterea economică, puterea economică a furnizorilor, date despre prețurile de producție ale acestora.
Un alt obiectiv al cercetării calitative îl constituie investigarea necesarului de noi capacități de producție. Studierea cantitativă a cererii de bunuri de producție are ca scop principal, cuantificarea, în expresie fizică și/sau valorică a necesarului exprimat pe piață de agenții economici. Fundamentarea cererii de materii prime sau echipament industrial al unei întreprinderi producătoare se sprijină în mare măsură pe informațiile referitoare la consumurile din perioadele anterioare, pe cele privind structura producției viitoare și pe cele legate de consumul specific pe unitatea de produs finit sau serviciu prestat.
Alături de metodele comune cercetării cererii bunurilor de consum (analiza vânzărilor, a mișcării stocurilor și a rețelei de distribuție) se utilizează metode specifice cercetării bunurilor de producție, cum ar fi:
metoda indicilor industriali,
rapoartele financiare ale firmei,
analiza input-output,
analiza tendințelor istorice,
prognozele tehnologice.
1.4 Oferta de mărfuri
Obiectul cercetării ofertei are în vedere cunoașterea surselor de formare, a volumului și structurii ofertei, a factorilor săi de influență, evaluarea dinamicii și localizării teritoriale, a tendințelor în raporturile dintre componentele sale, stabilirea gradului de învechire economică.
Studiul ofertei se realizează în profil static sau/și în profil dinamic. În ceea ce privește studierea dinamicii ofertei, investigațiile trebuie să determine modificările cantitative și calitative, diversificarea și înnoirea sortimentală a ofertei.
Modificările de volum ale ofertei se pot datora cantității, schimbărilor structurale pe grupe și subgrupe, ca si variației prețurilor individuale. Ritmul anual al înnoirii sortimentale, exprimă în procente, raportul dintre numărul produselor nou introduse în fabricație în cursul anului și cel al produselor existente în producție la sfârșitul perioadei analizate. Ritmul anual al diversificării sortimentale exprimă, în procente, raportarea diferenței dintre produsele nou introduse și cele scoase din fabricație în perioada respectivă, la numărul de produse existente la începutul perioadei.
Nivelul calitativ al ofertei este un alt domeniu major de investigație, iar analiza trebuie să aibă în vedere atât evoluția față de perioada de referință, dar și gradul în care oferta răspunde exigențelor cererii. Analiza calității componentelor utilizează o serie de indicatori sintetici, cum ar fi:
prețul mediu de vânzare al ofertei;
clasa medie de calitate a ofertei;
gradul mediu de utilitate al ofertei unei firme.
Prețul mediu de vânzare al ofertei oferă numai informații relative în legătură cu calitatea, întrucât între preț și calitate nu există o legătură funcțională directă.
Clasa medie de calitate a ofertei este un indicator utilizat în situația firmelor ce fabrică sau comercializează mărfuri pe diferite nivele de calitate.
Gradul mediu de utilitate a ofertei se poate calcula în cazul în care pentru fiecare dintre componentele acesteia este posibilă determinarea gradului de utilitate (folosind evaluarea prin punctaj a parametrilor de calitate, a defectelor, etc)
1.5 Studiul prețurilor
Prețul constituie unul din factorii determinanți ai cererii de mărfuri, deci ai pieței, pe de o parte și ai conducerii activității economice, și politicii de piață a întreprinderii, pe de altă parte.
Studiul prețurilor are o tematică mare, în obiectivele sale intră: mărimile absolute ale prețurilor, nivelul prețurilor individuale, etc; cunoașterea raporturilor în care se află prețurile diferitelor produse; dinamica prețurilor. In general, datele pentru această cercetare se obțin fie din investigații directe, fie din statistici si prin prelucrare rezultă o serie de indici care exprimă dinamica prețurilor.
1.6 Conjunctura pieței
Conjuctura pieței exprimă raporturile în care se găsesc, la un moment dat, cererea și oferta de mărfuri, fluctuația prețurilor etc. Acest element ("conjuctural") – nu poate fi tratat decât prin analize "spot", fară a putea defini o strategie sau o politică de marketing sau managerială pe termen lung.
CAPITOLUL 2. ANALIZA CONDIȚIILOR LEGALE
Domeniul comerțului electronic în România a fost impulsionat în mod substanțial prin creșterea rapidă a numărului de servicii prestate prin mijloace electronice, care a atras atenția atât a companiilor, cât și a consumatorilor asupra acestui domeniu, prin marea viteză de efectuare a tranzacțiilor, dar și prin costurile lor reduse.
Tranzacțiile efectuate prin mijloace electronice au dat un imbold major întreprinderilor mici și mijlocii să utilizeze internetul pentru a-și dezvolta afacerile și au oferit posibilitatea consumatorilor din România de a accesa bunuri și servicii la care altfel aceștia nu ar fi avut acces.
În fața unei asemenea expansiuni, au apărut și probleme specifice semnificative la care trebuiau identificate soluții – de exemplu, cum să fie garantată protecția datelor personale ale consumatorilor, modul de securizare a contractelor încheiate ori mijloace electronice, cum să fie evitate spam-urile.
Ca răspuns la aceste chestiuni și având în vedere integrarea României în Uniunea Europeană (UE), în România a fost adoptată Legea 365/2002 privind comerțul electronic, care de fapt transpune prevederile Directivei adoptate în acest domeniu la nivelul UE. Există de asemenea și alte legi ce reglementează diferite aspecte ce privesc comertul electronic.
2.1 Libertatea de furnizarea a serviciilor societății informaționale
În concordanță deplină cu prevederile directivei adoptate la nivelul UE, Legea 365 stabilește pricipiul libertații de furnizare a serviciilor societății informaționale, ceea ce înseamnă că o persoana nu are nevoie de o autorizare prealabilă pentru a furniza asemenea servicii, această activitate desfașurându-se în conformitate cu principiile concurenței libere și loiale. Potrivit Legii 365, un serviciu al societății informaționale înseamnă orice serviciu care se efectuează utilizandu-se mijloace electronice și care prezintă urmatoarele caracteristici: este efectuat în considerarea unui folos patrimonial, procurat ofertantului în mod obișnuit de către destinatar; nu este necesar ca ofertantul și destinatarul să fie fizic prezenți simultan în același loc; este efectuat prin transmiterea informației la cererea individuală a destinatarului. Destinatarul este definit drept orice persoană fizică sau juridică ce utilizează, în scopuri comerciale, profesionale sau de altă natură, un serviciu al societății informaționale, în special în scopul căutării de informații sau al furnizării accesului la acestea.
Libertatea de a furniza servicii ale societății informaționale este asigurată de principiul controlului țării gazdă, ceea ce înseamnă că un singur stat va controla legalitatea activităților prestate de un furnizor de servicii ale societății informaționale, și acesta este statul pe teritoriul căruia este stabilit respectivul furnizor.
2.2 Comunicări comerciale. Spam
În comerțul electronic, utilizarea comunicărilor comerciale este esențială în scop publicitar.
Legea 365 definește comunicările comerciale drept orice formă de comunicare destinată să promoveze, direct sau indirect, produsele, serviciile, imaginea, numele ori denumirea, firma sau emblema unui comerciant ori membru al unei profesii reglementate. Mai mult, Legea 365 stabilește condițiile minime pe care trebuie sa le indeplinească furnizorii de servicii ce efectuează comunicări comerciale, principiul de bază fiind acela că transmiterea comunicărilor comerciale prin e-mail este interzisă, cu excepția cazului în care destinatarul și-a dat consimțământul de a primi asemenea comunicări. Consimțământul destinatarului poate fi obținut în orice formă și poate fi demonstrat prin orice mijloace de către furnizorul de servicii.
Legea 365 și normele sale de aplicare descriu în detaliu condițiile pe care trebuie să le îndeplinească un consimțământ transmis prin mesaj electronic. Destinatarul unei comunicări comerciale are dreptul de a-și revoca acest consimțământ de primire a comunicării, prin simpla notificare a furnizorului. De asemenea, furnizorul are obligația de a implementa o procedură gratuită, accesibilă și prin mijloace electronice, prin intermediul căreia destinatarul să-și poată revoca propriul consimțământ, iar furnizorul trebuie să facă această procedură publică pe pagina sa de internet, precum și în mesajele ce conțin comunicări comerciale.
Transmiterea de mesaje publicitare nesolicitate prin internet a crescut în mod dramatic în ultimii ani, generând consecințe grave ajungând până la fraudă electronică. Asemenea comunicări comerciale nesolicitate sunt uneori denumite în limbaj nespecializat drept spam, un termen definit în legislația altor țări, cu toate că persoane ce activează în instituțiile române competente în acest domeniu consideră că spam-ul reprezintă mai mult decât comunicările comerciale nesolicitate, spammingul reprezentând un aspect semnificativ de potențială fraudă electronică, precum și o mare pierdere de timp și bani pentru părțile implicate în proces.
Într-o încercare de limitare a potențialelor pericole generate de spam-uri, Legea 365 reglementează în detaliu condițiile ce trebuie îndeplinite de comunicările comerciale ce reprezintă servicii ale societății informaționale ori parte a acestora, în scopul de a fi permise drept comunicări comerciale: sa fie clar identificabile ca atare; persoana fizică sau juridică în numele căreia sunt făcute să fie clar identificată; ofertele promoționale, precum reducerile, premiile și cadourile, să fie clar identificabile, iar condițiile ce trebuie îndeplinite pentru obținerea lor să fie ușor accesibile și clar prezentate; competițiile și jocurile promoționale să fie clar identificabile ca atare, iar condițiile de participare să fie ușor accesibile și clar prezentate; orice alte condiții impuse prin dispozițiile legale în vigoare.
Dat fiind faptul că transmiterea comunicărilor comerciale presupune existența unei întregi baze de date cu informații personale ale potențialilor clienți, și având în vedere importanța protejării dreptului la viață privată, Romania a adoptat o lege specifică, și anume Legea 506/2004 privind prelucrarea datelor cu caracter personal și protecția vieții private în sectorul comunicațiilor electronice. Drept excepție la interdicția de a transmite comunicări comerciale prin e-mail fără consimțământul prealabil al destinatarului, Legea 506/2004 stabilește ca, în cazul în care o persoană fizică sau juridică a obținut adresa de e-mail a unui client cu ocazia vânzării către acesta de bunuri sau servicii, atunci acea persoană fizică sau juridică este indreptățită să utilizeze ulterior respectivul e-mail în scopul transmiterii către client de comunicări comerciale referitoare la produse sau servicii similare, însă cu condiția să ofere clienților posibilitatea clară și expresa de a elimina această modalitate de utilizare a adresei lor de e-mail într-o manieră simplă și gratuită.
2.3 Contracte încheiate prin mijloace electronice
În scopul facilitării tranzacțiilor electronice, Legea 365 conține prevederi specifice privind încheierea contractelor prin mijloace electronice. Dat fiind faptul că aceste contracte nu solicită prezența simultană a părților, ele pot fi analizate drept contracte la distanță, reglementate de Ordonanța Guvernului nr. 130/2000, în cazul în care sunt încheiate între furnizori de servicii și consumatori, definiți drept persoane fizice și juridice care acționează în alte scopuri decât cele ale activității lor comerciale sau profesionale. Contractele încheiate prin mijloace electronice produc toate efectele pe care legea le recunoaște pentru celelalte contracte, atunci când sunt îndeplinite toate condițiile lor de validitate. Printre aceste condiții de validitate nu se află și obligativitatea ca ambele părți să-și dea consimțământul pentru utilizarea mijloacelor electronice. Deoarece încheierea contractelor prin mijloace electronice presupune anumite riscuri, Legea 365 instituie garanții specifice care să asigure transparența activității furnizorilor de servicii, îndeosebi obligația de informare a acestora. Această obligație de informare a furnizorilor de servicii poate fi analizată din dubla perspectivă: obligația furnizorilor de informare a destinatarilor și obligația furnizorilor de informare a consumatorilor.
În primul caz, furnizorul de servicii are obligația de a pune la dispoziția tuturor destinatarilor, înainte ca destinatarii să transmita oferta de a contracta sau acceptarea ofertei, cel puțin urmatoarele informații, care trebuie sa fie exprimate în mod clar, neechivoc și într-un limbaj accesibil: etapele tehnice ce trebuie urmate pentru a încheia contractul; dacă respectivul contract, odată încheiat, este stocat sau nu de către furnizorul de servicii și dacă este accesibil sau nu; mijloacele tehnice pe care furnizorul de servicii le pune la dispoziția destinatarului pentru identificarea și corectarea erorilor survenite cu ocazia introducerii datelor; limba în care se poate încheia contractul; codurile de conduită relevante la care furnizorul de servicii subscrie, precum și informații despre modul în care aceste coduri pot fi consultate prin mijloace electronice; orice alte condiții impuse prin dispozițiile legale în vigoare. În cazul consumatorilor, aceștia trebuie să fie informați cu privire la datele de contact ale furnizorilor de servicii, precum și cu privire la numărul de înregistrare la autoritățile române competente în domeniul comercial și fiscal.
De asemenea, furnizorii de servicii trebuie să publice pe pagina lor de internet informații cu privire la prețurile produselor și serviciilor lor, dacă aceste prețuri includ sau nu costurile de livrare, și care sunt aceste costuri. Prețurile trebuie indicate cu respectarea deplină a legislației aplicabile, menționând dacă TVA-ul este inclus sau nu și menționând de asemenea cuantumul respectivului TVA.
Obligația de informare este extinsă, de asemenea, și cu privire la metodele de încheiere a contractului. Furnizorul de servicii trebuie să informeze consumatorii cu privire la maniera în care pot alege produsele ori serviciile, pașii de urmat pentru comandarea unui produs, metoda de plată, livrare, precum și dreptul de încetare a contractului.
Pentru a transmite comanda, cosumatorul trebuie să completeze un formular electronic în care să includă urmatoarele informații: nume, adresă, număr de telefon, adresa de e-mail și parola de inregistrare.
Această parolă îl poate ajuta pe consumator să urmărească stadiul comenzilor efectuate și scurtează timpul necesar pentru introducerea de fiecare dată a informațiilor sale personale.
Contractul se consideră încheiat în momentul în care acceptarea ofertei este primită de către furnizorul de servicii, dacă părțile nu au stabilit altfel. Atunci când destinatarul transmite prin mijloace electronice oferta de a încheia un contract sau acceptarea unei oferte, atunci furnizorul de servicii are obligația de a confirma faptul că a primit respectiva ofertă sau acceptare a acesteia.
Încheierea contractelor prin mijloace electronice presupune de asemenea și alte chestiuni specifice, cum ar fi semnatura electronică, reglementată prin Legea 455/2001, aceasta fiind definită drept orice date în formă electronică, care sunt atașate sau asociate în mod logic cu alte date în formă alectronică și care servesc ca metodă de identificare.
2.4 Răspunderea furnizorilor de servicii
Regimul sancționator aplicabil în cazul încălcării prevederilor Legii 365 a fost stabilit luându-se în considerare imposibilitatea practică de a efectua un control eficient și deplin asupra activităților prestate în domeniul electronic. Astfel, în cazul contractelor încheiate prin mijloace electronice, Legea 365 stabilește ca sancțiune, nulitatea relativă a acestor contracte, în cazul în care furnizorul de servicii și-a încălcat obligația legală de informare a celeilalte părți. Prin urmare, legea stabilește de fapt prezumpția ca, în cazul neinformării celeilalte părți contractante în conformitate cu dispozițiile legale, contractul a fost de fapt încheiat printr-un viciu de consimțământ al respectivei părți. În plus, legea instituie amenda civilă drept sancțiune.
Ministerul Comunicațiilor și Tehnologiei Informației, care este autoritatea de reglementare în materie, a creat o adresa de e-mail specială unde pot fi raportate abuzurile în acest domeniu – [anonimizat], astfel încât să existe posibilitatea de a corecta într-o manieră mai eficientă și cât mai rapidă problemele generate în practica de tranzacțiile efectuate prin mijloace electronice.
Legea 365 stabilește în mod expres ca, în cazul litigiilor referitoare la serviciile societății informaționale, furnizorul de servicii este cel ce are obligația de a depune dovezi cu privire la îndeplinirea obligațiilor sale, precum și a obligațiilor privind transmiterea comunicărilor comerciale, atunci când cealaltă parte contractantă este consumator.
2.5 Documente necesare pentru funcționarea legală a magazinului virtual
Numele firmei care desfasoară activitate economică prin intermediul magazinului;
Datele complete de identificare (CIF, Nr.Reg/com);
Datele de identificare ale autorității competente, în cazul în care activitatea comercială este supusă unui regim de autorizare;
Tarifele aferente pentru produsele sau serviciile expuse la vânzare.
Pentru a desfășura fără probleme activitățile de comerț electronic este nevoie și de o autorizație de la Autoritatea Națională de Supraveghere a Prelucrării Datelor cu Caracter Personal.
Comerciantul devine operator de date cu caracter personal în momentul în care se cere clienților să completeze formularul de înscriere în magazin în vederea finalizării comenzii.
Astfel pentru a avea o evidență a tuturor acestor operatori și pentru a preveni eventuale incidente nedorite, statul român cere înregistrarea și autorizarea magazinului la Autoritatea menționată mai sus. Notificarea către Autoritatea Națională de Supraveghere a Prelucrării Datelor cu Caracter Personal este gratuită.
Nerespectarea tuturor celor prevăzute mai sus se consideră infracțiune și se pedepseste cu o amendă de la 1.000 RON la 50.000 RON. Chiar dacă singura autoritate în masură să verifice și să constate aceste nereguli este ANCOM (Autoritatea Națională pentru Administrare și Reglementare în Comunicații).
Art. 30 alin. 1 din lege prevede că infracțiunile pot fi constatate de către toate autoritățile competente (incluzând Garda Financiară).
Conform Ordinul ANPC nr. 433/2009, art 3 „Operatorii economici care administrează site-uri de e-commerce (comerț electronic) sunt obligați să prezinte pe prima pagină a site-ului (home page) un link către adresa oficială de web a Autorității Naționale pentru Protecția Consumatorilor: www.anpc.gov.ro”. În acest ordin nu sunt prevăzute sancțiunile care apar în urma nerespectării acestui ordin. Tot în acest ordin nu sunt stipulate forma de prezentare (culoarea, mărimea fontului etc) a acestui link.
Modernizarea mijloacelor de comunicare la distanță, dezvoltarea rețelelor virtuale, atât în ceea ce privește ariile de utilizare, precum și privind raza de acoperire a acestora și creșterea vitezei de răspuns, au creat un mediu propice pentru apariția așa ziselor magazine virtual.
Mai mult decât o metodă de advertising, internetul este, astăzi, utilizat ca un catalizator al raporturilor comerciale, oferind prestatorilor de servicii o plajă largă de clienți și o metodă facilă de tranzacționare.
Principalul efect al apariției acestor magazine virtuale constă în extinderea sferei contractelor încheiate între absenți și, prin urmare, în diversificarea tehnicilor de comercializare ladistanță.
Deoarece aceste tehnici au ridicat de-a lungul timpului diverse probleme juridice, a devenit necesară elaborarea unui cadru legal adecvat acestui tip de comerț online.
Reglementarea este dată prin Ordonanța de Guvern nr. 130/2000 privind protecția consumatorilor la încheierea și executarea contractelor la distanță, Legea nr. 677/2001 pentru protecția persoanelor cu privire la prelucrarea datelor cu caracter personal și libera circulație a acestor date, precum și Legea nr. 365/2002 privind comerțul electronic cu normele de aplicare, care transpune dispozițiile Directivei 2000/31/CE referitoare la anumite aspecte juridice privind serviciile societății informaționale, în special comerțul electronic în piața internă, publicată în Jurnalul Oficial al Comunităților Europene nr. L178/2000.
Înființarea unui magazin virtual presupune parcurgerea a două etape deopotrivă importante:
Înființarea unei societăți comerciale
Aceasta va avea ca obiect de activitate „Comerțul cu amănuntul prin intermediul caselor de comenzi sau prin Internet” conform Codului CAEN 4791. Menționând că nu trebuie îndeplinite alte cerințe speciale, înființarea respectivei societăți derulându-se conform procedurii generale, prin depunerea actelor necesare la Oficiul Registrului Comerțului competent.
Crearea magazinului virtual
Magazinul virtual va consta într-un site creat și administrat conform dorințelor comerciantului, fie direct de acesta, fie de terțe persoane specializate. Fără a intra în detalii tehnice, menționând totuși că respectivul site trebuie să conțină mecanisme specifice cu diferite funcții cum ar fi: înscrierea cumpărătorilor, gestiunea comenzilor sau modulul de plată.
Tot în această etapă se stabilește și colaborarea cu un procesator de plăți, o banca, un serviciu de livrare, eventualii furnizori, cu respectarea prevederilor legale în materie, și anume Regulamentul BNR nr. 6/2006 cu privire la emiterea și utilizarea instrumentelor de plată electronică și relațiile dintre participanții la tranzacțiile cu aceste instrumente.
Din punct de vedere economic, deschiderea unui magazin virtual presupune anumite cheltuieli care se referă în principal la: costurile inființării societății;
achiziționarea domeniului;
plata serviciului de hosting;
costul de dezvoltare al site-ului și magazinului virtual;
achiziționarea echipamentelor necesare;
costul stocului inițial de produse;
costurile livrării;
costurile procesatorului de plăți;
costurile bancare.
Comerciantul virtual poate înființa el însuși societatea, respectiv poate crea singur pagina web sau poate contracta cu persoane specializate care să se ocupe de aceste proceduri. Costurile pot scădea sau crește în funcție de opțiunile personale ale fiecărui comerciant.
Comerciantul virtual trebuie să îndeplinească câteva condiții impuse de reglementările în vigoare, cum ar fi: punerea la dispoziția clientului a datelor de contact reale ale comerciantului, respectiv numele, adresa, numarul de telefon și orele între care poate fi contactat sau mărcile instrumentelor de plată acceptate.
Mai mult, comerciantul virtual trebuie să aibă în vedere anumite detalii specifice acestui tip de comerț la distanță, asa cum sunt ele prezentate în Ordonanța nr. 130/2000.
Cele mai importante sunt:
obligația comerciantului de a stipula în caractere îngroșate pe suporturile ce sunt puse la dispoziția clientului detalii despre dreptul cumparatorului de a denunța unilateral contractul, fără penalități și fără a fi necesară invocarea unui motiv, într-un termen de 10 zile lucratoare de la primirea produsului, sau de la data prestării serviciilor;
termenul de 30 de zile de la data transmiterii comenzii de către client, termen în care comerciantul trebuie să își îndeplinească obligațiile contractual;
rambursarea sumelor vărsate de client în termen de 30 de zile în situația în care comerciantul virtual se vede în imposibilitate de a-și îndeplini obligațiile contractual.
În ceea ce privește avantajele înființării unui astfel de magazin virtual, în principal, masivul potențial de contactare a eventualilor clienți, la orice oră a zilei, precum și diversele și multiplele modalități de promovare a serviciilor/bunurilor oferite. Pe lângă avantajele evidente ce țin de marketing relațional, trebuie subliniate și avantajele financiare datorate spațiului restrâns necesar, personalului redus, precum și avantajul deservirii a numeroși clienți în același timp.
CAPITOLUL 3. STRUCTURA FUNCȚIONALĂ A MAGAZINULUI VIRTUAL
3.1 HTML
Limbajul pentru hipertexte, în engleză Hipertext Markup Language (HTML), a fost inițial dezvoltat de către oamenii de știință ca o unealtă utilizată la partajarea documentelor în întreaga comunitate științifică internațională care utiliza și utilizează internetul.
Pentru a publica informații care să fie distribuite global în internet este necesar un limbaj universal de scriere a acestora, limbaj care să fie potențial înteles de toate computerele din internet.
Limbajul folosit în acest sens de către World Wide Web este HTML (Hipertext Markup Language).
HTML se aseamănă cu modalitățile de formatare a textelor de la un procesor de texte uzual în sensul că adaugă textului ce se dorește a fi publicat, înformații de formatare și permite înglobarea și altor tipuri de informații. Toate acestea indică modul de afișare pentru programele capabile să înțeleagă aceste informații. Ceea ce îl deosebește de toate celelalte formate ale procesoarelor de texte este faptul că un document HTML este un document ce conține informație în format text-pur (numai caractere ASCII) în timp ce procesoarele de texte folosesc formate particulare. Astfel, un document HTML poate fi afișat de un număr mare de programe de navigare (browsere web) care rulează pe un mare numar de platforme.
Documentele HTML pot fi create cu un editor de texte sau cu editoare HTML care permit crearea vizuală rezultând însă tot documente în format text-pur.
Limbajul HTML dă autorilor posibilitatea:
Să publice documente cu headere, texte, tabele, liste, fotografii etc;
Să regăsească on-line informații prin intermediul hiperlink-urilor accesate printr-un simplu click de mouse;
Să proiecteze formulare pentru realizarea tranzacțiilor cu servere aflate la distanță pentru căutări de informație sau pentru activități specifice comerțului;
Să includă foi de calcul tabelar, clipuri video, sunete si alte aplicații direct în documente.
Limbajul HTML are patru caracteristici principale:
Folosește un marcaj descriptiv pentru a indica diversele acțiuni ce trebuie executate. Aceasta înseamnă că părți ale documentului descris de HTML sunt marcate cu nume descriptive, ca de exemplu <HEAD> sau <TITLE> care sunt aplicabile oricărei porțiuni de date corespunzatoare din document.
Definește structuri de documente ierarhice și legături intra și inter documente. O legatură este o relație între două elemente ale unui document. Structura unui document este însoțită de astfel de legături între elementele sale.
Limbajul HTML este guvernat de o descriere formală. HTML are o descriere a tipului documentului (Document Type Definition DTD) care stabilește specificațiile formale ale limbajului.
DTD stabilește sintaxa limbajului, descrie fiecare element individual al unui document scris în limbajul HTML, definește atributele permise pentru fiecare element și descrie modelul datelor continuțe în fiecare element. În corelație cu informațiile despre elemente, DTD oferă definiții pentru entitățile externe ce pot fi referite în HTML.
Atât specificațiile limbajului cât și limbajul însuși pot fi citite și de om dar și de computer.
Datorită faptului că elementele de marcare sunt separate de text prin șiruri de delimitare alcătuite din caractere tipăribile, textul și marcajele pot coexista.
HTML este un limbaj bazat pe SGML (Standard Generalized Markup Language). SGML este un standard international (ISO-8879) aprobat în 1986.
SGML oferă o modalitate de a reprezenta structura documentelor și hyper-documentelor. Este totodata și o cale de a codifica hyper-documentele astfel că acesta să poată fi interschimbate asemănător procesului de interschimbare a unor documente în cazul mai multor autori care colaborează utilizând platforme diferite aflate la distanță.
SGML este un sistem complex de descriere a documentelor. Este utilizat pentru descrierea structurii generale a diferitelor tipuri de documente fără să fie un limbaj de descriere a paginii.
Principala preocupare a SGML se răsfrânge asupra conținutului documentului, nu asupra aspectului său.
În virtutea trăsăturilor moștenite de la SGML, HTML este un limbaj pentru descrierea documentelor structurate. Teoria din spatele acestui limbaj se bazează pe faptul că majoritatea documentelor au elemente comune și că dacă definești un set de elemente, poți marca elementele documentului cu etichetele corespunzătoare.
Majoritatea etichetelor HTML arată sub forma: <NUME ETICHETĂ> Textul afectat de etichetă </NUME ETICHETĂ> și indică navigatorului elemente de structura documentului, formatare, hypertext sau alte elemente.
Documentele HTML conțin doar textul propriu-zis si etichetele HTML iar sursa lor poate fi ușor văzută din orice navigator.
Diferența majoră dintre procesoarele de texte și procesoarele HTML este că acesta din urmă nu se preocupă de cum anume vor apărea pe ecran elementele documentului. Cu foarte puține excepții, HTML nu descrie modul de prezentare al documentului ca un întreg. El oferă un suport redus în stabilirea plasamentului sau felului în care vor fi afișate elementele documentului.
Proiectanții HTML au ales intenționat această variantă, motivul fiind acela că nu se cunosc posibilitațile platformei pe care va fi văzut documentul.
Prin separarea structurii documentului de felul în care este afișat se oferă o mai mare libertate programului care înțelege HTML și afișează documentul. Acesta poate să ia hotarâri privind formatarea documentului pe baza posibilităților platformei respective. Este ceea ce fac navigatoarele web.
Când programul de navigare încarcă un document HTML el citește documentul în căutarea etichetelor HTML, formatează textul și imaginea și le afișează pe ecran. Este motivul pentru care același document HTML apare ușor diferit când este privit cu navigatoare diferite. Deși în această fază de dezvoltare posibilitățile de formatare oferite sunt încă destul de limitate, oferind un control destul de redus asupra formei documentului, avantajul faptului că documentele pot fi transferate și văzute oriunde pe web, independent de platforma și de programul de navigare folosit, a condus la răspândirea sa foarte rapidă.
Orice versiune a HTML include elemente cum ar fi: text centrat sau aliniat dreapta, tabele, formule matematice, aliniere imagine și text. Extensiile, care au apărut în număr mare în ultima vreme, sunt seturi de etichete HTML introduse de diverse companii (în general cele producătoare de navigatoare) care permit autorilor de documente HTML să evite o parte din constrângerile standardului.
HTML a fost preferat pentru publicații pe web din două mitove: primul motiv este simplitatea iar al doilea ar fi acela că permite formatarea textului ASCII cu etichete în format ASCII.
Rezultă de aici o compresie bună, suport pentru legături hypertext și usurința în a scrie programe de navigare pentru vizualizarea documentelor
3.2 PHP
PHP (Hypertext Prepocessor), cunoscut în versiunile mai vechi și sub numele de PHP/FI (Personal Homepage/Form Interpreter), inițial a fost gândit a fi o simplă aplicație CGI (Common Gateway Interfac) pentru interpretarea formularelor definite prin HTML și procesate de un program scris într-un limbaj Perl, script shell, executat pe server. În cazul interfeței 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 reprezintă un pachet puternic care oferă un limbaj de programare accesibil din cadrul fișierelor HTML, limbaj asemănător 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ă încărcarea fișierelor 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).
Această aplicație este disponibilă gratuit pe internet, pentru medii Unix și Windows integrându-se în popularul server Apache.
Istoria PHP-ului începe la sfârșitul anului 1994, când Rasmus Lerdorf dezvoltă prima versiune, ca proiect personal. PHP-ul este făcut public în debutul anului 1995 sub denumirea de Personal Home Page Tools, fiind considerat un analizor simplist care interpreta câteva macrouri ce puteau fi incluse în cadrul documentelor HTML, permițând contorizarea accesului la paginile Web sau accesarea unei cărți de oaspeți (guestbook). Analizorul a fost rescris la mijlocul aceluiași an și denumit PHP/FI 2.0, unde FI era o altă aplicație scrisă de Rasmus Lenford, un interpreter de formulare HTML. A fost adăugat și suportul pentru bazele de date mSQL și astfel PHP/FI a început să aibă succes, fiind disponibil gratuit pe Web.
Există o multitudine de aplicații și utilitare concepute în PHP, care se regăsesc grupate și în așa-numitul PEAR (PHP Extension and Add-on Repository).
PHP este un limbaj de script care funcționează alături de un server web.
Este de notat diferența 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 afișate în final într-o pagină HTML, se scrie o pagină HTML cu codul inclus pentru a realiza o acțiune precisă.
Codul PHP este inclus între tag-urile speciale de început și de sfârșit 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 în navigator (client web). În consecință, PHP poate obține accesul la fișiere, baze de date și alte resurse inaccesibile programului JavaScript. Acestea conțin bogate surse de conținut dinamic care atrag vizitatorii.
Dacă pe serverul web se află un script similar, clientul nu va primi decât rezultatul execuției scriptului, fără a avea nici o posibilitate de acces la codul care a produs rezultatul.
Serverul web poate fi configurat să prelucreze (analizeze) toate fișierele HTML ca fișiere PHP. Astfel nu există nici un mijloc de a distinge paginile care sunt produse dinamic de paginile statice.
Limbajul PHP posedă aceleași funcții ca alte limbaje permițând 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 număr mare de baze de date.
Următoarele baze de date sunt suportate de către PHP:
Fig. 3.1 Bazele de date suportate de către PHP
Limbajul PHP are deasemenea suport pentru diverse servicii server utilizând protocoale precum IMAP, SNMP, NNTP, POP3 și HTTP.
Fiecare program PHP include două linii speciale, care indică serverului PHP că textul cuprins între cele doua linii este alcătuit din instrucțiuni PHP.
<?php
?>
Programele PHP executa trei categorii de operații elementare:
obțin date de la un utilizator
execută prelucrări ale datelor, respectiv obțin accesul la datele stocate în fișiere și baze de date și le manipulează
afișează date astfel încât un utilizator să le poată vizualiza.
Pentru executarea unui script trebuie mai întâi încărcat scriptul într-un server unde este instalat PHP.
Accesul la distanța la un server Linux sau Unix se poate face prin intermediul protocoalelor Telnet sau SSH, dacă în prealabil se primește autorizare de folosire a acestor protocoale de la administatorul de sistem pentru un anumit utilizator.
Dacă se foloseste un server Microsoft Windows situat în aceeași rețea locală ca și stația de lucru atunci este posibilă alocarea de către adimistratorul de rețea a unei partiții de fișiere în acest scop.
În vederea încărcării scriptului prin intermediul protocolului FTP (File Transfer Protocol) adimistratorul de sistem trebuie să furnizeze utilizatorilor autorizați urmatoarele informații:
numele serverului gazdă;
numele de utilizator și parola pentru deschiderea sesiunii de lucru prin intermediul protocolului FTP;
catalogul în care trebuie să se găsească scripturile PHP;
localizatorul uniform de resurse (URL), folosit pentru a obține acces la scripturile PHP.
După ce încărcarea scriptului PHP a fost realizată cu succes acesta se lansează în execuție prin dechiderea unui navigator web (client) cu adresa URL asociată scriptului PHP.
3.3 Serverul web Apache
Providerii de internet și companiile de găzduire de aplicații pe web apelează deseori la Apache datorită suportului său pentru numeroase platforme, capabilităților de găzduire virtuală ușor de implementat și modulelor sale care îi extind capabilitățile.
Caracteristica Apache Portable Routine (APR) optimizează capabilitățile precum administrarea proceselor pentru fiecare sistem de operare, dar permite serverului propriu-zis să ignore distincțiile specifice fiecărei platforme. Acest lucru a îmbunătățit performanța și stabilitatea implementărilor Windows, prin eliminarea emulatorului. Mai mult APR este accesibil și dezvoltatorilor web care scriu programe multi-platforme în C, care este mai rapid decât limbajele interpretative, precum PHP și Perl, folosite de obicei pentru dezvoltare web.
La acest lucru se adaugă faptul că serverul propriu-zis este independent de protocoale. Cu toate că este în principal un server HTTP (web), este proiectat să suporte alternative cum ar fi FTP.
O astfel de structura simplifică administrarea și reduce riscurile de securitate. O parte însemnată din atractivitatea Apache o constituie versatilitatea sa. API-ul (Application Programming Interface) său deschis a permis dezvoltatorilor să scrie diferite module care i-au schimbat comportamentul. Dacă serverului îi lipsește o funcție de care are nevoie un site, sunt mari șanse ca undeva să fie disponibil un modul plug-in.
Serverele de web au ca funcționalitate de bază recepționarea de cereri anonime de la clienți și furnizarea de informații într-o manieră dorită a fi eficientă și rapidă. De fapt un server web este un daemon care acceptă conexiuni conforme protocolului HTTP, răspunzând cererilor receptionate de la clienți. Pentru a asigura servicii HTTP, serverul Apache trebuie să fie instalat în system (în mod uzual, fiind vorba de un pachet RPM în Linux sau de un program executabil .exe în Windows), iar daemon-ul httpd pornit. Apache este un sistem modular, alcătuit dintr-un server de bază și mai multe module care sunt încărcate dinamic într-un mod similar cu funcționarea modulelor din nucleul Linux.
Apache poate fi configurat cu ajutorul interfeței grafice Apache Configuration Tool.
În anumite cazuri, este necesar să se restricționeze accesul la anumite documente, prin intermediul autentificării prin nume de utilizator și parola sau în funcție de adresa calculatorului clientului web.
Pentru autentificarea utilizatorilor, se parcurge urmâtorii pași:
se creează un fișier conținând numele și parolele utilizatorilor care vor avea acces la anumite date de pe serverul web;
se configurează serverul pentru a seta care resurse vor fi protejate și care sunt utilizatorii având permisiunea accesării lor, după introducerea unei parole valide
Configurarea serverului se poate realiza fie prin fișierul httpd-conf, fie prin .htacces, indicând o zona protejată, de obicei în funcție de directoarele dorite a fi accesate pe baza de autentificare.
Fișierul .htaccess va fi stocat în directorul asupra căruia dorim să modificăm comportamentul implicit al serverului web.
Înainte de a modifica maniera de autentificare din fișierul .htaccess, administratorul serverului Apache va specifica în httpd.conf că autentificările să se realizeze via .htaccess.
De asemenea, Apache oferă posibilitatea de a servi mai multe situri web simultan, altfel spus, găzduire virtual (virtual hosting).
Există două metode de implementare a găzduirii virtuale: prima bazată pe nume și a doua bazată pe adrese IP.
Mașinile virtuale bazate pe adresă utilizează adresa IP a conexiunii pentru a determina mașina virtuală corectă. Astfel pentru fiecare găzduire virtuală bazată pe nume, determinarea mașinii virtuale se face pe baza numelui acestuia.
Găzduirea virtuală bazată pe nume este mai simplu de implementat, și este recomandată utilizarea acesteia. Pentru a utiliza serviciul de găzduire virtuală, trebuie mai întâi stabilite adresa IP și portul pentru serverul care va accepta cereri pentru respectiva masină virtuală.
3.4 Administrarea bazelor de date MySQL
Dezvoltat de firma suedeza MySQL AB, MySQL este un server de baze de date disponibil gratuit, cu sursă deschisă (open-source) care oferă fiabilitate și avantaje reale.
Administrarea bazei de date se face folosind peste o duzină de utilitare în linia de comandă, cel mai important fiind mysql, un shell interactiv pentru controlul și interogarea bazei de date.
Utilitarele rulează cel mai bine pe sistemul Linux, platforma pe care MySQL a fost dezvoltat inițial.
Alte două utilitare cu sursa deschisă, oferite pe platforma Windows, care oferă un set de comenzi de administrare sunt MySqlManager, un utilitar de interogare în mod grafic similar cu mysql si WinMySQL admin, o consola pentru administrarea detaliilor configurarii lui MySQL.
MySQL realizează cu ușurință importarea diverselor baze de date și exportarea sub forma fișierelor sql.
Tranzacțiile nu sunt parte a tabelelor implicite (ISAM) ale lui MySQL, dar sunt incluse două tipuri noi de tabele: Berkley DB (BDB) și InnoDB.
Administratorii de firme și dezvoltatorii de baze de date au ajuns la concluzia că MySQL are o dezvoltare energică și loială, plus reputatia câstigată ca fiind o baza de date sigură.
MySQL operează în baza unui model client/server. Orice mașină care dorește să proceseze interogări asupra unei baze de date MySQL trebuie să ruleze MySQL server (mysqld), care este responsabil de tot traficul de tip intrări/ieșiri (incoming/outgoing) cu baza de date.
Ca orice server, mysqld "ascultă" pe un port particular (3306) eventualele cereri de conexiune ale unui "client" – orice aplicație care trimite cereri către o bază de date via mysqld. Acest client poate fi un simplu script PHP care poate trimite o cerere către baza de date prin intermediul serverului MySQL sau chiar clientului mysql. Clientul mysql este o interfață interactivă pentru transmiterea de comenzi către server.
Modelul de securitate folosit de MySQL se bazează pe nume de utilizator, parolă, nume server (hostname) sau adresa de IP și privilegii, fiind similar celui generic folosit de sistemele Unix.
Prin privilegii se înțeleg în cazul MySQL operațiunile ce vor fi permise asupra bazei/bazelor de date, tabelelor sau indecșilor, cum sunt de exemplu SELECT, INSERT, UPDATE, DELETE, CREATE, DROP.
Datele sunt obiectul celor mai multe operații de prelucrare, iar sistemele de gestiune a bazelor de date furnizează cele mai complexe și puternice facilități pentru lucrul cu datele.
PHP include o bibliotecă de funcții care furnizează o interfață cu sistemul MySQL de gestiune a bazelor de date. Folosind aceste funcții, un program PHP poate obține accesul la datele rezidente într-o bază de date MySQL și le poate modifica.
Majoritatea interacțiunilor cu o bază de date MySQL se poate desfășura după următorul model secvențial:
se deschide o conexiune cu serverul MySQL;
se specifică baza de date la care se obține accesul;
se emit interogări SQL, se obține accesul la rezultatele interogării și se execută operații non-SQL;
se închide conexiunea cu serverul MySQL.
Din punct de vedere al limbajului PHP, există două categorii de interogări SQL:
interogările SELECT, care returnează rânduri ale unui tabel
interogările UPDATE, INSERT și DELETE, care nu returnează rânduri ale unui tabel
Ambele categorii de interogări sunt emise folosind funcția mysql_query(), dar verificarea și prelucrarea celor două categorii de rezultate ale interogărilor sunt procesate destul de diferit.
3.5 Proiectarea general a magazinului virtual
Proiectarea generală are ca obiectiv elaborarea concepției logice a sistemului informatic, definirea acestuia din punct de vedere structural și funcțional.
Proiectarea generală presupune stabilirea componentelor sistemului informatic. Totodată proiectarea generala presupune analiza datelor de ieșire, a bazei informaționale de intrare, a documentelor pe care sunt consemnate datele de intrare, a legăturilor dintre ele și a funcționalității sistemului astfel încât toate elementele sale să formeze un întreg.
Structura generală a sistemului informatic cuprinde un ansamblu de intrări, prelucrări și ieșiri definite în funcție de obiectivele noului sistem.
Există mai multe variante de abordare a proiectării unui sistem informatic: fie se poate pleca de la intrări, fie de la ieșiri, fie se poate realiza o variantă mixtă.
Analizând modul de obținere a fiecărei informații se determină baza informațională de intrare, apoi se realizează celelalte faze ale proiectării.
Fazele proiectării se parcurg in ordinea:
stabilirea obiectivelor;
proiectarea ieșirilor;
proiectarea bazei informaționale de intrare;
codificarea;
proiectarea documentelor de intrare;
proiectarea structurală și funcțională;
elaborarea documentului.
Această variantă prezintă avantajul furnizării unui conținut complet al bazei informaționale de intrare pentru obținerea ieșirilor solicitate.
3.5.1 Proiectarea magazinului virtual
Lansarea unui magazin virtual necesită multă muncă și studiu aprofundat al situațiilor existente și al posibilităților viitoare. Ca și comerțul clasic, vânzările on-line constituie un proces care trebuie îmbunătățit î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.
În primul caz, există deja experiența vânzării. Mai mult, există un sprijin solid pentru dezvoltarea rețelei de distribuție a vânzărilor efectuate on-line. În fapt, majoritatea magazinelor virtuale din spațiul internet sunt extensii ale unor magazine sau rețele de magazine clasice.
Așa cum un magazin clasic este situat într-o construcție, la fel și pagina web, respectiv magazinul virtual, va trebui găzduit pe un server web. Acesta va constitui spațiul comercial virtual, punctul de legătură dintre vânzător și potențialii clienți.
În acest sens se va apela la serviciile unei firme specializate în găzduire web și eventual înregistrarea domeniului.
Orice magazin virtual trebuie să dispună de un sistem complex de administrare a conținutului care să permită adăugarea, modificarea și ștergerea produselor din baza de date (text și imagini). De asemenea, înregistrarea comenzilor și a datelor despre clienți într-o bază de date este absolut necesară. Adițional poate fi creat și un sistem care să semnaleze prin e-mail lansarea unei comenzi.
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 încât clienții să poată găsi cu cea mai mare ușurință ceea ce caută. O atenție sporită trebuie acordată prezentării produselor; mai ales imaginile trebuie să fie de calitate excepțională, altfel cresc considerabil șansele ca vizitatorii să devină clenți.
Nu în ultimul rând va trebui să fie realizat un sistem de ajutor (help) în cadrul site-ului. Nu trebuie pornit de la premise că vizitatorii magazinului sunt navigatori experimentați și au mai efectuat cumpărături online. De asemenea, trebuie puse la dispoziție informații detaliate despre livrarea produselor, garanție și post-garanție (dacă este cazul) și trebuie sa aibă posibilitatea de a contacta firma în cazul în care mai au alte întrebări despre produse (alături de o adresă de e-mail, un formular de contact este o opțiune foarte bună).
3.5.2 Înregistrare unui domeniu și găzduire web
Un pas important în crearea unui magazin virtual este înregistrarea numelui de domeniu. Numele de domeniu trebuie să fie cât mai simplu și să reprezinte identitatea magazinului, pentru a putea fi ușor de reținut de către clienți și partenerii de afaceri.
Firmele specializate pe lângă înregistrarea domeniului oferă și găzduire web.
Găzduirea web (web hosting) este un serviciu oferit atât companiilor cât și persoanelor fizice. Furnizorul oferă un spațiu de stocare pe un server a fișierelor magazinului virtual precum și facilități de administrare.
3.5.3 Promovare
Spre deosebire de un magazin clasic, în care potențialii clienți mai intră și din întâmplare 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 în motoare de căutare și directoare web.
Se poate apela și la publicitatea pe internet, bannere publicitare afișate pe diverse portaluri sau la marketingul prin e-mail sau modalitățile clasice de promovare: spoturi TV sau radio, inserări în diverse publicații.
3.5.4 Actualizare
Informațiile trebuie actualizate periodic. Vizitatorii trebuie să vadă că au în față un site dinamic, cu conținut mereu proaspăt, secțiuni cu noutăți, oferte speciale, concursuri sau alte facilități asemănătoare îi va determina pe mulți să se întoarcă cu plăcere la magazinul virtual astfel proiectat.
3.5.5 Mecanisme de plată electronice
Plata prin internet – de îndată ce a fost pus în funcțiune un sistem de vânzări on-line, comerciantul va putea vinde 24 ore pe zi, 7 zile pe săptămână, peste tot în lume pe unde a ajuns Internetul. Mai mult, clienții vor avea acces la informații de ultimă oră referitoare la produse, servicii, prețuri și disponibilitatea acestora. Dar comerciantul va trebui să se asigure ca sistemul informatic să fie disponibil non-stop și în tot acest timp el va opera gestiunea comenzilor, facturarea, procesarea plaților și remiterea banilor;
Soluțiile de plată în timp real – Cu excepția cazurilor off-line, obținerea banilor rezultați în urma unei vânzări de tip on-line presupune o serie de procese de interacțiune cu bănci sau alte instituții financiare. În prezent achitarea unei facturi se realizează cu ajutorul cărților de credit (credit card), banilor electronici (e-cash), cecurilor electronice sau al cardurilor inteligente (smart card) care sunt principalele metode de plată folosite în comerțul 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 plățile de la terți;
Cartea de credit – Reprezintă cea mai utilizată formă de plată prin internet. Utilizarea acesteia este simplă: clienții care navighează în cadrul unui sit web și decid să achiziționeze un produs sau serviciu trebuie să introducă informațiile despre cartea de credit prin intermediul unui formular HTML. Conținutul completat (tipul cardului, numărul acestuia, numele proprietarului și data expirării cardului) este trimis sitului web, unde informația este colectată și trimisă la bancă. Daca situl comerciantului are stabilită o legătură directă cu banca, atunci este posibilă plata pe loc în cazul în care există credit suficient pentru a plăti bunurile comandate. Tranzacțiile 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 cărți de credit vor putea avea acces la numărul cărții de credit, nu și comerciantul. O primă fază implica încheierea unor contracte cu instituții financiare, utilizând 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 tranzacționare 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ă obțină numărul cardului, presupunând că el interceptează datele astfel criptate. Dezavantajul consta în faptul ca SSL nu permite comerciantului să se asigure că persoana care folosește cardul într-o tranzacție este chiar deținătorul acestuia. De asemenea, SSL nu oferă nici o cale prin care clientul să afle dacă situl comerciantului este cu adevărat autorizat să accepte plata cu cărți de credit și că nu este doar un sit pirat, proiectat cu scopul de a colecta datele carduri. Problema a fost rezolvata prin apariția unor noi tehnologii denumite SET (Security Electronic Transaction), dezvoltata de MasterCard și Visa. SET rezolvă problema autentificării prin asignarea unor certificate digitale atât clientului, căt și comerciantului. SET oferă o securitate sporită față de cea tradițională. Pentru a nu mai da acces comerciantului la numărul de card al clientului, SET îl criptează de o manieră care asigură faptul că doar consumatorul și instituțiile financiare abilitate au acces la el.
Facturile de plată (e-invoice) – Procedura de plată prin e-invoice este următoarea – valoarea tranzacției necesare este transmisă automat la furnizori printr-un sistem informatic, acestea răspund printr-o factură care urmează a fi plătită 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 legislația comercială a fiecărei țări care ar trebui să recunoască valabilitatea facturilor electronice. Avantajele facturii electronice țin de reducerea costurilor pentru transmitere și de micșorarea posibilităților de apariție a erorilor;
Cecurile electronice (internet cheques) – NetCheque – un sistem dezvoltat la Information Sciences Institute of the University of Southern California. Cumpărătorul și vânzătorul trebuie să aibă un cont deschis pe situl NetCheque. Pentru asigurarea securității este folosită identificarea prin protocolul Kerberos și parolă. Pentru a plăti prin cec, trebuie instalat 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 tranzacție cu alt furnizor. Un cont special din rețea verifică validitatea cecului și în caz afirmativ trimite un mesaj de accept comerciantului care va livra apoi bunurile.
Cărțile de debit (debit cards) – Necesită introducerea unui număr personal de identificare (PIN) și utilizarea unui dispozitiv hardware care să citească informația pe bandă magnetică a cărților de credit (acest tip de plată nu este posibilă pe internet).
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. Pentru a primi bani este necesară accesarea unei casierii automate (virtuale) disponibile pe web sau deplasarea la un automat bancar, de unde pot fi ridicați banii electronici direct din contul băncii sau prin sistemul de plata cu carte de credit. Dificultatea folosirii e-cash reprezintă implementarea unei securități care să garanteze că acestea nu pot fi alterați. Utilizarea tehnologiilor de criptare, a semnăturilor digitale, și a semnăturilor electronice ajută la reducerea posibilităților de fraudă care să facă imposibil de utilizat mai mult de o singura dată. O altă condiție este ca banii electronici nu trebuie să dezvăluie identitatea persoanei care a plătit cu ei, trebuie să fie anonimi. Sistemul de plată nu trebuie sa aibă ca intermediar o bancă, doar între cei doi parteneri implicați.
Cardul inteligent (smart card) – Permine stocarea informațiilor suplimentare despre clienți în afară de păstrarea banilor pe cipul cardului. Banii de pe card sunt salvați într-o formă criptată și sunt protejați printr-o parolă. Pentru a plăti este necesară introducerea acestuia într-un terminal hardware. Dispozitivul necesită o cheie specială emisă de bancă pentru a se transfera banii în altă direcție.
Avantaje: securitate, simplitatea utilizării, efectuarea directă fără intermediari, costul scăzut al tranzacțiilor.
CAPITOLUL 4. APLICAȚIE
4.1 Proiectarea și programarea în PHP a magazinului virtual
4.1.1 Secțiunea de prezentare
Se adresează vizitatorului obișnuit, neînregistrat, care poate afla informații 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.
4.1.2 Secțiunea de client
Este disponibilă utilizatorilor înregistrați. Aceștia au posibilitatea, pe lângă facilitățile obișnuite oferite unui oaspete (guest), să comande produse. Pentru aceasta ei au la dispoziție un coș de cumpărături în care pot adăuga sau din care pot scoate produse pe parcursul navigării. La sfârșit pot trimite comanda printr-un singur click. Tot în aceastaă secțiune clienții au acces la datele personale, pe care le pot modifica după dorință, inclusiv parola de acces.
4.1.3 Secțiunea de administrare
Este accesibilă administratorului magazinului virtual, care poate fi un angajat cu acces la produsele magazinului, nu neapărat programatorul magazinului. Un administrator are acces la toate paginile magazinului. Administratorul poate adăuga sau modifica produse, poate vizualiza comenzi și formulare de contact ale utilizatorilor, răspunde la mesaje sau șterge mesaje, prelucrează comenzi sau șterge manual comenzile neconfirmate.
Administrator nu are acces la parola unui utilizator, este o procedură normală în comerțul online, toate parolele fiind stocate criptat în baza de date, astfel asigurându-se siguranța clientului.
4.1.4 Baza de date
Baza de date folosită este de tip MySQL și conține următoarele tabele:
Tabela useri este de tip MyISAM, este tabela pentru administratorii magazinului virtual și are următoarea câmpuri:
Fig. 4.1 Tabela useri
Unde:
id – id-ul unic al utilizatorului, fiind și index primar;
user_group_id – id-ul gurupului din care face parte utilizatorul;
username – numele de utilizatorului;
password – parola utilizatorului;
salt – este o valoare adăugată în mod automat câmpului password, pentru criptare;
firstname – prenumele utilizatorului;
lastname – numele utilizatorului;
email – adresa de email a utilizatorului;
ip – adresa de ip a utilizatorului;
status – starea contului, poate fie activat sau dezactivat;
date_added – data și ora înregistrării utilizatorului.
Tabela user_group este de tip MyISAM, este tabela pentru grupuri de administratori și are următorele câmpuri:
Fig. 4.2 Tabela user_group
Unde:
user_group_id – id-ul grupului, câmp identic cu cel din tabela user (fig. 4.1);
name – numele grupului;
permission – permisiunile acordate grupului.
Tabela customer este tip MyISAM, este tabela pentru clienți și are următoarele câmpuri:
Fig. 4.3 Tabela customer
Unde:
cutomer_id – id-ul unic al clientului;
firstname – prenumele clientului;
lastname – numele clientului;
email – adresa de email a clientului;
telephone – numărul de telefon al clientului;
fax – numărul de fax al clientului (câmp facultativ);
password – parola contului clientului;
salt – este o valoare adăugată în mod automat câmpului password, pentru criptare;
cart – coșul de cumpărături al clientului – în acest câmp se salvează produsele introduse în coșul de cumpărături atunci când clientul se deconectează din contul de utilizator fără a finaliza comanda, la reconectare produsele vor fi în coșul de cumpărături.
wishlist – dacă clientul are comenzi salvate pe care intenționeză să le efectueze;
newsletter – dacă clientul dorește sau nu să primescă oferte promoționale sau vouchere prin email;
address_id – id-ul adresei salvate în tabela address (fig. 4.5);
customer_gruop_id – id-ul grupului de clienți;
ip – adresa de ip a clientului;
status – starea contul clientului, poate fi activat sau dezactivat;
appoved – dacă a fost sau nu aprobată înregistrarea;
date_added – data și ora înregistrării.
Tabela cutomer_group este de tip MyISAM , este tabela pentru grupul de clienți și are următoarele câmpuri:
Fig. 4.4 Tabela cutomer_group
Unde:
cutomer_group_id – id-ul grupului de clienți, câmp identic cu cel din tabela cutomer (fig. 4.3);
name – numele grupului de clienți.
Tabela address este de tip MyISAM, este tabela pentru adresa clientului și are următoarele câmpuri:
Fig. 4.5 Tabela address
Unde:
address_id – id-ul adresei clientului, câmp identic cu cel din tabela customer (fig. 4.3);
customer_id – id-ul unic al clientului;
firstnume – prenumele clientului;
lastname – numele clientului;
company – numele firmei clientului (câmp facultativ);
address_1 – adresa clientului;
address_2 – câmp adițional pentru adresă (câmp facultative);
city – orașul de reședință al clientului;
postcode – codul poștal;
country_id – id-ul pentru fiecare țară din baza de date;
zone_id – id-ul pentru județ/regiune din baza de date.
Tabela country este de tip MyISAM, este tabela pentru țări, fiecare țară are un cod unic în baza de date și are următoarele câmpuri:
Fig. 4.6 Tabela country
Unde:
country_id – id-ul pentru țară în baza de date , câmp identic cu cel din tabela address (fig. 4.5);
name – nume țără;
code – cod țără (de exemplu: România ae codRO, Franța are cod FR, etc);
status – stare, dacă țara poate fi selectată sau nu din baza de date.
Tabela zone este de tip MyISAM, este tabela pentru județe/regiuni, fiecare județ/regiune are un cod unic în baza de date și are următoarele câmpuri:
Fig. 4.7 Tabela zone
Unde:
zone_id – id-ul pentru județ/regiune în baza de date, câmp identic cu cel din tabela address (fig. 4.5);
country_id – id-ul pentru țara corespondentă fiecărui județ/regiune, câmp identic cu cel din tabela address (fig. 4.5);
name – nume județ/regiune;
code – cod județ/regiune (de exemplu: Bihor are cod BH);
status – stare, dacă județul/regiunea poate fi selectată sau nu din baza de date.
Tabela category este de tip MyISAM, este tabela pentru afișarea produselor pe categorii și are următoarele câmpuri:
Fig. 4.8 Tabela category
Unde:
category_id – id-ul categoriei stocate în baza de date;
image – câmp pentru imaginea reprezentativă categoriei (câmp facultativ);
parent_id – id-ul categoriei principale (părinte) pentru subcategorii;
top – dacă se dorește să apară în meniul orizontal din header, doar pentru categoriile părinte;
column – numărul de coloane pe care se afișeaza subcategoriile în meniul orizontal din header;
status – starea categoriei, activată sau dezactivată;
date added – data la care a fost adăugată categoria;
date_modified – data la care s-au efectuat modifică, în cazul în care s-au efectuat modificări.
Tabela category_description este tip MyISAM, este tabela pentru descrierea categoriilor și are următoarele câmpuri:
Fig. 4.9 Tabela category_description
Unde:
category_id – id-ul categoriei în baza de date, câmp identic cu cel din tabela category (fig. 4.8);
name – numele categoriei;
description – descriere categoriei, câmp facultativ.
Tabela product este de tip MyISAM, este tabela pentru produse și are următoarele câmpuri:
Fig. 4.10 Tabela product
Unde:
product_id – id-ul produsului în baza de date;
model – modelul produsului;
quantity – numărul bucăților disponibile în stoc;
stock_status_id – disponibilitatea produsului, poate avea mai multe valori: In Stock (În Stoc), Out Of Stock (Stoc Epuizat), Pre-Order (Necesită Precomandă) sau 2-3 Days (Disponibil în 2-3 zile);
image – locația imaginii de prezentare a produsului;
manufacturere_id – id-ul producătorului produsului;
shipping – dacă necesistă sau nu trannsport, în cazul produselor digitale, acestea nu necesită transport, sunt trimise direct prin email cu un cod de activare;
price – prețul proudusului;
date_available – data disponibilității produsului;
minimum – cantitatea minimă de vânzare a produsului;
status – dacă este sau nu activ produsul;
date_added – data introducerii produsului în baza de date;
date_modified – date în care s-au fost efectuate modificări asupra produsului în baza de date (dacă s-au efectuat modificări).
Tabela product_description este de tip MyISAM, este tabela pentru descrierea produsului și are următoarle câmpuri:
Fig. 4.11 Tabela product_description
Unde:
product_id – id-ul produsului în baza de date, câmp identic cu cel din tabele product (fig. 4.10);
name – numele produsuluil;
description – descrierea produsului (specificații tehnice).
Tabela product_image este de tip MyISAM, este tabela pentru prezentarea produsului și are următoarele câmpuri:
Fig. 4.12 Tabela product_image
Unde:
product_image_id – id-ul imaginii produsului în baza de date;
product_id – id-ul produsului cărui ii este destinată imaginea, câmp identinc cu cel din tabela producat (fig 4.10);
image – locația imaginii;
sort_order – ordinea de prezentare a imaginii (de exemplu: 1, 2, 3, 4).
Tabela product_to_category este de tip MyISAM, este tabela pentru listarea produselor pe categorii și are următoarele câmpuri:
Fig. 4.13 Tabela product_to_category
Unde:
product_id – id-ul produsului în baza de date, câmp identic cu cel din tabela product (fig. 4.10);
category_id – id-ul categoriei în baza de date, câmp identic cu cel din tabela category (fig. 4.8).
Tabela product_discount este de tip MyISAM, este tabela pentru produsele aflate la reducere și are următoarele câmpuri:
Fig. 4.14 Tabela product_discount
Unde:
product_discount_id – id-ul produsului cu reducere;
product_id – id-ul produsului în baza de date, câmp identic cu cel din tabela product (fig. 4.10);
customer_group_id – id-ul gurpului de clienți, în cazul în care reducerea se aplică numai pentru anumiți clienți;
quantity – cantitatea de produse pentru care se aplică reducerea;
priority – prioritatea reducerii, în cazul în care se aplică mai multe reduceri (de exemplu în cadrul sărbătorilor de Pași sau de Crăciun, sau Black Friday, se aplică reduceri diferite pe parcursul a mai multor zile);
price – prețul redus;
date_start – data când începe reducerea aplicată produsului;
date_end – data când se termină reducerea aplicată produsului;
Tabela stock_status_id este de tip MyISAM, este tabela pentru starea stocului și are următoarele câmpuri:
Fig. 4.15 Tabela stock_status_id
Unde:
stock_status_id – id-ul pentru starea stocului, câmp identic cu cel din tabela product (fig. 4.10);
name – numele alocat pentru fiecare stare – In Stock (În Stoc), Out Of Stock (Stoc Epuizat), Pre-Order (Necesită Precomandă) sau 2-3 Days (Disponibil în 2-3 zile);
Tabela order este de tip MyISAM, este tabela pentru comandă și are următoarele câmpuri:
Fig.4.16 Tabela order
Unde:
order_id – id-ul comenzi;
store_name – numele magazinului virtual (în cazul de față: UltraComputers);
store_url – adresa magazinului virtual (în cazul de față: http://ultracomputers.info/);
cutomer_id – id-ul clientului, câmp identic cu cel din tabela cutomer (fig. 4.3);
cutomer_group_id – grupul din care face parte clientu, câmp identic cu cel din tabela customer_group (fig. 4.4);
firstname – prenumele clientului;
lastname – numele clientului;
email – adresa de email a clientului;
telephone – numărul de telefon al clientului;
fax – numărul de fax al clientului (câmp facultativ);
payment_firstname – prenumele de plată al clientului;
payment_lastname – numele de plată al clientului;
payment_company – compania pe numele căreia se efectuează plata (câmp facultative);
payment_address_1 – adresa de unde se efectuează plata;
payment_address_2 – câmp adițional pentru adresă (câmp faculativ);
payment_city – orașul de unde se efectuează plata;
payment_postcode – codul poștal de unde se efectuează plata;
payment_country – țara de unde se efectuează plata;
payment_country_id – id-ul țării de unde se efectuează plata;
payment_zone – județul/regiunea de unde se efectuează plata;
payment_zone_id – id-ul județului/regiunii de unde se efectuează plata;
payment_method – metoda de plată;
shipping_firstname – prenumele de livrare a comenzii;
shipping_lastname – numele de livrare a comenzii;
shipping_company – numele companiei căreia i se livrează comanda (câmp facultativ);
shipping_address_1 – adresa unde se face livrarea comenzii;
shipping_address_2 – câmp adițional pentru adresă (câmp faculativ);
shipping_city – orașul unde se face livrarea comenzii;
shipping_postcode – codul poștal unde se face livrarea comenzii;
shipping_country – țara unde se face livrarea comenzii;
shipping_country_id – id-ul țării unde se face livrarea comenzii;
shipping_zone – județul/regiunea unde se face livrarea comenzii;
shipping_zone_id – id-ul zonei unde se face livrarea comenzii;
shipping_method – metoda de livrare a comenzii;
comment – comentariu adițional (câmp facultativ);
total – totalul de plată;
order_status_id – starea comenzii;
ip – adresa de ip de unde sa efectuat comanda;
user_agent – browser-ul utilizat pentru efectuarea comenzii;
date_added – data la care sa efectuat comanda;
date_modified – data de modificare a comenzii, în cazul în care se pot face modificări asupra comenzii în curs.
Tabela orders_status este de tip MyISAM, este tabela pentru starea comenzii și are următoarele câmpuri:
Fig.4.17 Tabela order_status_id
Unde:
order_status_id – id-ul stării comenzii;
name – numele stării – poate fi: Pending – În așteptare, Processing – În Procesare, Shipped – Livrată, Canceled – Anulată, Complete – Terminată, Denied – Interzisă, Failed – Eșuată, Refunded – Rambursată, Reversed – Revocată, Canceled Reversal – Anulare Revocare, Chargeback – Returnare contravaloare produsului.
4.1.5 OpenCart
OpenCart este un sistem de administrare creat special pentru realizarea și gestionarea magazinelor on-line. OpenCart este o soluție CMS (Content Management System) open-source bazat pe PHP și MySQL, care funcționează sub o licență de tipul GNU General Public License, ceea ce înseamnă că oricine poate utiliza OpenCart gratuit.
Un CMS reprezintă un sistem software folosit pentru asistența utilizatorilor în administrarea conținutului unui site web. Un web CMS este folosit pentru stocarea, modificarea și publicarea unor date specifice, de la documente până la articole sau cărți cu specific tehnic.
Cele mai cunoscute CMS-uri pe lângă OpenCart sunt Drupal, Joomla, WordPress și Prestashop.
4.1.5.1 Arhitectura MVC
OpenCart folosește un cadru de lucru bazat pe arhitectura MVC (Model View Controller) scopul acesteia fiind de a separa modulul de date de interfața cu utilizatorul (view), astfel încat schimbările din interfață să nu afecteze datele.
Fig. 4.18 Colaborare tipică din componentele MVC
Arhitectura MVC rezolvă această problemă prin decuplarea accesului la date și la logica aplicației de prezentarea datelor și la interacțiunea cu utilizatorul, introducând o componentă intermediară, numită Controller.
Arhitectura MVC este construită din trei componente principale:
Componenta Model – constituie o reprezentare specifică (sub formă de date) a informațiilor cu care operează aplicația;
Componenta View (vedere) – interpretează modelul într-o formă potrivita pentru interacțiune (într-un element de interfață). Pentru un singur model, pot fi dezvoltate mai multe vederi, cu scopuri diferite;
Componenta Controller (controlor) – reprezintă clasele care realizează comunicarea între cele două componente anterioare (View și Model) procesează evenimentele din interfață și răspunde la acestea. De asemenea, poate invoca schimbări în model.
În comparație cu Joomla și WordPress, OpenCart adaugă “by default” un magazin online.
4.1.5.2 Cerințe de sistem
Pentru a folosi OpenCart trebuie indeplinite următoarele cerințe:
Server care rulează : Windows IIS sau Apache, PHP 5+ și MySQL
Pentru PHP are nevoie de câteva setări și anume:
Register Globals: Off – în mod normal, dupa PHP 4.2.0, acestă setare este făcută by default OFF;
Magic Quotes GPC: Off – pentru a evita apariția de [/] în textul afișat în site;
File Uploads: On – pentru a putea uploada/downloada date;
Session Auto Start: Off – pentru a avea acces total asupra momentului în care se decide inceprea unei sesiuni noi.
Precum și următoarele extensii:
MySQL: On
GD: On
cURL: On
ZIP: On
OpenCart nu va funcționa corect sau deloc pe un server ce nu indeplinește aceste cerințe.
4.1.5.3 Intalare OpenCart
Instalarea OpenCart se face cu ajutorul unui FTP (File Transfer Protocol). FTP este un protocol de transfer de date între calculatoare prin intermediul internet, în cazul de față transferul se face intre serverul pe care va fi găzduit magazinul virtual și calculatorul personal.
Pasul 1: Înainte de se putea instala OpenCart trebuie creată o bază de date. Baza de date se crează din panoul de control cPanel, oferit de serviciul de găzduire, din MySQL Databases (fig. 4.19).
Fig. 4.19 Fereastra Databases.
Pasul 2: Se dă un nume bazei de date (fig. 4.20).
Fig. 4.20 Crearea bazei de date.
Pasul 3: Se crează un user pentru baza de date (fig. 4.21)
Fig. 4.21 Fereastra creare user
Pasul 4: Se adaugă userul creat, bazei de date create (fig. 4.22).
Fig.4.22 Fereastra pentru adăugare user
Pasul 5: Se alocă toate privilegiile userului creat (fig. 4.23).
Fig. 4.23 Fereastra privilegii
În fig. 4.24 se poate observa user-ul alocat bazei de date
Fig. 4.24 Baza de date
Pasul 6: Pentru a încărca fișierele de instalare OpenCart se folosește protocolul de transfer de fișiere din cPanel (sau oricare alt FTP, de exemplu: FileZilla), se dă click pe File Manager (fig 4.25)
Fig. 4.25 Fereastra Files
Pasul 7: Se selectează folderul unde se dorește copierea fișierelor (fig. 4.26).
Fig. 4.26 Fereastra File Manager Directory Selection
Pasul 8: Din fereastra File Manager (fig. 4.27) se dă click pe Upload, după care se încarcă arhiva cu fișierele de instalare și se dezarhivează.
Fig. 4.27 Fereastra File Manager
Pasul 9: Se mută fișierele din folderul upload în /public_html.
Pasul 10: Se tastează în browser numele domeniului, în cazul de față numele domeniului este ultracomputers.info
Pasul 11: În browser va apărea meniul de instalare pentru OpenCart (fig. 4.28) și se dă click pe Continue.
Fig. 4.28 Fereastra de instalare OpenCart
Pasul 12: Se redenumesc fișierele connfig-dist.php în config.php din /home/ultrac14/public_html/ respectiv /home/ultrac14/public_html/admin/, după care se face automat o verificare a cerințelor de sistem și a permisiilor și se dă click pe Continue.
Pasul 13: Se introduc datele de conectare la baza de date (fig. 4.29).
Fig. 4.29 Fereastra pentru introducerea datelor de conectare la baza de date.
Pasul 14: Din motive de securitate se șterege folderul de instalare install.
4.2 Plasarea unei comenzi
Atunci când un client dorește să facă o comandă trebuie să se autentifice în contul de client, dacă nu are cont, atunci va trebui să se înregistreze.
Crearea unui cont se face dând click pe cont nou, în partea de sus a paginii web, după care va apărea pagina de crearea cont nou (fig. 4.30)
Fig. 4.30 Autentificare cont
După completarea formularului de înregistrare (fig. 4.32), clientu va primi un email de confirmare a înregistrării, după care va avea acces la contul său, unde poate edita informațiile de contact, schimba parola de acces sau vizualiza comenzile efectuate.
O dată contul creat, clientul alege produsele dorite și le adaugă în coșul de cumpărături.
Pentru a vizualiza produsele adăugate în coș și a plasa comanda se face click pe Coș de cumpărături, după care se apasă butonul Comandă (fig. 4.31).
Fig. 4.31 Coș de cumpărături
Fig. 4.32 Formularul de înregistrare
După apăsarea butonului Comandă va apărea pagina de plasare a comenzii, unde se introduc detaliile de plată, detaliile de livrare, metoda de livrarea, metoda de plată și se apasă pe butonul Confirmare Comandă pentru a confirma comanda.
Clientul va primi un email cu detaliile comenzii (fig 4.33)
Fig. 4.33 Detaliile comenzii
Pentru fiecare comandă administratorul magazinului va primi o notificare în panoul de administrare (fig. 4.34), pentru a procesa comanda.
Fig. 4.34 Notificare comandă
Administratorul verifică detaliile comenzii, dacă toate datele sunt în conformitate trimite comanda spre livrare, și modifică stare comenzii pentru a informa clientul (fig 4.35).
Fig. 4.35 Ferestra stare comandă
Sitemul va trimite automat un email clientului cu starea comenzii.
Vizualizarea stării comenzii este posibilă și din contul clientului din pagina de Istoric comenzi.
Concluzii
Lucrarea de disertație este structurată pe patru capitole: Capitolul 1. Studiu de piață, Capitolul 2. Analiza condițiilor legale, Capitolul 3. Structura funcțională a magazinului virtual și Capitolul 4. Aplicație.
Atunci când se crează un magazin virtual trebuie să se cunoască câteva noțiuni despre piață, aceste noțiuni sunt prezentate în Capilolul 1 și anume dimensiunile și structura pieței, localizarea activității de piață, cererea de mărfuri, oferta de mărfuri, studiul prețurilor și conjunctura pieței.
După însușirea acestor noțiuni legate de piață trebuie să se cunoască cadrul legal, prezentat în Capitolul 2. În acest capitol sunt prezentate pasaje din Legea 365/2002 privind comerțul electronic și Legea 506/2004 privind prelucrarea datelor cu caracter personal și protecția vieții private în sectorul comunicațiilor electronice. Legea 365/2002 stabilește câteva aspecte legate de libertatea de furnizarea a serviciilor societății informaționale, comunicări comerciale, contracte încheiate prin mijloace electronice și răspunderea furnizorilor de servicii.
Tot în Capitolul 2 sunt prezentate documentele necesare pentru funcționarea legală a magazinului virtual, aici intră numele firmei care desfăsoară activitate economică prin intermediul magazinului virtual, datele complete de identificare, datele de identificare ale autorității competente, în cazul în care activitatea commercială este supusă unui regim de autorizare, tarifele aferente pentru produsele sau serviciile expuse la vânzare și autorizație de la Autoritatea Națională de Supraveghere a Prelucrării Datelor cu Caracter Personal.
După cunoaștere pieței și a cadrului legal se poate trece la structura funcțională a magazinului virtual prezentată în Capitolul 3.
Capitolul 3 începe cu prezentarea limbajelor de programare folosite HTML și PHP, continuă cu descriere serverlui web Apache necesar pentru rularea acesor limbaje de programare, urmat de prezentarea limbajului de programare utilizat pentru bazele de date și anume MySQL.
În structura funcțională a magazinului virtual intră înregistrarea unui domeniul și achizitionarea unui pachet de găzduire web, mecanismele de plată electronice, promovarea și actualizarea.
În Capitolul 4 este prezentată proiectarea și programarea în PHP a magazinului virtual ce cuprinde proiectarea secțiunii de prezentarea, proiectarea secținunii de client, proiectarea secținuii de administrarea și proiectarea bazei de date.
În acest capitol este prezentată structura bazei de date, tabelele și câmpurile folosite, precum și o descriere amănunțită a fiecărei tabele.
Tot în acest capitol este prezentat OpenCart – sistemul utilizat pentru administrarea magazinului virtual, structura funcțională, cerințele necesare de rulare și pașii de instalarea.
Tot în Capitolul 4 este prezentată o aplicație practică, și anume plasarea unei comenzi – sunt prezentați pași urmați de client și administratorul magazinului atunci când se face o comandă.
Crearea unui magazin virtual este un process de durată, necesită o analiză și o planificare minuțioasă. Înainte de a demara procesul propriu-zis de construire, comerciantul trebuie să cunoască domomeniul în care va activa, să cunoască produsele pe care va urma să le comercializeze și concurența pe segementul de piața în care va activa.
Luarea în considerare a acestor aspecte va concluziona la crearea unui brand în domeniu și la o afacere de succes.
BIBLIOGRAFIE
Luke Welling, Laura Thomson, PHP and MySQL Web Development, Fourth Edition, Addison-Wesley Professional, 2008 [http://it-ebooks.info/book/907/]
Cristian Darie, Emilian Balanescu, Beginning PHP and MySQL E-Commerce, Second Edition, Apress, 2008 [http://it-ebooks.info/book/856/]
Baron Schwartz, Peter Zaitsev, Vadim Tkachenko, High Performance MySQL, Third Edition, O’Reilly Media, 2012 [http://www.it-ebooks.info/book/676/]
V. V. Patriciu, M. Ene, I. Bica, C. Vaduva, N. Voicu, Securitatea comerțului electronic, Editura All, Bucuresti, 2001
Ionescu, F., Baze de Date Relaționale și Aplicații, Editura Tehnica, București, 2004
Philip Kotler, Principiile marketingului, Editura Teora, 2008
***. Legea nr. 365 din 7 iunie 2002, Publicată în Monitorul Oficial, Partea I nr. 483 din 5 iulie 2002 privind comerțul electronic
***. Legea nr. 506 din 17 noiembrie 2004, Publicată în Monitorul Oficial, Partea I nr. 1101 din 25 noiembrie 2004 privind prelucrarea datelor cu caracter personal și protecția vieții private în sectorul comunicațiilor electronice
***. http://www.mysql.com/
***. https://en.wikipedia.org/
Anexe
Autentificarea în contul de administrator se face din browser prin adresa http://ultracomputers.info/admin/
Fereastra de autentificare în contul de administrator.
Panoul de control pentru administrarea magazinului virtual.
Accesarea paginii web a magazinului virtual se face prin adresa http://ultracomputers.info/
Pagina principală a magazinului virtual.
Pagina de listare a produselor pe categorii și filtre de sortare (figura de mai jos).
Pagina pentru administrarea contului client.
Fereastra de autentificare în cPanel pentru administrarea serverului de găzduire web.
Panoul de control cPanel (figura de mai jos).
Fereastra phpMyAdmin utilizat pentru administrarea bazei de date MySQL.
Clientul FTP FileZilla utilizat pentru transferul fișierelor.
BIBLIOGRAFIE
Luke Welling, Laura Thomson, PHP and MySQL Web Development, Fourth Edition, Addison-Wesley Professional, 2008 [http://it-ebooks.info/book/907/]
Cristian Darie, Emilian Balanescu, Beginning PHP and MySQL E-Commerce, Second Edition, Apress, 2008 [http://it-ebooks.info/book/856/]
Baron Schwartz, Peter Zaitsev, Vadim Tkachenko, High Performance MySQL, Third Edition, O’Reilly Media, 2012 [http://www.it-ebooks.info/book/676/]
V. V. Patriciu, M. Ene, I. Bica, C. Vaduva, N. Voicu, Securitatea comerțului electronic, Editura All, Bucuresti, 2001
Ionescu, F., Baze de Date Relaționale și Aplicații, Editura Tehnica, București, 2004
Philip Kotler, Principiile marketingului, Editura Teora, 2008
***. Legea nr. 365 din 7 iunie 2002, Publicată în Monitorul Oficial, Partea I nr. 483 din 5 iulie 2002 privind comerțul electronic
***. Legea nr. 506 din 17 noiembrie 2004, Publicată în Monitorul Oficial, Partea I nr. 1101 din 25 noiembrie 2004 privind prelucrarea datelor cu caracter personal și protecția vieții private în sectorul comunicațiilor electronice
***. http://www.mysql.com/
***. https://en.wikipedia.org/
Anexe
Autentificarea în contul de administrator se face din browser prin adresa http://ultracomputers.info/admin/
Fereastra de autentificare în contul de administrator.
Panoul de control pentru administrarea magazinului virtual.
Accesarea paginii web a magazinului virtual se face prin adresa http://ultracomputers.info/
Pagina principală a magazinului virtual.
Pagina de listare a produselor pe categorii și filtre de sortare (figura de mai jos).
Pagina pentru administrarea contului client.
Fereastra de autentificare în cPanel pentru administrarea serverului de găzduire web.
Panoul de control cPanel (figura de mai jos).
Fereastra phpMyAdmin utilizat pentru administrarea bazei de date MySQL.
Clientul FTP FileZilla utilizat pentru transferul fișierelor.
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: Structura Functionala a Magazinului Virtual (ID: 163749)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
