我正在致力於銷售各種產品的電子商務網站(網上購物)。我想向用戶展示用戶最近瀏覽過的產品列表。你能幫我實現這個嗎?如何在電子商務網站上添加「最近訪問的產品」的功能?
我在Windows服務器上使用PHP,MySQL和Apache HTTP。
謝謝!
我正在致力於銷售各種產品的電子商務網站(網上購物)。我想向用戶展示用戶最近瀏覽過的產品列表。你能幫我實現這個嗎?如何在電子商務網站上添加「最近訪問的產品」的功能?
我在Windows服務器上使用PHP,MySQL和Apache HTTP。
謝謝!
您可以使用數據庫或cookie。該數據庫方法即使用戶清除其瀏覽器Cookie的持續:
在數據庫中像創建表:
userid,
productid,
viewdate TIMESTAMP DEFAULT CURRENT_TIMESTAMP
每當訪問者瀏覽一個產品,你只需插入一條記錄到數據庫中識別用戶,產品以及訪問時間的時間戳。
-- Insert
INSERT INTO recentlyviewed (userid, productid) VALUES (userid, productid);
用戶加載下一頁時,您檢索他們認爲最近ñ產品,並顯示它們。定期地,您可以運行計劃作業來清理比您選擇過期的天數更早的查看記錄。
-- Cleanup old records after 14 days
DELETE FROM recentlyviewed WHERE viewdate < DATE_ADD(NOW(), INTERVAL -14 DAY);
有兩種方法,我可以想到,要做到這一點。
我認爲第二個選項是更好,因爲你可以使用這個數據來創建某種「誰瀏覽過此產品的人也認爲這一個」像亞馬遜有
這裏是我會怎麼做它,你創建一個表是這樣的:
CREATE TABLE views(
id bigint not null auto_increment,
user_id bigint not null,
product_id bigint not null,
primary key(id)
)
而且每一個用戶瀏覽一個產品的時候,你保存用戶的ID和這裏的產品ID。然後,您可以使用簡單的選擇查詢獲取用戶查看的最新10種產品,以及獲取單個產品的查看次數。
您可以使用會話並保存用戶的產品ID:'session_start(); $ _SESSION ['products'] [] = $ current_product_id;' – kongr45gpen
您需要研究在PHP中使用會話變量。或者,您可以將IP存儲在數據庫中,以及序列化的產品密鑰陣列,無論如何都可以。如果你想讓某人聘請開發人員,那麼這裏沒有人會爲你寫代碼。有一個去尋求幫助是我們在這裏做的。 –