2012-10-31 169 views
0

這個想法是,我要建立一個網站,使用CodeIgniter在我的網站上註冊的一些不同的商店處理購物。當我想要顯示買方當前查看的商店中的商品的內容時,即將到來的挑戰即將到來。我遇到了使用購物車的選項索引來傳遞商店ID,以便我可以使用它來識別該商品來自哪個商店。codeigniter購物車:多個商店的顯示購物車

但我不知道該怎麼做,因爲我不知道如何根據商店標識符等標識符來選擇某些購物車內容。任何人都可以提出一個想法嗎?預先感謝您。

+0

這些商店是否在您的應用程序中,或者您是否在討論通過另一個在線店面處理購買事宜? –

+0

是的,商店在我的應用程序內。我的意思是,他們在我的網站上創建了一個帳戶,他們可以管理他們自己的產品。 – Abaij

+0

好吧,那麼這是正確管理你的表的問題。 –

回答

1

這有點破解,但可以將store_id添加到項目選項。

然後,當用foreach循環瀏覽購物車內容時,循環的第一行檢查選項,如果store_id不匹配 - 則跳過循環代碼的其餘部分(with continue;)。

或者,您可以擴展購物車類並覆蓋contents()方法,爲您做到這一點,使您的視圖代碼更清潔。

+0

謝謝你的想法,這聽起來不錯。但我不知道如何去做你的意思是'foreach'循環。你能向我展示一下'foreach'代碼嗎?:) – Abaij

+0

您的問題表明,您不知道如何在顯示購物車時通過商店ID進行過濾。這意味着你知道如何展示購物車...無論如何,它看起來像: 'foreach($ this-> cart-> contents()as $ item){' '... do你的選項在這裏檢查' '}' 你可以看到一個完整的描述[here](http://codeigniter.com/user_guide/libraries/cart.html) – Darrrrrren

+0

嘿,它的作品就像一個魅力!但是現在我有一個新問題。使用'$ this-> cart-> total()'的購物車總量仍然是購物車中所有商品的總量,而我需要從每個商店購買購物車數量。任何想法? – Abaij

2

這只是正確管理你的表的問題。

非常基本的桌面輪廓

  • 存儲表存儲特定信息和唯一ID,每個存儲都有自己的行。
  • 帶有產品特定信息的產品表。
  • 用戶表
  • 庫存表,數量的productID,STOREID
  • 車表存儲用戶和庫存的ID(和其他任何你需要的)

然後,當你做你的購物車查詢個人產品通過庫存錶鏈接到單個商店。

您可能需要仔細考慮處理來自多個商店的單個產品,價格等的更多細節,但這應該讓您開始走上正確的道路。這是我們的在線應用程序的一個非常細化的版本。我們實際上也有定價的表格。

+0

我的庫存表中已經有storeID,productID等等,但是我的問題是當訪問者正在查看John的商店時,如何僅顯示來自(例如)John購物車中商店的產品。其他商店的產品不應出現。有什麼我可以用'$ this-> cart-> content()'函數做到這一點嗎? – Abaij

+0

噢,你使用CI內置的推車的東西?對不起零經驗,我只寫自己的電子商務的東西。對於選擇它很簡單SELECT * WHERE storeId = $ johns_id –

+0

是的,目前我嘗試使用CI購物車功能來存儲買方選擇的產品的數據。買家完成結帳之前,我不會將它們存儲在數據庫中的一張桌子上。謝謝你,無論如何@瑞克 – Abaij