2015-11-07 72 views
1
if (isset($_POST['callSubmit'])) { 
    $vs = 25; 
    $callName = $_POST['callName']; 
    $callNumber = $_POST['callNumber']; 
    $cNumber = array(); 

    for ($i = 0; $i <= $vs - 1; $i++) { 
     array_push($cNumber, array()); 
    } 

    $cNumber[$callNumber - 1][] = $callName; 
    print_r($cNumber); 
} 

這追加數組是給我的輸出:多維PHP推

Array (
[0] => Array 
    (
    ) 

[1] => Array 
    (
    ) 

[2] => Array 
    (
    ) 

[3] => Array 
    (
    ) 

[4] => Array 
    (
    ) 

[5] => Array 
    (
    ) 

[6] => Array 
    (
     [0] => Tested 
    ) 

[7] => Array 
    (
    ) 

[8] => Array 
    (
    ) 

[9] => Array 
    (
    ) 

[10] => Array 
    (
    ) 

[11] => Array 
    (
    ) 

[12] => Array 
    (
    ) 

[13] => Array 
    (
    ) 

[14] => Array 
    (
    ) 

[15] => Array 
    (
    ) 

[16] => Array 
    (
    ) 

[17] => Array 
    (
    ) 

[18] => Array 
    (
    ) 

[19] => Array 
    (
    ) 

[20] => Array 
    (
    ) 

[21] => Array 
    (
    ) 

[22] => Array 
    (
    ) 

[23] => Array 
    (
    ) 

[24] => Array 
    (
    ) 

) 

這就是輸出的時候應該追加值,每次我提交表單。也許這是因爲表單提交時頁面刷新,這就是爲什麼數組被清空了?不知道,但如果任何人能告訴我爲什麼它這樣做的原因,如果我的表格被提交時,我的假設被清空,請讓我知道。

替代品總是被接受!

+2

您是否在尋找[PHP會話(http://php.net/manual/en/book.session.php)? – Rudie

+0

你爲什麼要推一個空的'array()'? –

+0

因爲每個陣列都有它自己的值,並且它根據設置而變化。因此,基本上0 => [0] => 'A',[1] => 'B' 等 – RepeaterCreeper

回答

1

你只在這一行追加空數組 $cNumber

array_push($cNumber, array()); 

您需要更改 array()到你想要的值的數組。

編輯我意識到我沒有完全回答你的問題。

你說你的代碼「每次提交表單時都應該附加值」。

但是,每次腳本運行(每次頁面重新加載),您的代碼都會設置$cNumber = array();。另外,$cNumber不會在頁面加載之間保存(請參閱會話)。頁面重新加載導致陣列每次都重置。

您可以通過(使用會話)做到這一點:

<?php 

    session_start(); 
    if(!isset($_SESSION["cNumber"]) { // ONLY IF array not created create it (to avoid resetting variable every time) 
     $_SESSION["cNumber"] = array(); 
     for ($i = 0; $i <= $vs - 1; $i++) { 
      array_push($_SESSION["cNumber"], array()); 
     } 
    } 
    $_SESSION["cNumber"][$callNumber - 1][] = $callName; 

    print_r($_SESSION["cNumber"]); 

?> 
+0

哦,所以我當時就對了。好吧,我會和會議一起去。謝謝! – RepeaterCreeper

+0

@RepeaterCreeper看到我的例子的想法。 –