Ograniczenie ilości produktów do sprzedania

~majster

No avatar

2006-07-23 22:55

Witam was obywatele !
Zamierzam sprzedawać pojedyncze egzemplarze w moim jakze cudownym malym sklepiku . Jak zrobic by przedmiot mogl byc sprzedany raz ( ktos kupuje i znika ze strony , nie podaje sie ilosci przedmiotow zamawianych )


pozdrawiam

treewood (OpenSolution)

Avatar: treewood

2006-07-24 08:30

majster - po zlozeniu zamowienia produkt staje sie niewidoczny. dokumentacja bedzie ci przydatna. przypatrz sie glownie funkcjom saveProduct() i listBasket(). Po zlozeniu zamowienia wylistuj koszyk i w czasie listowania zmien status majac na wzor powyzsze funkcje.
http://opensolution.org/Quick.Cart/docs/

jesli nie czujesz sie na silach mozemy to takze wykonac. kontakt e-mail do nas masz na gorze

ROKO

No avatar

2006-10-02 21:14

ja poradzilem sobie inaczej i mnie to rozwiazanie zadowala :)

mianowicie pozbylem sie pola tekstowego w ktorym mozna bylo wpisywac ilosc produktow - teraz klient nie ma wplywu na zamawianie wiekszej ilosci niz 1

takie rozwiazanie ma jeden minus - sammusze pilnowac zeby zdjac ze sklepu sprzedany towar, ale nie jest to wielka uciazliwosc

nalezy niewielkie zmiany wprowadzic w 2 plikach (przedstawiam fragmenty plikow zet zmianami):

PRODUCT_MORE.TPL
----------------------------------------- fragment pliku ---------------------
<fieldset>
<input type="hidden" name="p" value="ordersBasket" />
<input type="hidden" name="sOption" value="add" />
<input type="hidden" name="iProduct" value="$aData[iProduct]" />
<!-- $lang[Quantity]: 1
<input type="text" name="iQuantity" value="1" maxlength="3" size="2" />
-->
<br />
<input type="submit" value="$lang[Add_to_basket]" class="submit" />
</fieldset>

------------------------------- drugi plik -----------------------

ORDERS_BASKET.TPL
-----------------------------------------------
<!-- BEGIN LIST_LIST -->
<tr>
<td>
<a href="?p=productsMore&amp;iProduct=$aList[iProduct]">$aList[sProduct]</a>
</td>
<td>
$aList[fPrice]
</td>
<td>
$aList[iQuantity]
<!-- <fieldset><input type="text" name="aElements[$aList[iElement]]" value="$aList[iQuantity]" maxlength="3" size="2" /></fieldset>
-->
</td>
<td>
$aList[fSummary]
</td>
<td>
<a href="?p=$p&amp;sOption=del&amp;iElement=$aList[iElement]">$lang[Delete]</ a>
</td>
</tr>
<!-- END LIST_LIST -->
----------------------------- oraz dalej w tym samym pliku -------------------------------
<!-- BEGIN LIST_FOOTER -->
<tr>
<th colspan="3">
$lang[Summary_basket]
</th>
<th>
$aList[fSummary]
</th>
<th>&nbsp;

</th>
</tr>
<tr class="tfoot">
<td colspan="3">
<!-- <fieldset><input type="submit" value="$lang[Calc]" class="submit" /></fieldset>
-->
</td>
<td colspan="2">
<fieldset><input type="submit" name="sSave" value="$lang[Next] &raquo;" class="submit" /></fieldset>
</td>
</tr>
</table>
</fieldset>
</form>
<div id="back">&laquo; <a href="javascript:history.back();">$lang[back]</a></div>
</div>
<!-- END LIST_FOOTER -->


-------------------- i to wszystko ----------------

wiem ze to proste rozwiazanie ale czasem proste sa najlepsze - mam nadzieje ze komus pomoge

pozdrawiam ROKO

pannabe9

Avatar: pannabe9

2008-01-05 18:06

ROKO, jest o wiele banalniejszy sposób na to, żeby w koszyku pojawiła się stała wartość, czyli ilość produktów = 1 :)

Nie trzeba przerabiać całego tego kodu, tak jak Ty wycinałeś po kolei jakieś drobinki, tylko wystarczy dobrać się do linijki:

<fieldset><input type="text" name="aElements[$aList[iElement]]" value="$aList[iQuantity]" size="2" class="input" /></fieldset>

i wyciąć z niej tyle, żeby zostało:

<fieldset><size="2" />1</fieldset>

I wystarczy.
U mnie działa wyśmienicie :)

Pozdrawiam,
panna-be

agaar

No avatar

2008-01-08 18:45

panna-be, ta modyfikacja dziala tak jak piszesz, ale ostatecznie nic to nie daje bo pomimo ze na zamówieniu widnieje ilość 1, odwiedziny koszyka sumują się. W efekcie 1 szt, czegoś co miało kosztować 23 zł widnieje jako 69 zł. Jak zrobić żeby kwota zamówienia zawsze była pomnożona przez 1?

Pozdrawiam

pannabe9

Avatar: pannabe9

2008-01-08 19:16

Hm.
Ale jak ma się sumować, skoro to, co napisałam, zlikwidowało ramkę, w której można było wpisać ilość produktów? Zamiast tej ramki jest po prostu stała cyfra 1. I nie da się wpisać, że czegoś chce się w dwóch sztukach.
U mnie to zdaje egzamin.
I nic się nie sumuje, jak mniemam.

http://owca.boo.pl

goory

No avatar

2008-01-10 23:03

"BLACK & WHITE 21.00 1 84.00 Usuń
Wartość zamówienia: 84.00 "

sumuje sumuje ;)

to jest z Twojej strony, jak widzisz cena razy ilosc nie do konca jest wartosia ;) a to dlatego ze wystarczy tak jak w tym wypadku kliknac 4 razy na nazwe towaru i trafil on 4 razy do koszyka.

tez szukam rozwiazania tego problemu...
ilosc towaru 1 i po zakupie znika ze sklepu. ma ktos rozwiazanie ?

pannabe9

Avatar: pannabe9

2008-01-10 23:09

no tak, jeśli sprawę potraktować z tej strony, to fakt, można dodać kilka razy :)

mi jak na razie wystarcza to, co zrobiłam, a nie ubliżając klientom nie sądzę, by jedna osoba dwa razy klikała na ten sam przedmiot, jeśli wyraźnie napisałam, że wszystkiego mam po jednej sztuce :)

ale przyłączam się do pytania, bo też by mi się rozwiązanie przydało :)

http://owca.boo.pl

goory

No avatar

2008-01-11 20:30

zmien kod gdzie wpisujesz ilosc towaru na:

w product_details.tpl


<span><strong>$lang[Quantity]: </strong>1<name="iQuantity" value="1" /></span>



w orders_basket.tpl


<td class="quantity">
       <
fieldset>1<name="aElements[$aList[iElement]]" value="$aList[iQuantity]" /></fieldset>
</
td>



to powinno zabezpieczyc przez mnozeniem ilosci przez klikniecie.

a ja nadal szukam solucji na towar ktory po zamowieniu staje sie np. niewidoczny.

goory

No avatar

2008-01-13 13:44

i oczywiscie w core/orders.php w sekcji function listBasket()


$aList
['fSummary']  = tPrice$aList['iQuantity'] * $aList['fPrice'] );


zmieniamy na


$aList
['fSummary']  = tPrice$aList['fPrice'] );

pannabe9

Avatar: pannabe9

2008-01-13 14:04

Dzięki za podpowiedź.

Później przetestuję.

Pozdrawiam,
B.

http://owca.boo.pl

precelik

No avatar

2009-06-26 21:39

A ma ktoś pomysł jak w momencie zamówienia zmienić status produktu na 0?? Jeszcze to i wszytsko by było ok :)

precelik

No avatar

2009-06-27 11:38

losc towaru 1 i po zakupie znika ze sklepu. ma ktos rozwiazanie ?

Zrobiłem trochę zmian w pliku orders.php, dodałem funkcje z pliku productsadmin, mam jak coś to na maila pośle :)

Sprzedaje pojdeyncze [url=http://szydelkowe.pl]kol

Makaron

Avatar: Makaron

2009-06-29 09:04

Wykonywałem kiedyś taką modyfikację, ale traktowana była jako dedykowana i wziąłem za to pieniądze, bo troszkę szukania było. Choć być może ktoś inny poda Ci gotową solucję, albo trafi na prostszy sposób niż mój.

mac0901

Avatar: mac0901

2009-10-09 12:26

Makaron czy taką modyfikację zrobiłeś do darmowego czy płatnego skryptu? ile by to kosztowało? mac0901(at)poczta.onet.pl

adamex2@home.pl

Avatar: adamex2@home.pl

2009-10-09 13:54

przylanczam sie do pytania o cene?

Makaron

Avatar: Makaron

2009-10-09 15:58

Tamta modyfikacja była wykonywana na darmowym skrypcie, ale była nieco bardziej zakręcona, bo dochodziły tam jeszcze rezerwacje, które miały być anulowane po jakimś czasie etc. Zainteresowanych modyfikacjami skryptów odsyłam do kontaktu na moją stronę: http://www.mak-web.pl tam znajdziecie wszystkie dane kontaktowe.

Do góry
o nas | kontakt