2013-02-07 68 views
1

我正試圖在數據庫上記錄一些信息。我的帖子看起來像這樣:插入數組值,多行

Array 
(
[Action] => 1000 

[Date_Stat] => 07/02/2013 
[Date_Final] => 07/02/2013 
[Product_Id] => Array 
    (
     [0] => 2 
     [1] => 6 
     [2] => 1 
    ) 

[Conversion] => Array 
    (
     [0] => 1,20 
     [1] => 1,00 
     [2] => 2,03 
    ) 

[ValueMin] => Array 
    (
     [0] => 2,00 
     [1] => 1,58 
     [2] => 2,70 
    ) 

[ValueMax] => Array 
    (
     [0] => 2,50 
     [1] => 1,98 
     [2] => 2,90 
    ) 

[ValueMedio] => Array 
    (
     [0] => 2,20 
     [1] => 1,68 
     [2] => 2,80 
    ) 

) 

如何以正確的方式將所有這些插入數據庫?

我不知道對設計表和存儲信息的最佳途徑。我正在使用它來製作包含開始日期,最終日期和價格列表的所有產品的價格表。

而且我在想什麼是最好的方法。有兩種可能性我想

Date_Start | Date_End |Product_Id | ValueMin | ValueMax | ValueMedio | Conversion 
02-02-2013 02-03-2013 1   1.00  2.00  3.00   4.00 
02-02-2013 02-03-2013 2   1.00  2.00  3.00   4.20 
02-02-2013 02-03-2013 3   1.00  2.00  2.00   4.40 

OR(使用破滅,並把所有的值在同一行)

Date_Start | Date_End |Product_Id | ValueMin | ValueMax | ValueMedio | Conversion 
02-02-2013 02-03-2013 1,2,3  1,1,1  2, 2,2  3,3,2  4, 4.3, 4.4 

非常感謝!

回答

1

選擇首先提到的選項。如果你這樣做,選擇行將變得更加容易。

要插入的記錄,使用一個簡單的準備語句(PHP Manual),並使用一個for循環。

0

我建議在第一個選項一個小調整。如果創建一個單獨的表像這樣(大致爲「價格」東西線):

id|DateStart|DateEnd| 
1|02-02-2013|02-02-2013| 

,然後在你的建議表,你會更換爲PriceId的日期範圍內(外鍵此表)。這樣,您可以更輕鬆地保持日期範圍更改的一致性。