Cum sa faci un magazin online

Cum sa faci un magazin online?

Înainte de a trece la subiectul propriu-zis, aș dori să abordez un numitor comun (deși poate fi necesar să se facă chiar la sfârșit). Soluția software oferită aici nu este ideală și singura corectă. În lume, în general, puțin ideal :-) Deci, să acceptăm să nu ne concentrăm asupra unor lucruri cum ar fi alegerea unui limbaj de programare, stilul programului, modalități de a rezolva problemele emergente. Toate acestea pot fi discutate pentru o lungă perioadă de timp și cu diligență, dar văd scopul meu într-un mod diferit - de a le oferi tuturor informațiile minime necesare pentru a-și crea propriul magazin online fără software complicat și soluții tehnice. Și cel mai important - fără costuri financiare semnificative, care joacă adesea un rol decisiv.

Faceți-o simplă (nu vom lua în considerare soluții complexe) Magazinul în sine, destul de ciudat, este foarte simplu. Si nu fi surprins - implementarea unui astfel de proiect este disponibila chiar si pentru un programator incepator care este familiarizat cu tehnologiile Internet. Sper că vă puteți vedea singuri. Este ceva mai dificil să vă gândiți cum să vă legați propriul magazin (aici și în viitor, bineînțeles, magazinul online este menit) la anumite bunuri. Ei bine, iată un exemplu pentru dvs. Există un set de consumabile de birou. În numărul de 1000 de articole. Prețul cu prețuri și informații despre produse este actualizat aproape zilnic și nu doar actualizat, uneori actualizat radical! Mai mult decât atât, nu numai prețurile se schimbă, dar nu sunt atât de rău, ci și tipurile de bunuri, descrierile acestora, termenii de garanție și aprovizionare etc. Încercați să introduceți toate aceste date în magazinul dvs. în fiecare zi și imediat obțineți respect pentru acei oameni care fac o astfel de activitate :-) Este exact actualizarea datelor din magazin și ocupă cea mai mare parte a programului în sine. Acesta este primul lucru pe care trebuie să vă gândiți.

Înainte de a începe să faceți magazinul dvs., trebuie să studiați cu atenție prețul bunurilor și modalitățile de actualizare a acestora în original. Să examinăm câteva convenții pentru un exemplu. Există o firmă în a cărei sortiment sunt produse de calculator. Există suficienți dintre aceștia care nu ar fi implicați în actualizarea manuală, ci își inventează propriul sistem pentru sincronizarea datelor din lista de prețuri și din magazin. Lăsați prețul să fie în Excel. Acest lucru nu este de obicei cazul, multe firme folosesc programe specializate în activitatea lor, de exemplu, 1C Accounting, dar astfel de momente nu sunt importante, deoarece puteți oricând să importați date din astfel de pachete în Excel. Numărul secțiunilor din lista de prețuri și bunurile din ele nu este fix, iar prețul în sine este un set de rânduri și coloane. În fiecare linie - produsul sau numele secțiunii de prețuri (de exemplu - procesoare, memorie, șoareci etc.). Numărul de coloane nu este important, prețul, denumirea, descrierea mărfurilor pot fi prezentate ca standard. Cu toate acestea, pot exista alte opțiuni. Iată o descriere a prețului obișnuit cu care vă puteți confrunta.

Ce și cum puteți utiliza aceste date? Desigur, puteți utiliza module speciale pentru a extrage date dintr-un fișier Excel (acestea există în diferite versiuni pentru diferite limbi de programare), dar aceste module nu sunt de obicei gratuite, ceea ce înseamnă că ele nu sunt acceptabile pentru noi. În plus, există întotdeauna o problemă de configurare. Uneori, pentru a face acest lucru, trebuie să aveți o astfel de calificare încât este mai ușor să scrieți totul de la zero :-) Cu toate acestea, aceste module nu sunt cu adevărat necesare. Care este prețul nostru? Așa este, un set de rânduri și coloane și sincronizate strict între ele. Astfel, din astfel de linii și coloane, puteți crea un fișier text cu exact aceeași structură. Numai în loc de separarea vizuală a liniilor și coloanelor (ca în Excel-e), trebuie să folosiți orice caractere. Desigur, în acest caz, sincronizarea vizuală va fi pierdută, deoarece lungimea liniilor este întotdeauna diferită, dar acest lucru nu este important, deoarece structura internă va rămâne aceeași. Vor fi toate liniile și coloanele, numai în format text. Și acest format este foarte ușor de citit și procesat în aproape orice limbaj de programare.

Dacă vorbim despre exemple și convenții, să determinăm acum ce limbă de programare vor fi exemplele noastre. Alegerea este evidentă pentru mine, deoarece am scris magazinul meu pe PHP. Acesta este un limbaj de programare simplu (și în același timp suficient de puternic) care oferă toate instrumentele necesare pentru implementarea magazinului online (și nu numai, printre altele). Deci, să fie PHP. Dar nu uitați că puteți transfera întotdeauna cu ușurință algoritmul la orice altă platformă. Este doar cu PHP: e mai convenabil cumva.

Să ne întoarcem la lista noastră de prețuri. Excel, după cum știți, poate salva fișierele în diferite formate. Suntem interesați de unul acum - un fișier text cu delimitatori de file. În principiu, delimitatorii nu sunt importanți, există posibilitatea de a salva în format sau spații delimitate de virgulă. Utilizați cel care vă place cel mai bine. Ne vom opri la tabulare.

Iată ce avem la ieșire: fișierul * .txt, liniile sunt separate prin traducerea carului (acesta este un simplu Enter), coloanele sunt separate de file. Întreaga structură internă a listei de prețuri a rămas aceeași, așa cum sa ocupat și de Excel Save Wizard. Ei bine, este mai bine :-)

Așadar, am găsit o modalitate de a nu se angaja în activități de rutină privind actualizarea zilnică a listei de prețuri în magazinul nostru online, ci pentru a maximiza automatizarea acestui proces. Înainte de a începe să lucrați cu fișierul rezultat, vă recomandăm să îl comprimați puțin sau să îl procesați. Acest lucru este necesar pentru a elimina coloanele inutile, spațiile repetate, articolele care lipsesc temporar etc. Pentru a face acest lucru, trebuie să citiți fișierul într-o matrice, să procesați fiecare rând pentru informații inutile, să scrieți rezultatul înapoi la matrice din aceeași locație și în final să scrieți întreaga matrice într-un fișier. Aproximativ așa. Dar trebuie să pornim de la nevoia specifică a unor astfel de operațiuni, este foarte posibil să eliminăm doar spațiile duplicate.

Când totul este gata, este timpul să pornim algoritmul de eșantionare a datelor din fișierul nostru text cu prețul. După cum deja ați sperat, a fost ghicit, nu este deloc complicat. Citiți fișierul într-o matrice:

$ fișier = "preț.txt";
$ tovar = fișier (fișier $);

Încă o dată, exemplele sunt date în formatul limbajului PHP. Apoi, trebuie să procesăm matricea $ tovar [] într-o buclă cu ieșirea rezultatelor lucrării pe ecran:

$ i = 0; // contorul pornește de la zero
în timp ce ($ i echo $ tovar [$ i]; // tipăriți linia pe ecran
ecou "
"; // nu uitați de traducerea șirurilor $ i ++; // a încheia buclă
endwhile;

Prin urmare, este necesar să separați secțiunile din lista de prețuri de informațiile despre produs. Acest lucru se poate face dacă acordați atenție coloanei în care este denumirea secțiunii. De regulă, la fel ca și numele bunurilor. Dar - în conformitate cu titlul secțiunii nu există informații despre prețul bunurilor, iar acest lucru poate servi drept o trăsătură distinctivă bună pentru program. Este suficient să urmăriți disponibilitatea coloanei de preț din linia selectată de fiecare dată. Când este goală - în rândul numele secțiunii și poate fi afișat, dacă nu - este un produs, săriți peste această linie dacă trebuie doar să afișați titlurile secțiunilor. Și invers pentru retragerea de bunuri numai.

Acum despre cum să împărțiți informațiile în rândul selectat de coloane. Luăm fiecare variabilă variabilă. Dacă există cinci coloane în lista de prețuri, atunci cinci ar trebui rezervate și pentru variabile. Pentru a nu deveni confuzi, luați nume similare: $ n_1, $ n _2, $ n_3, $ n_4, $ n _5. Acum, dacă linia dorită este în matricea $ tovar [$ i]. este suficient să se aplice o astfel de construcție:

listă ($ n_1, $ n_2, $ n_3, $ n_4, $ n_5) = împărțit ("\ t", $ tovar [$ i]);

iar dacă coloanele au fost separate de o filă, ele sunt alocate fiecărei variabile. Dacă ați folosit un separator de coloane diferit, trebuie să-l scrieți în loc de \ t. Acum este ușor să verificați disponibilitatea prețului și, de asemenea, să sortați și să formatați datele de preț în mod corect.

Aici aveți o soluție gata pentru a afișa pur și simplu prețul pe secțiuni pe ecran. Dar acest lucru nu este suficient pentru un magazin on-line, deoarece implică posibilitatea de a comanda produse selectate.

Am ajuns la un subiect foarte interesant - un coș virtual. Nu am nici o îndoială că pe multe site-uri web ați încercat să comandați bunurile expuse acolo și că toate lucrările coșului au fost realizate în moduri diferite. Ce ar trebui un vizitator standard dintr-un magazin online? Așa-i, cumpărați bunurile. Și de ce are nevoie pentru asta? Navigare convenabilă, acces ușor și rapid la bunuri, abilitatea de a schimba numărul unui articol din coșul de cumpărături, abilitatea de a scoate bunurile din coșul de cumpărături, informații despre produs (date, opțiuni, imagine, în cele din urmă - prețul!). Acesta este un minim necesar - creșterea funcțiilor disponibile afectează în mod negativ viteza și complică în mod semnificativ programul. Dar - asta este mai mult decât suficient pentru noi.

Și nu ne vom ocupa de înregistrare, deoarece practic nu schimbă nimic. Oricum, nu poți să scapi de cookie-ul: Ei bine, am auzit deja :-) multe voturi, cu niște recenzii, nu prea măgulitoare, cum ar fi "Din nou și ne-am gândit:". Da, și din nou, da! Să încercăm să oferim o serie de argumente pentru folosirea acestei tehnologii și vă hotărâți - dacă am dreptate sau nu.

Pentru a face acest lucru, trebuie să luați în considerare avantajele și dezavantajele mai multor tehnologii concurente. Ce poate fi opus de un cookie? Din ceea ce este mai simplu - script Java și sesiune. Să ne uităm la toate cele trei ordine.

Fișierele cookie sunt fișiere mici scrise pe computer de către server. Toate suporturile pentru browsere lucrează cu ele și credeți-mă - această tehnologie are mai multe limitări decât oportunități. De exemplu, nu pot fi scrise într-un singur modul cookie mai mult de 4 kilobytes de date, nu se poate referi la cookie-ul altcuiva, numai lui (creat de către serverul dvs.), nu puteți seta un cookie în cazul în care sau în altă parte, cu excepția alocat de către utilizator. Nu puteți, nu puteți, nu puteți: Bineînțeles, toate acestea sunt asigurate că monitorizați securitatea computerului și instalați cel mai avansat software. Apropo, în aproape toate browserele cookie-urile sunt incluse în mod implicit și dacă le puteți dezactiva, puteți să-l activați. Puteți face acest lucru în setările browserului. Un număr foarte mare de site-uri folosesc un modul cookie în activitatea lor, iar unele dintre ele nu vă vor lăsa să accesați fără a avea suportul activat în browser. E bine sau rău este. Există programe speciale - firewall-uri care taie cookie-urile sau refuză accesul la site, deci alegerea este încă pentru vizitator. Dar - utilizatorul mediu nu dezactivează cookie-ul, dar pentru utilizatorii avansați merită să scrie un avertisment pe site.

Următorul - Java Script. Această tehnologie este, de asemenea, destul de obișnuită, dar. Există versiuni de browsere populare care nu acceptă Java Script. De exemplu - versiunea Opera. Adevărat, nu este vina pe care aș vrea să accentu. Tehnologia clientului Java Script, ceea ce înseamnă că textul programului - scriptul trebuie trimis la browser. Desigur - creșterea timpului de încărcare și încetinirea programului vă sunt garantate. Și în plus, este încă nevoie de resursele calculatorului și avem un amestec zguduitor. Dar trebuie să-ți respectați clientul și chiar să-l iubiți puțin - cum ne plătește pentru munca noastră. Deci, de ce complici calea pentru el pe site? Cu toate acestea, există și avantaje: dacă serverul nu suportă programarea de partea sa, rămâne să utilizați numai Java Script.

Sesiunea. Mecanism foarte eficient, construit în multe limbi moderne de programare. Acesta este prezent, de exemplu, în PHP versiunea 4.0 și versiuni ulterioare. Vă permite să transferați variabile de la o fereastră de browser la alta, fără a o pierde și fără a transfera folosind metodele POST sau GET. E pe degete. În realitate - el folosește în opera sa un identificator unic, care este stocat într-un cookie de la fel, astfel încât ceea ce este nou în principiu, nu are nimic, cu excepția faptului că mărește gradul de utilizare: Dacă știți doar cum să-l folosească :-) Desigur - necesită suport cookie din browserul dvs. .

Aici sunt, concurenți. De fapt, alegerea este între două: un cookie sau un Java Script. Al doilea este de a alege numai dacă găzduirea dvs. nu suportă programarea de la server în oricare dintre limbile. Aceasta este practic toate serviciile gratuite de găzduire. Și la prima este necesar să se oprească în toate celelalte cazuri, când este posibil să se acorde slujba principală de procesare a serverului. Cu toate acestea, Java Script-ul dvs. va funcționa, de asemenea, cu un cookie, în caz contrar conexiunea la Internet, care a rupt atât de rău, va privi vizitatorul de bunurile greu de umplut în coș. A doua oară (vizitatorul magazinului) nu poate face acest lucru. Dacă se utilizează module cookie, întregul coș rămâne neatins, deoarece este scris pe computerul clientului. După cum puteți vedea, cercul sa închis, încă nu putem scăpa de ele :-) Deci - decizia privind alegerea tehnologiei depinde de capacitățile de găzduire.

Noi, ca programatori progresivi, ne vom concentra pe cookie-uri. În plus, avem PHP, și este foarte ușor să instalați, să ștergeți și să citiți cookie-ul. În practică, va arăta astfel:

Asta e tot ce trebuie să lucrăm cu un cookie teribil.

Odată ce tehnologia este selectată - să o aplicăm în practică! Prețul, dacă vă aduceți aminte, este stocat într-un fișier text. Cadrul de eșantionare este de acolo. Rămâne să decideți ce anume să stocați în cookie. Poți - toate informațiile despre produs, dar numai identificatorul și cantitatea digitală. Alegerea concretă trebuie făcută din condiții reale. Prin principiu - care este mai simplu. Numai trebuie să luăm în considerare faptul că identificatorul digital nu ocupă mult spațiu în memorie, dar este mai mult un obstacol în ceea ce privește programarea. Va trebui să faceți un bloc de potrivire a identificatorului și să preluați informațiile din fișierul de prețuri. Mai există încă un punct. Dacă prețul se schimbă adesea, informațiile din coșul clientului pot deveni rapid depășite și nu corespund realității. Deci, merită să aveți în vedere controlul datei. Data la care vizitatorul a pus mărfurile în coș, de asemenea, va trebui să fie stocată în cookie, deoarece nu există altundeva. În cazul în care datele sunt foarte diferite - merită notat cumpărătorul despre discrepanța. În caz contrar, pot apărea incidente enervante. Este neplăcut atunci când se face o comandă cu o săptămână în urmă preț. Ea nu poate doar să cadă, ci și să crească! Apoi este necesar să explicăm: Deci este mai bine să aveți grijă de astfel de lucruri în avans. Cu toate acestea, dacă prețul este mai mult sau mai puțin permanent, vă faceți griji.

ID-ul digital este foarte convenabil pentru a alege numărul articolului din preț. Acest număr, desigur, este unic pentru fiecare produs și avem nevoie de el. Și, în plus - după numărul articolului, este ușor să extragi informații despre un produs dintr-un fișier text cu un preț. Este suficient să citiți întregul fișier într-o matrice:

$ fișier = "preț.txt"; // Apropo, extensia fișierului poate fi oricare
$ as = fișier (fișier $);

Și consultați linia matricei cu indexul dorit:

$ id este identificatorul. de care avem nevoie. Cu toate acestea, prin aplicarea acestei metode, nu putem evita controlul datelor, dar nu este așa de rău.

Împreună cu ID-ul produsului, trebuie să vă amintiți cantitatea de bunuri. În consecință, atunci când primul ordin este introdus numărul 1. Apoi, este de dorit să se ofere posibilitatea de a schimba acest număr în mod arbitrar (în limitele, bineînțeles, cadrul). Pentru a recalcula suma care are nevoie de un buton, dacă este primul după formular - funcționează și apasă tasta Enter. Foarte convenabil - a introdus o nouă cantitate de bunuri și a apăsat Enter pentru recalculare.

Desigur, trebuie să vă gândiți cum să afișați informații despre costul total al comenzii. Nu uitați de reduceri și de cadouri, dacă acestea, desigur, se află în magazinul dvs. online. Este bine să introduceți aici diverse bonusuri și informații despre livrare. Dacă este gratuit - scrieți despre el. Excesul nu va fi.

După cum puteți vedea, comanda poate fi reacționată aproape imediat, imediat ce va sosi. Aceasta sporește încrederea clienților în magazin și afectează pozitiv reputația. Aici, așa cum mi se pare, și de la început până la capăt.

Aș dori foarte mult să nu vă fie frică să se dezvolte în acest domeniu. Sunt multe probleme, dar toate sunt rezolvate, crede-mă. Și, de regulă, este mai ușor să dezvolți un sistem pe cont propriu decât să căutați și să ajustați sistemul altcuiva.

Articole similare