Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php][mysql] odejmowanie ilości produktów po zakupie
Forum PHP.pl > Forum > Przedszkole
webspy
Witam,


W tabeli mam zawarte produkty i ich ilość, i chciałbym zrobić aby po zakupie odejmowało jedną sztukę z bazy - OK (ilosc = ilosc-1)

Problem tkwi w jaki sposób i gdzie ten kod odejmowania ustawić:
a. po wybraniu produktu, przed wypełnieniem formularza zakupu?
b. po wypełnieniu formularza, przed naciśnięciem zapłać?
c. po prawidłowym przelewie na konto?

c - po prawidłowym przelewie na konto byłoby najlepiej tylko, że w tym czasie ktoś inny będzie chciał kupić tą samą (ostatnią) sztukę produktu i będzie ona dostępna.

Jak można to najlepiej rozwiązać?
Andrzej.W.
A może w momencie wybrania produktu i zależnie od wyniku transakcji, albo pozostawić w "mocy" to działanie, albo, gdy klient się rozmyśli, dodać ją spowrotem.
gitbejbe
tak pierwsze co mi wpadło do głowy:

odejmowanie produktu oczywiście zaraz po prawidłowym zaakceptowaniu zamówienia, niezależnie czy kasa została przelana czy nie.
Taki produkt po odjęciu trafiałby np do tabeli o nazwie np. "realizowane_zamówienia" gdzie spokojnie by sobie czekał aż dojdzie kasa. To byłby równie dobry pomysł z uwagi na to, że tą tabele mógłbyś traktować jako spis wszystkich zamówień, którymi mógłbyś sobie zarządzać. Jeśli jednak produkt nie został opłacony, to wchodzisz w tą tableę(np przez jakiś autorski skrypt) i każesz usunąć ten produkt z tej tabeli, jednocześnie zwiększać ilośc o 1 tego produktu na stronie z ofertą.

W takim rozwiązaniu możliwości jest sporo. Możesz np napisać skrypt, który będzie Ci codziennie sprawdzał z tabeli "realizowane_zamówienia", czy jakiś produkt czeka już w niej dłużej niż np 2 tygodnie i informuje Cie o tym albo automatycznie anuluje zamówienie i wysyła maila do klienta z informacją.

W każdym razie, odejmowanie produktu tylko i wyłącznie po dokonaniu zakupu.
webspy
Myślę, że jednak dobrym rozwiązaniem będzie odejmowanie produktu tylko po prawidłowym dokonaniu przelewu, jednak kiedy potwierdzenie przelewu jest weryfikowane dopiero po np. 30 minutach to w tym czasie już może ktoś dokonać zakupu.

To rozwiązanie z tą drugą tabelą też jest dobre lecz klient może tylko zakupić przedmiot lecz nie dokonać przelewu i w czasie kiedy ja czy automat po tych 2 tyg przywróci produkt inny klient mógłby kupić lecz jest ograniczony ilością produktu czy jego brakiem.

Produkt jest w ograniczonej ilości i nie chciałbym aby przekroczyć jego limit.

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.