Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 1 195 Pomógł: 109 Dołączył: 3.11.2011 Ostrzeżenie: (10%)
|
Witam chciałbym się spytać o Waszą opinię.Buduje koszyk już mam ,praktycznie zbudowany,wyliczanie sum itp.
Teraz kombinuje jak zapisać te dane,zastanawiam się nad tym z dobry tydzień i nie wiem czy dobrze kombinuje. Zastanawiam się nad tabelami tymczasowymi i zapisywać te dane za pomocą procedur składowych.Jak wiadomo tabela tymczasowa z przedrostkiem # trwa do czasu trwania sesji lub do zakończenia połączenia,czyli użytkownik zamyka przeglądarkę i dane giną.Jako ID tych danych użyłbym GUID sesji -podobno jest unikatowy dla każdej sesji.Ma to swoje zalety,nie kumuluje danych w bazie bo dane giną,nie są trwałe.Minusem przypadkowe zamkniecie przeglądarki przez usera i utrata danych.Ale mniejsza o te plusy i minusy.Można to wzbogacić i użyć globalnej tabeli tymczasowej z przedrostkiem ## wtedy dane usuną się kiedy ostatni użytkownik przerwie połączenie,lub zamknie przeglądarkę.Zapisać GUID do ciacha i nawet jak zamknie przeglądarkę i otworzy ponownie ,można odtworzyć z ciacha guid sesji i odtworzyć dane z tabeli tymczasowej(tylko należy pamiętać ,że będą one istnieć dopóki ostatni użytkownik nie przerwie połączenia). Po uzupełnieniu koszyka i przy kliknięciu zapłąć , anonimowy user wypełnia dane-imie nazwisko ,swój adres itd.Po wypełnieniu formularza,robię zrzut z tabeli tymczasowej do tabeli normalnej,kluczem tych tabel byłby GUID, pola z wypełnionymi danymi z formularza+ osobna tabela z zakupionymi towarami, tylko czy numer GUID się nigdy nie powtórzy-czy jest unikalny? Potrzebuje jakiejś podpowiedzi,cz rozwiązanie jakie chce zastosować jest do bani ,może są lepsze? Ten post edytował Niktoś 17.12.2011, 20:00:03 |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk |
Relacyjna baza danych
2 tabele - cart (id, id_sesji, ostatni_czas_uzycia, itd) - cart_content (id, id_koszyka, id_produktu, itd) W tle możesz odpalić menedżera (cron będzie OK), który co jakiś czas usunie niepotrzebne koszyki Wg mnie idealnym rozwiązaniem będzie skorzystać z baz, które oferują dane ulotne. Np memcache w którym ustawiasz czas życia wpisu. klucz: cart_[cart_id] wartość: zserializowany obiekt Cart czas_życia: np 5 godzin (raczej nikt nie ma tak długo otwartego okna przeglądarki na tej samej stronie) Problem rozwiązuje się sam (IMG:style_emoticons/default/smile.gif) |
|
|
|
Niktoś Nietypowy koszyk zakupów oparty o tabele tymczasowe 17.12.2011, 19:47:49
nasty Cytattabela tymczasowa z przedrostkiem # trwa do c... 18.12.2011, 00:02:36
Niktoś Z pamięcią też to nie za bardzo mi się widzi,bo ba... 18.12.2011, 00:09:31 
nasty Cytat(Niktoś @ 18.12.2011, 01:09:31 )... 18.12.2011, 00:39:34
Niktoś CytatWg mnie idealnym rozwiązaniem będzie skorzyst... 18.12.2011, 00:59:21
wookieb http://pl.php.net/serialize
http://pl.php.net/seri... 18.12.2011, 01:00:52
Niktoś Wiem co to serializacja,mam nawet gotowe klasy, do... 18.12.2011, 01:05:53
wookieb Przechowałbym w nim identyfikatory produktów w kos... 18.12.2011, 01:09:51
Niktoś Realizuje koncepcje z memcached.A mianowić dokonał... 21.12.2011, 18:20:40
destroyerr CytatMemcached is an in-memory key-value store
Klu... 21.12.2011, 21:31:18
Niktoś To robiłem dla próby ,a jaki klucz miałbym generow... 21.12.2011, 22:20:03
destroyerr Cytattylko zastanawia mnie dlaczego dali możliwość... 21.12.2011, 23:03:28
Niktoś Na takiej zasadzie klucz[PHP] pobierz, plaintext G... 22.12.2011, 00:46:23 ![]() ![]() |
|
Aktualny czas: 26.12.2025 - 11:46 |