ПредишенСледващото

Как да направите онлайн магазин?

Преди да се пристъпи към темата, която, бих искал да се стигне до общ знаменател (въпреки че може би това е трябвало да бъде направено в края?). Софтуер решение, предложено тук не е идеален, а само правото. В един свят на много малко перфектен :-) Така че нека се съгласявате да не се спирам на такива неща като избора на език за програмиране, стил на програмата, начини за решаване на проблемите. Всичко това може да бъде дълъг и ревностно обсъждат, но целта ми да видя малко по-различна - да се даде на всички заинтересовани лица, минималната информация за създаването на своя собствена онлайн магазин, без сложни софтуерни и хардуерни решения. И най-важното - без значителни финансови разходи, които често играе решаваща роля.

Направете проста (няма да считаме, комплексни решения) себе си онлайн магазин, странно, е много проста. И не се учудвайте - реализацията на подобен проект, дори и начинаещ програмист има такива, запознати с Интернет технологиите. Надявам се, че можете да го видите за себе си. А малко по-сложно, за да разбера как да връзвам собствения си магазин (тук и по-нататък, трябва да се разбира, разбира се, в интернет магазина) за специфични стоки. Е, ето един пример. Има набор от канцеларски материали. Размерът на 1000 къса. цени цена и информация за продукта се актуализира почти всеки ден, а не просто да се обновяват, а понякога коренно променени! А промяната е не само цената, която не е толкова лошо, но също така и видовете стоки, описания, гаранции и доставка и т.н. Опитайте се да направите всички тези данни във вашия магазин всеки ден, а просто трябва уважение към хората, които правят този вид работа :-) Ето данните за обновление в магазина и заема по-голямата част от действителната самата програма. Това е, което трябва да се помисли първо.

Преди да започнете вашия магазин, трябва внимателно да се проучи цената на стоките и средства за актуализирането му в оригинал. Да вземем за пример, дойде при някои конвенции. Има една компания, в която границите на компютърни продукти. Стига с тях, така че няма да се занимават с ръчно актуализиране, и излезе с тяхната собствена система за синхронизация на данни и съхранение на определена цена. Нека цената да бъде в нашия Excel-е. Това обикновено не е така, много компании използват специализираните програми, като например 1C, но такива моменти не са от основно значение, тъй като тя винаги е възможно да импортирате данни от тези пакети в Excel. Брой секции в цената и стоки, които не са фиксирани, а цената е набор от редове и колони. Във всеки ред - или раздел име точка на цена (например - процесор, памет, мишка, и т.н.). Броят колони няма значение, стандартът може да присъства на цените, име, описание на продукта. Въпреки това, може да има и други опции. Ето списъка на цените и описанието на обикновеното, с които може да срещнете.

Какво и как можете да използвате с тези данни? Разбира се, можете да приложите специални модули за извличане на данни от файлов формат Excel (те съществуват в различни версии за различни езици), но тези модули обикновено не са свободни, и поради това не са приемливи за нас. Също така - винаги определяне на проблема. Понякога това ще направи, че е необходимо да притежава такава квалификация, по-лесно е да се напише всичко от нулата :-) Въпреки това, тези модули не се нуждаят от наистина. Каква е нашата цена? Правилно, набор от редове и колони, и строго синхронизирани помежду си. Така че, на тези редове и колони, може да се изгради в текстов файл с точно една и съща структура. Само вместо визуалната разделянето на редове и колони (в Excel-д), е необходимо да се използват каквито и да било знаци. Разбира се, в този случай, визуална синхронизация се губи, тъй като дълги линии са винаги различни, но това не е от значение, тъй като вътрешната структура ще останат същите. Всичко ще бъде един и същи ред и колона, но този път в текстов формат. Но този формат е много лесно да се чете и обработва почти всеки език за програмиране.

Ако ние говорим за примерите и условно, нека сега ще определи нашите примери на какъв език за програмиране. Очевиден избор за мен, защото магазина ми, аз го написах в PHP. Това е прост (и в същото време е достатъчно мощен) скриптов език за програмиране, който осигурява всички необходими инструменти за осъществяване на онлайн магазина (и не само него, между другото). Така че нека да е PHP. Но не забравяйте, че винаги можете да лесно да прехвърляте алгоритъм на всяка друга платформа. Само с PHP е по-лесно по някакъв начин.

Обратно към нашата ценова листа. Excel, как знаем, може да спаси своите файлове в различни формати. Ние сме заинтересовани в момента е един - текстов файл с табулатори. По принцип, разделители не са важни, можете да съхраните във формат, ограничена от запетаи или интервали. Използвайте този, който като най-добре. Ние се фокусираме върху раздел.

И това е, което ние имаме в продукцията на: файл * .txt, линии, разделени с връщане (проста Enter), колони, разделени от разделите. Всичко на вътрешната структура на ценовата листа е останала същата, тъй като покрит майстор Excel спаси. Е, това е по-добре :-)

Така че ние намерихме начин да не го правят рутинна работа по актуални за деня цена в нашия онлайн магазин, колкото е възможно да се автоматизира този процес. Преди да започнете работа с получения файл, че ще ти хареса малко свиване или процес. Това е необходимо, за да може да се отстранят излишните колони, множество пространства, временно изчерпано продукти и т.н. За да направите това, прочетете файла в масив за обработка на всяка линия за наличие на ненужна информация, моля, напиши резултата обратно към масива на същото място, и най-накрая - за цялата решетка да пише във файл. Приблизително толкова. Но тя трябва да се основава на специфичната нужда от такива операции, е възможно просто да се премахнат дублиращите пространства.

Когато всичко е готово, то е време да започнете алгоритъм за вземане на проби данни на нашия текстов файл с ценовата листа. Както сте се надяваме измисли това не е сложно. Прочетете статията в масив:

$ File = "price.txt";
$ Товар = файл ($ файл);

Още веднъж, примерите, дадени във формат PHP език. Освен това е необходимо да се отнасяме масив от $ Товар [] в течение със сключването на резултатите на екрана:

$ I = 0; // брояч започва от нула
а ($ Повтарям $ Товар [$ аз]; // отпечатва низ на екрана
ехо "
"; // не забравяйте за превода струни $ аз ++; // завърши цикълът
endwhile;

Така че, ние трябва да се отдели част от цената на информацията за продукта. Това може да стане, ако ние се обърне внимание на това, което излиза от заглавието на раздела говорители. Като правило, същото като името на продукта. Но - в съответствие с име раздел няма информация за цената на стоките, и това е един добър отличителен белег за програмата. Достатъчно всеки път да се наблюдава присъствието на избрания ред цена колоната. Когато е празен - в раздел заглавие линия, и това може да се покаже - ако не е стока, просто пропуснете тази линия, ако трябва да се извежда само заглавията раздел. От друга страна, за да отпечатате само стоките.

Сега за това как да споделят информацията в избрания ред на колони. Отделете всяка колона променлива. Ако колоните в цената на пет, а променливите, необходими за да си запазят пет, също. За да се избегне объркване, да вземе подобни имена: $ N_1, $ н _2, $ n_3, $ n_4, $ н _5. Сега, ако желания ред в масива е $ Товар [$ Ь]. достатъчно е да се приложи такава структура:

списък ($ N_1, $ n_2, $ n_3, $ n_4, $ n_5) = разделяне ( "\ т", $ Товар [$ Ь]);

и ако колоната се отделя от раздела, те разпределени в променлива всеки. Ако използвате друг сепаратор колона, трябва да го регистрирате вместо \ т. Сега е лесно да се провери наличието на цените, както и вид и формат на цените на данни списъка, ако е необходимо.

Ето ви и готово решение за това просто би се посочват цената на поделенията на екрана. Но това не е достатъчно за пълноправен онлайн магазин, тъй като предполага възможността да се поръча на избраните стоки.

Стигнахме до една много интересна тема - виртуална пазарска количка. Няма съмнение, че на толкова много сайтове, които се опитаха да поръчате стоки изложени там, и цялата работа на кошницата е изпълнена по различни начини. Каква трябва да бъде стандарт посетителя от онлайн магазин? Точно така, купуват стоката. И той отнема? Лесна навигация, лесен и бърз достъп до продукти, способността да се променя броя на един вид стоки в кошницата, способността да премахнете елемент от кошчето, информацията за позиция (данни, настройки, фотография, и най-накрая - цената). Това е - един необходим минимум - увеличаване на наличните функции окаже негативен ефект върху скоростта и значително усложнява програмата. Но - повече от достатъчно за нас.

И ние няма да се спре пред предната част, защото тя основно не променя нищо. И все пак, не може да се измъкне от бисквитката: Ами, може да чуете много гласове :-) не много добри отзиви, като "Отново, както и ние, след като си помислих:". Да, и да! Нека да се опитаме да дадем редица аргументи за използването на тази технология, и да решите за себе си - аз съм прав или не.

За да направите това, трябва да се помисли за предимствата и недостатъците на няколко конкуриращи се технологии. Какво може да се противопостави на бисквитка? От това, което е по-лесно - Java скрипт и сесия. Нека да разгледаме всичките три в ред.

Cookie - малък файл, написан на вашия компютър сървър. Всички браузъри поддържат работа с тях, а повярвайте ми - тази технология повече ограничения, отколкото възможности. Например, не може да бъде написано на един бисквитка повече от 4 килобайта на данни, не може да се отнася за някой друг бисквитка, само за да му (създаден от вашия сървър), не можете да зададете бисквитка, където или на друго място, освен в определеното от потребителя. Невъзможно е невъзможно, невъзможно: Разбира се, всичко това е при условие, че следят за безопасността на собствения си компютър и да инсталирате най-напредналите софтуер. Между другото, почти всички браузъри по подразбиране бисквитките са активирани, и ако сте били в състояние да ги изключите - и могат да се обърнат. Можете да направите това в настройките на програмата браузър. Много голям брой сайтове използва в работата си бисквитка, а някои от тях просто няма да ви позволи да се без включването на тяхната подкрепа в браузъра. Добър или лош - това е. Има специални програми - защитни стени, прихващане на бисквитка или да откаже достъп до обекта, така че изборът все още е оставено на посетителя. Но - компютър средностатистическият потребител не деактивира бисквитката, и за напреднали състояние да напише предупреждение на сайта.

Следваща - Java Script. Тази технология също е често срещано явление, но. Има версии на популярните браузъри, които не поддържат Java Script работа. Например - версия на Opera. Все пак, това не е недостатък, който бих искал да подчертая. Java Script от страна на клиента технология, което означава, че текстът на програмата - скриптът трябва да бъдат прехвърлени към браузъра. Сама по себе си - увеличаване на времето за зареждане и забави програмата, са гарантирани. А плюс тук по-взискателни на компютърни ресурси, както и ние се експлозивна смес. Но неговият клиент трябва да се уважава и дори малко любов - как той ни плащат за нашата работа. Така че, защо да усложни пътя си към сайта? Въпреки това, има тук и достойнство - ако сървърът не поддържа програмирането на една страна, тя остава само да се възползва от Java Script.

Сесия. А много ефективен механизъм, вграден в много съвременни езици за програмиране. Има, например, версия 4.0 и по-горе в PHP. Тя ви позволява да прехвърляте променливи от един прозорец на браузъра към друг, без загуба и без метод трансфер POST или GET. Това е на пръстите на ръцете. В действителност - той използва в работата си уникален идентификатор, който се съхранява в бисквитка на едни и същи, така че това, което е ново, по принцип няма нищо, освен че повишава използваемостта: Ако само знае как да го използва :-) Разбира се - изисква подкрепа бисквитка на вашия браузър ,

Тук те са конкуренти. В действителност - изборът е между две: бисквитка или Java Script. Вторият е да се избере само ако вашият домакин не поддържа от страна на сървъра програмиране във всеки от езиците. Това е - почти всички безплатен хостинг услуга. И на земята трябва да се вселява във всички останали случаи, когато е налице възможност да се даде по-голямата част от работата на сървъра на обработка. Въпреки това, си Java Script също ще работи с бисквитка, в противен случай късо подстригана толкова неуместно връзка с интернет ще лиши посетителят едва пъхна в кошницата. Вторият път, когато той (магазин посетители) и това не може да се направи. Ако използвате бисквитка - всичко кошница остава непокътнат, както е писано на клиентския компютър. Както можете да видите, кръгът е затворен, не ни пука от тях не може да се измъкне :-) Така че - решението за избор на технология зависи от хостинг възможности.

Ние, като прогресивна програмисти да се съсредоточат върху бисквитка. Особено, защото имаме PHP и е много лесен за инсталиране, премахване и четат бисквитки. На практика това ще изглежда така:

Това е всичко, което ние трябва да се работи с ужасен бисквитка.

След като технологията е избрана - нека да го приложат на практика! Цена от нас, ако си спомняте, се съхранява в текстов файл. извадкова единица данни там. Остава да реши какво точно да се съхранява в бисквитка. Възможно е - цялата информация за даден продукт и може да бъде само цифров идентификатор и количество. Конкретният избор да се направи въз основа на действителните условия. Според принципа - това е по-лесно. Само трябва да помним, че числов идентификатор не отнема много място в паметта, но той е по-голяма караница по отношение на програмирането. Ще трябва да се направи блок съвпадение ID и проба на информация от цената файл. След това има още една точка. Ако цената често, съответно, в информацията за пазарска количка бързо овехтяват и не отговарят на действителността. Така че ние трябва да мислим за датата на контрол. Датата, когато посетителят добавен продукт в кошницата, ще трябва да се съхранява в бисквитка, защото никъде другаде. Ако датите са много различни - това е необходимо, за да предупреди купувача за несъответствието. В противен случай, може да се случи, жалко инциденти. Разочароващо, когато поръчката се възлага на цена от миналата седмица. Тя не само не падат, но и да увеличи! След това трябва да се обясни: Така че по-добре да се грижи за тези неща предварително. Въпреки че, ако цената е повече или по-постоянно притеснение на разходите.

Цифров идентификатор е много удобно, за да изберете номера на елемент в цената. Това число, разбира се, уникален за всеки продукт, и ние искаме. А освен това - от позиция е лесно да се извлече информация за продукта от текстов файл с ценовата листа. Достатъчно е да се помисли за целия файл в масив:

$ File = "price.txt"; // Между другото, разширението на файла може да бъде всичко
$ Както = файл ($ файл);

И се отнасят до реда на масива с желания индекс:

$ Id - ID. ние се нуждаем. Въпреки това, използването на този метод, не можем да се избегне датата на контрол, но това не е толкова лошо.

Заедно с идентификатора на продукта, е необходимо да се помни и количество. Съответно, в първия ред, въведете номер 1. След това е желателно да се допусне (ограничен, разбира се, на рамката), за да промените броя. За да се преизчисли размера на необходимата бутон, ако е след първата форма - работа и натиснете клавиша Enter. Много удобно - въвежда нов количество и натиснете Enter, за да конвертирате.

Разбира се, трябва да се мисли за това как точно да се покаже информация за общата стойност на поръчката. Не забравяйте за отстъпки и подаръци, ако те са, разбира се, има и в онлайн магазина. Добър добре тук различни бонуси и информация корабоплаването. Ако това е безплатно - пиша за това. Няма да е излишно.

Както можете да видите, в реда, че е възможно да се отговори почти веднага, веднага след като onpostupit. Това повишава доверието на клиентите да пазаруват и да окаже положително въздействие върху репутацията. Тук, струва ми се, и всичко, за да започнем с това.

Бих искал да не желаят да се страхуват от собствените си да се занимава с развитието в тази област. Все още има много проблеми, но те могат да бъдат решени, повярвай ми. И, като правило - по-лесно е да се разработи своя собствена система, отколкото да се намери и да персонализирате техните.

Свързани статии

Подкрепете проекта - споделете линка, благодаря!