Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [Sklep internetowy] Wasze wymagania
Forum PHP.pl > Inne > Hydepark
wojto
Jako, że temat mojej pracy magisterskiej brzmi: "Implementacja sklepu internetowego opartego o MySQL" wiec potrzebne sa mi wszelkie informacje, wymagania i wasze doświadczenia związane ze sklepami internetowymi.

Poniżej znajduje się moja wstępna charakterystyka sklepu internetowego (ktorego zakonczenie przewidywane jest na II kwartał 2005 roku :shock: ).
Piszcie jakie jeszcze komponenty czy funkcje byście dodali, co jest niepotrzebne, a co należy zmienić, za wszelkie uwagi bede wdzieczny.

wa_shop v. 0.0.1 - dokumentacja

I. Komponenty.
II. Opis komponentow.
III. Rangi.
IV. Dodatkowe wlasciwosci (elementy).

##################################################

:arrow: :arrow: I. Komponenty.

:arrow: 1. rejestracja, logowanie i zarządzanie użytkownikami
:arrow: 2. katalog produktów
:arrow: 3. wyszukiwarka
:arrow: 4. statystyki i logi
:arrow: 5. subskrypcja
:arrow: 6. rotator bannerow i buttonow
:arrow: 7. liczniki
:arrow: 8. formmail, uwagi

##################################################

:arrow: :arrow: II. Opis komponentów.

:arrow: 1. rejestracja, logowanie i zarządzanie użytkownikami
- logowanie oparte na sesjach przechowywanych w bazie danych
- opcja automatycznego logowania, jesli zaznaczono checkbox
- po rejestracji wysyłanie maila, w ktorym trzeba zatwierdzic rejestrację
- panel do logowania w rogu strony, po zalogowaniu zmienia sie na informacje o osobie (nick, ilosc zrobionych zakupow oraz wydanych pieniedzy w sklepie, przycisk wyloguj)
- brak mozliwosci przypomnienia hasla (kodowane md5), ale istnieje mozliwosc wyslania nowego na skrzynke email
- userzy moga zmieniac swoje dane na stronie z profilem (ale nie można zmienic loginu)
- 5 rang, np. guest, user, editor, moderator, administrator (patrz punkt III)
- usuwanie, edycja, bany i zmiana uprawnien uzytkownikow
- wyswietlanie poprzednich tranzakcji usera (moderatorom, adminom oraz samemu userowi, by mogl szybko powrocic do tranzakcji i zamowic wiecej)

:arrow: 2. katalog produktow
- nieograniczona liczba kategorii, podkategorii i produktow
- mozliwosc dolaczenia obrazkow do kategorii i/lub podkategorii
- (pod)kategorie moga byc wylaczane i wlaczane (aktywowane/dezaktywowane)
- stronicowanie produktow w kategoriach, np. po 20 na strone (opcja dostepna do zmiany w panelu administracyjnym)
- mozliwosc sortowania produktow w kategoriach wg wielu kryterii
- produkty oznaczane jako specjalne (ciekawe lub platne oferty) wyswietlane na gorze strony w swoich kategoriach oraz na stronie glownej i/lub wszystkich podstronach
- dodawanie produktow tylko przez editorow lub wyzszych ranga
- mozliwosc dolaczenia zdjecia produktu (lub dwoch)
- mozliwosc drukowania opisu produktu
- wysyłanie oferty do znajomego
- pola przy dodawaniu: id, nazwa, kategoria, ilosc na stanie, cena brutto (obok cena netto automatycznie obliczana), waluta, podatek vat (7%, 16% lub 22%), opis, zdjecie, rozmiar, kolor, data ważnosci oferty, waga, słowa kluczowe, typ ('SPECIALNY','STRONA_GLOWNA','FOOTER','HEADER','EMAIL'), czy aktywny
- koszyk zawierajacy zamowione produkty przez usera (przechowywany w sesji lub w bazie)
- na kazdej stronie jest podawana informacja o stanie koszyka: wartosci zamowienia lub informacja, ze jest pusty a także ilość produktów w koszyku
- mozliwosc usuniecia lub zmiany ilosci produktow w koszyku w kazdej chwili
- zliczanie wejsc na oferte kazdego produktu oraz wejsc na kategorie i podkategorie
- oferty oznaczone przy dodawaniu lub w pozniejszym czasie jako ciekawe pojawiaja sie po kolei lub losowo na kazdej podstronie serwisu, a takze na pierwszych pozycjach w katalogu lub w postaci zoltych boksow (jak na onet.pl)

system platnosci
- platnosci na kilka mozliwych sposobow
-- przekazem pocztowym: skrypt automatycznie tworzy strone do wydruku ze wszystkimi potrzebnymi danymi, ktora uzytkownik musi sobie wydrukowac w domu, podpisac i odeslac poczta na adres podany na wydruku
-- faxem: to co wyzej, tylko uzytkownik musi odeslac podpisana strone faxem na adres podany na wydruku
-- telefonem, umieszcza sie numer telefonu, za pomoca ktorego mozna zadzwonic i zamowic produkt
-- poprzez bank internetowy (mBank, Intelligo)
-- karta kredytowa

:arrow: 3. wyszukiwarka
- przeszukiwanie produktow w wybranej kategorii/podkategorii lub we wszystkich
- kolorowanie wyszukiwanego zwrotu w wynikach
- mozliwosc ustalenia maksymalnej i minimalnej ceny wyszukiwanego produktu
- wyszukiwanie wg kilku kryterii (nazwa, kategoria, kolor, waga, itp.)

:arrow: 4. statystyki i logi
- statystyki: ilosc produktow w sklepie, cena wszystkich produktow
- ilosc uzytkownikow, ilosc sprzedanych produktow lacznie/miesiac/tydzien/dzien

:arrow: 5. subskrypcja
- wysylanie, co dziennie lub co tydzien lub jak jest jakas ciekawa oferta, ofert specjalnych lub specjalnych promocji swiatecznych
- takze wysylane newsy, zmiany, wydarzenia
- w tresci wysylanego emaila, mozna na dole wyslac jakies reklamy reklamodawcow (maslo maslane)
- mozliwosc wysylania emaili w postaci HTML'a z zalacznikami i w takim samym layoucie, jaki sobie uzytkownik wybral

:arrow: 6. rotator bannerow i buttonow
- wyswietlanie bannerow na gorze na kazdej stronie (moze tez na dole stron)
- wyswietlanie buttonow w lewej kolumnie
- statystyki wyswietlen dla administratora i reklamodawcow (dla reklamodawcow tylko ich buttonow i bannerow)
- statystyki w postaci: ilosc wyswietlen, ilosc wejsc, skutecznosc bannera, pozostala ilosc wyswietlen i wejsc, lub data do zakonczenia kampanii
- bannery wyswietlane po kolei lub losowo
- strona z cennikiem banerow i buttonow w zaleznosci od strony, miejsca na stronie oraz ilosci wyswietlen/wejsc/czasu

:arrow: 7. liczniki
- licznik wszystkich wejsc na strone
- licznik wszystkich osob online, licznik uzytkownikow online, z wypisaniem ich nickow
- statystyki refererow i przegladarek

:arrow: 8. formmail, uwagi
- mozliwosc wyslania uwag o dzialaniu sklepu przez userow do admina
- kazda uwaga jest wysylana na adres admina, oraz dodawana do bazy danych
- admin moze przez specjalny formularz odczytywac uwagi z bazy danych

##################################################

:arrow: :arrow: III. Rangi.

:arrow: 0. guest (uzytkownik niezalogowany)
- moze tylko przegladac sklep
- podczas pierwszej proby zamowienia produktu proszony jest o zalogowanie, po poprawnym zalogowaniu produkt jest dodawany do jego koszyka
- lub mozliwosc zamawiania bez koniecznosci rejestracji, opcja do wylaczenia w panelu admina

:arrow: 1. user (uzytkownik zalogowany) to co guest plus:
- mozliwosc zakupu produktow w sklepie
- mozliwosc otrzymywania subskrypcji

:arrow: 2. editor (uzytkownik specjalny) to co guest user:
- mozliwosc dodawania produktow do sklepu (produkty czekaja na zatwierdzenie przez moderatora)

:arrow: 3. mod (uzytkownik specjalny, moderator) to co editor plus:
- zatwierdzanie do bazy produktow dodanych przez editora
- czynienie niektorych ofert ofertami specjalnymi
- mozliwosc zmiany lub usuniecia dowolnego produktu lub kategorii

:arrow: 4. admin (uzytkownik specjalny, administrator) to co mod plus:
- zmiana danych uzytkownikow i ich usuwanie
- ustalanie w panelu ile ma byc ofert w kategoriach na stronie (np. 20 i potem stronicowanie) oraz innych opcji konfiguracyjnych, domyslnego formaty daty, domyslnej skory i jezyka
- tworzy backup bazy do pliku, lub przywraca kopie z pliku
- wysylanie subskrypcji
- administracja bannerami i buttonami

##################################################

:arrow: :arrow: IV. Dodatkowe wlasciwosci (elementy).

- strona przystosowana do roznych przegladarek internetowych (IE, Netscape, Opera, itp.)
- obsluga skinow (skorek) (klasa Template z phpBB2) dzieki czemu kazdy uzytkownik bedzie mogl sobie wybrac wyglad sklepu
- rozne wersje jezykowe, mozliwosc dodania jezykow poprze dodanie pliku jezykowego (lub poprzez specjalny panel/formularz administratora), kazdy user moze wybrac swoj jezyk sklepu
- obsługa wielu walut (automatyczne polaczenie z oanda.com i sprawdzenie aktualnej stawki waluty wzgledem dolara) i jednostek, np. rozmiary w cm, calach itp.
- wszelkie nazwy plikow i zmiennych beda po angielsku
- wlasne ustawienia dla kazdego usera (np. ilosc ofert na strone w kategoriach, skorka, jezyk, itp.), format daty
- ewentualnie udostępnianie informacji w postaci XML'a
- zabezpieczenia w java script nakazujace wypelnic jakies dane lub pola
- zautomatyzowana instalacja i deinstalacja
- proces instalacji z mozliwoscia przeslania tylko dwoch plikow (install.php i drugiego spakowanego), ktory instalator sam rozpakuje do odpowiednich folderow i nada odpowiednie prawa, oraz odpowiednio zmodyfikuje dane (np. dane do polaczenia z mysql'em)
- obsluga bledow zapytan mysql (specjalna klasa)
- klient sql (mozliwosc wydania polecenia sql poprzez formularz na stronie)
- wyswietlanie czasu wykonywania strony oraz ilosc zapytan mysql
- strona z info o sklepie, autorze, licencji, historia, polityka prywatności, kontakt, itp.
- obszerna dokumentacja
:?: - specjalne programy partnerskie: strony z ktorych weszly osoby, za posrednictwem specjalnych linkow, i dokonaly zakupu jakiegos towaru, to ta spolka partnerska dostaje ilestam procent od zysku z produktu (5-10%)
- integracja z pasażami handlowymi
:?: - możliwość potwierdzania zamówień SMS-ami
:?: - uzytkownicy zbieraja punkty za kazdy produkt, im drozszy produkt, tym wiecej punktow. Punkty te moga po uzbieraniu jakiejs wiekszej ilosci wymienic na nagrody z jakiejs listy przedmiotow
:?: - jesli by bylo pole przy rejestracji na podanie odleglosci od siedziby sklepu, to mozna by bylo od razu obliczac koszt przesylki (z uwzglednieniem odleglosci)
- drukowanie (przugotowanie kartki do wydruku) paragonu zakupionego towaru, lub informacji o zakupie
- edytor plikow, admin moze w specjalnym edytorze otworzyc kazdy plik, zmodyfikowac go i ponownie zapisac
- mozliwosc zamkniecia sklepu, tak, ze wszyscy widza strone z informacja o zamknieciu, a tylko administrator moze swobodnie sie poruszac po stronie i zmieniac oraz ja testowac
- mozliwosc przegladania ofert: oczekujacych, zatwierdzonych, zrealizowanych i odrzuconych
- lista produktow, ktorych jest malo na stanie
- informowanie klienta emailem o problemach w zrealizowaniu jego zamowienia lub o zrealizowaniu zamowienia
- system pomocy, oraz faq z najczesciej zadawanymi pytaniami

:idea: Ufff... jesli dotarles przez te wypociny az do tego miejsca, to gratuluje, i mam do Ciebie pytanie:
Co dodać, usunąć, zmienić? Wszelkie opinie mile widziane biggrin.gif

ps. jezeli to zly dzial, to niech jakis mod temat przeniesie
scanner
- Szablony: lepsze Smarty
- Rangi: definiowane przez administratora sklepu
- Sekcje sklepu (np. magazyn, obsluga zamowien, BOK)
- Uprawnienia rang (dostep do sekcji): definiowane przez administratora
- https://
- Pola przy dodawaniu: podatekmusi byc edytowalny. jesli komus snie znudzi 7% i da 8%, trzeba moc to wyedytowac
- Koszyk pamietany w bazie ( sklep.komputronik.pl )
- "W raz z tym produktem, kupiono takze:"
- Subskrypcja: moze RSS ? http://blogs.law.harvard.edu/tech/rss
wojto
Cytat
- Szablony: lepsze Smarty

wole ta klase z phpbb, wiem, ze smarty sa moze i lepsze, ale ktos, kto sie nie zna na php wg mnie nie poradzil by sobie ze smartami
Cytat
- https://
- Subskrypcja: moze RSS ?http://blogs.law.harvard.edu/tech/rss
- hmmm... a co to da, bo nie mam szczerze powiem, ze nie mam pojecia
- reszte uwag uwzglednie w projekcie, thx, prosze o wiecej uwag
scanner
https: Połaczenie szyfrowane. Zabebzpieczenie dla transakcji kartami, przesyłaniem haseł itp

RSS: po co wysyłac klientowi maila, jak klient sam może sopbie pociagnąć plik rss generowany dynamicznie raz na dzien powiedzmy?
Sh4dow
Co do statystyk to moze jeszcze, jakie kategorie/produkty sa najczesciej przegladane/kupowane, przydatne przy zalozeniach marketingowych.
scanner
+ przegląd (wykres) cen każdego produktu w powiedzmy ostatnim miesiącu.
AcidBurnt
nie propocnuje uzywac smarty... sa strasznie mułowate długo sie generuja.. a co do kodu z phpbb to polecam bardzo latwy w uzyciu i wogle, ja korzystam z pliczku do boslugi mysql z phpbb smile.gif

pozdro..

p.s. a do pracy magisterskiej nie lepiej jest napisac wlasne templatesy?
spenalzo
Przeniosłem.
enceladus
Uwagi z własnego doświadczenia:
- jeśli piszesz sklep w php i ma być dobrze dociążony (mogę powiedzieć że sklep o którym tu już pisano ma 5Mbit ciągłego ruchu) musisz zapomnieć o pewnych 'wypasionych' funkcjonalnościach - zajeździ Ci to bazę, jeśli ma być to mały sklepik to nie musisz się martwić o bazę - z pewnością przetrwa.
- dobrze przemyśl cache - co warto cache-ować - czy czyste dane. czy też kawałki strony - ja ostatnio przekonuję się do cachowania danych pobranych z bazy i 'obrobionych' - takie dane trzymam w mmcache-u, skąd w pierwszej kolejności pobierane są do wyświetlenia, np przez engine z templata'mi. Ponad to mmcache znakomicie poprawi działanie np. smarty.
- nie warto integrować funkcjonalności sklepu z administracją - niech to będą 2 oddzielne systemy o zupełnie innym dostępie - dzięki temu sklep jako interfejs dla klienta ma uprawnienia w bazie np tylko select na definicjach produktów, insert na zamówieniach. Z kolei inny user w DB z prawami któego pracuje interfejs administracyjny może modyfikować produkty, kasować je itd. Unikniesz sytuacji, gdy przypadkowo zwykłemu klientowi zostaną nadane zbyt duże uprawnienia. Zakładając że pojawi się np. błąd w skryptach który pozwoli intruzowi wykonywać swoje SQL-e, nie będzie on w stanie zrobić UPDATE na produktach i zmienić ich cen (o kasowaniu opisów produktów nie wsponę)
- pomyśl o tym czy w ogóle warto robić początkowe pewne funkcjonalności takie jak np. wersje językowe - nakład pracy może być spory, a funkcjonalność dla userów - raczej teoretyczna snitch.gif no chyba że nastawiasz się na rynek międzynarodowy..... snitch.gif

Za chwilę dopiszę jeszcze kilka uwag, ale teraz muszę wyjść.
---
ciąg dalszy po przerwie:
- optymalizując sklep skup się nad prezentacją produktów i kategorii - ta operacja występuje najczęście można powiedzieć, że przy tych 2-ch 'zjawiskach' cała reszta jest raczej śladowa.
- opisy produktów - tu jest duże pole do popisu, sam tekst i sztywne pola w bazie danych to zbyt mało. Z doświadczenia - lepiej stworzyć system w którym definiując produkt określa się typ danych do którego on przynależy. Z kolei taki typ danych musi być definiowany przez operatora sklepu i w ramach tego typu trzeba określić pola wchodzące w opis typu danych. To samo dotyczy wariantowości produktu: produkt może być sprzedawany w wariantach (np. kolorystycznych), z których każdy może mieć inną cenę...

Hmm może jeszcze coś wymyślę smile.gif
michaloo
nie przeczytałem wszystkiego ale "przelatując" to nie znalazlem w twoich zalozeniach mozliwosci dodawania komentarzy uzytkownikow do danych produktow (od strony quest'a jest wazne poznac opinie innych i dodac wlasne)

jezeli to juz bylo to przepraszam bardzo.... :oops:
orson
witam ...

przemysl dodanie jeszcze jednej grupy userow ... user zweryfikowany [ po 1,2,3 udanych transakcjach lub przez list tak jak na allegro.pl] takiemu userowi moze przyslugiwac np. szybsze wysylanie [zanim kasa dotrze na konto np.] ...

cya
enceladus
Cytat
witam ...
przemysl dodanie jeszcze jednej grupy userow ... user zweryfikowany [ po 1,2,3 udanych transakcjach lub przez list tak jak na allegro.pl] takiemu userowi moze przyslugiwac np. szybsze wysylanie [zanim kasa dotrze na konto np.] ...


zbyt duże ryzyko, takie rzeczy to można robić między firmami - np. linia kredytowa.. oddzielna umowa. Nie znam sklepu który na coś takie się zdecydował - niektóre nie decydują się nawet na płatności kartą bo obsługa tego zabiera w PL za dużo kasy (np. komputronik.pl). Myślę, że płatności typu przelew/przedpłata i przy odbiorze w zupełności wystarczają w naszym kraju. To strona formalna, technicznie zaś warto płatności zrobić w sposób modularny. Wtedy przyszłe dodawanie nowych płatności nie będzie problemem.
kasa80
poczytaj na www.sote.pl - jest bardzo rozbudowany ale i tak jest jeszcze duzo do poprawy (wiem bo go używam smile.gif , m.in. musialem napisac swoj panel do zarządzania transakcjami)

http://sklep.teleoffice.pl
squid
Cytat(AcidBurnt @ 2003-12-28 13:00:26)
nie propocnuje uzywac smarty... sa strasznie mułowate długo sie generuja..

wrecz przeciwnie smarty jest bardzo szybkie co potwierdzaja testy przeprowadzone w jednym z numerow "Software 2.0 Extra!". smarty zdecydowanie wygralo i powiekszylo swoja przewage gdy prezy wlaczonym cachowaniu
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.