我有一個網站,用戶可以下訂單。訂單在準備交付之前經歷了各個階段。我希望能夠隨時記錄與訂單有關的任何事情。如何使用php將訂單歷史存儲在數據庫中?
這裏是我想什麼它看一個例子:
(12年2月13日下午4:41):由客戶發起訂單
(12年2月13日4: 41pm):令 發送給經理審批
(12年2月13日下午04:43):批准 經理
(12年2月14日下午6時03分)訂單:順序是由編輯用戶:
市: '洛杉磯 洛杉磯' 到 '聖迭戈'
(2/14/12 6:09 pm): o被編輯刻申由 管理員:
電子郵件: '[email protected]' 來'[email protected]'
(12年2月15日 下午8時41分):準備好了交貨
什麼是我來存儲這種類型的訂單歷史記錄的最好的方法?我在DB中創建了一個名爲歷史記錄的表格,我希望將歷史存儲爲與每個訂單有關的歷史記錄。我的列是history_id(primary),order_id(foreign),添加日期(timestamp)和history_message(varchar)。
理想情況下,我想爲訂購流程中的每個步驟創建編號代碼,例如訂單批准,訂單編輯或訂單交付,然後只爲該行分配編號而不是實際的歷史消息,即更多的字符。我覺得這樣我不會過分誇大我的數據庫。這種方法的問題在於我想記錄已更改的實際數據(正如您可以在示例中的用戶和管理員的編輯中看到的那樣),並且我不確定如果沒有保存每行的完整歷史消息。
爲我的情況在數據庫中存儲訂單歷史的最佳方式是什麼?
感謝您的回覆Teez!我想我可能會理解你的建議,但我不太確定實施。你能告訴我你將如何設想新的表格以及可能的代碼樣本嗎? – zeckdude 2012-02-19 22:26:39