2013-03-02 59 views
0

我已經建立了一個展覽展位預訂系​​統,參展商在其中輸入他們的詳細信息,然後選擇他們希望預訂的「展示」,包括展位的「展位尺寸」和任何「額外」。 (展位尺寸&其他特別展示)。 這可以正常工作,在我的數據庫中輸入正確的預訂詳細信息(每場節目預定,每場節目一行)。 但是,在預訂數據插入到數據庫之前,我需要添加一個構造頁面(因爲用戶點擊它們的後退按鈕進行更正,然後再次單擊「書」,因此在某些情況下添加重複項)。多維陣列/會話

每個預訂有1個顯示,1個顯示,但多個x額外 可以同時進行多個預訂(不同節目)。我試圖將每個預訂的所有數據存儲到一個數組(特定的SESSION數組)中,所以我可以輸出(以HTML格式)即將被預訂的內容。然後用戶點擊確認(或編輯),然後會話數據被提取/插入到我的數據庫中。

由於我需要將數據保存在一起,而且我不知道每個節目會預定多少額外費用,所以我正在努力解決這個問題,因爲我在數組中有陣列。這個可以嗎?

下面是代碼的陣列部分(以及我的測試),但它不工作,我希望(和林不完全瞭解如何提取數據)

session_start(); 
session_destroy(); 
$_SESSION[] = array(); 

$_SESSION[] = array(showID=>1, standID=>s1, extras=>array(x1, x1QT=>2 ,x2, x2QT=>4)); 
$_SESSION[] = array(showID=>2, standID=>s2, extras=>array(x1,x2)); 

foreach ($_SESSION as $booking) { 
    foreach($booking as $showID => $show){ 
     echo 'Show ID = ' . $show. '<br>'; 
    } 

} 

我知道我需要更多的代碼在這裏,但我正在努力解決如何從數組訪問正確的數據,特定於每個節目。 我不認爲我會有一個建設數組的問題,因爲這樣做的代碼已經工作(手動添加上面,僅用於測試)。

如果有人能指出我在正確的方向,我將非常感激。 這也完全有可能,我不會以正確的方式去解決這個問題,所以隨時以我應該去的方式告訴我這一點。 (或者我應該努力上存儲的所有數據,這是對「形態」提交通過隱藏的表單輸入?)

回答

0

你的數組鍵&值必須加引號(')

$_SESSION[] = array('showID'=>'1', 
        'standID'=>'s1', 
        'extras'=>array(
            'x1', 
            'x1QT'=>'2' , 
            'x2', 
            'x2QT'=>4)); 

$_SESSION[] = array('showID' => '2', 
        'standID'=> 's2', 
        'extras' => array('x1','x2')); 
+0

良好的裁斷;) – shihabudheen 2013-03-02 04:13:43

+0

非常感謝。 我記下了事情,但通過一個錯誤發現它仍然沒有他們工作,所以我認爲它看起來更整潔,我刪除了他們:-)。但現在不適合添加它們! 我也會照你說的去做,先把數組添加到$ row。 你能建議我怎麼能夠訪問每個表演。 foreach循環我有返回'陣列'的一些領域。它也會返回比我預期更多的行(我認爲每個行爲都會有一個行)。 再次感謝您的幫助。非常感謝 – user2125785 2013-03-02 08:43:26