Cytat(derka @ 19.09.2011, 19:35:39 )

Piszę sobie sklep internetowy. Nie mam problemów w kwestiach technicznych, w merytorycznych już tak.
Wyobraźmy sobie, że klient dodał produkt do koszyka, a potem administrator zmienił cenę tego produktu. Sytuacja, w której zmieniłaby się cena w koszyku wydaje mi się nie do zaakceptowania. Widzę dwie możliwości: albo informować o zmianie ceny, albo pozostawić starą cenę w koszyku. Ta druga wydaje mi się lepsza, pytanie tylko po jakim czasie czyścić taki koszyk (żeby nie było sytuacji, że ktoś po 2 tygodniach dalej ma w koszyku produkt w starej cenie:D ).
Amazon w takich przypadkach z tego co pamiętam informuje o zmianie ceny i zmienia cenę w koszyku. Nie do zaakceptowania to jest zmiana ceny w złożonym zamówieniu. W koszyku jest raczej ok i nawet pożądane, np. koniec promocji na jakiś produkt. Jeśli idzie o długość życia koszyka to najlepiej zrób to konfigurowalne - różne sklepy mają różne wymagania wobec tego. Osobiście wolę, jak koszyk nie znika mi po wylogowaniu, ale spotkałem klienta, który kazał ograniczyć żywtoność koszyka do jednej sesji.
Cytat(derka @ 19.09.2011, 19:35:39 )

Kolejna rzecz: klient przeszedł do formularza zamówienia. W czasie kiedy go wypełniał administrator zmienił stan magazynowy, albo ktoś inny kupił produkt, który jest w koszyku naszego klienta. Chodzi o to, że ilość jaką wrzucił do koszyka jest już niedostępna (a być może produkt został nawet usunięty). Co teraz? Wyświetlać informację, że stan magazynowy uległ zmianie? A może przy przechodzeniu do formularza zamówienia zmieniać stan magazynowy produktu o zamawianą ilość powiedzmy na 10 minut. Po 10 minutach formularz stawałby się nieaktywny, a stan produktu wracał do starej wartości.
Raczej wyświetlić informację, możesz pozwolić klientowi zadecydować, co chce w takim razie zrobić z takim zamówieniem. Raczej nie blokuj możliwości składania zamówienia. Blokowanie na zaś może być zgubne, w ten sposób łatwo możnaby wykończyć sklep konkurencji - piszę sobie skrypt, który ciągle składa zamówienia czy tam kompletuje koszyki i nigdy tam nic by nie można było kupić. Moment, w którym jest zasób rezerwowany/zdejmowany z magazynu to chyba trzebaby ustalić z klientem. Ew. możesz to zrobić konfigurowywalne.
Cytat(derka @ 19.09.2011, 19:35:39 )

Pytanie kieruję głównie do osób, które pisały już sklep internetowy. Jak rozwiązaliście te kwestie. Być może ktoś wie jak wygląda to w darmowych rozwiązaniach? Ja sprawdziłem na razie Open Cart.
Takie rzeczy to się raczej konsultuje już z konkretnym klientem/sklepem, bo ci różne procesy realizują po swojemu. Ale chyba piszesz sklep dla siebie, więc tak zrobić nie możesz. Zamiast patrzeć na takie Open Cart, to patrz jak co jest zrobione w najpopularniejszych sklepach: merlin, empik, amazon itd. Oprócz tego możesz poszukać wyników badań użyteczności związanych z ecommerce itd. No i wydaje mi się, że jest kilka lepszych darmowych rozwiązań niż open cart, np. magento, może prestashop. Tylko zwróć uwagę, że często to były rzeczy tworzone przez programistów;) a to rzadko jest dobry wzór do naśladowania, jeśli idzie o użyteczność i słuszność rozwiąząń. Z drugiej strony patrząc na prawdziwe sklepy trzeba wziąć poprawkę na to, że one również nie są doskonałe, i że czasem to, jak coś jest w nich zrobione, to jakiś przymus, skutek tego, że nie było czasu na poprawienie danej funkcjonalności:)