2016-07-27 43 views
3

訪問數組我使用數字而不是數組的變量來表示輸入元素中的名稱和ID。 (如agency1,agency2,agency3 ...)在輸入名稱中使用數據保留(PHP)

我知道我可以這樣做:

for ($i = 0; $i < $AMOUNT_OF_AGENCIES; $i++) 
{ 
    <label for="agency<?= $i; ?>">Agency Name</label><input type="text" name="agency[]" id="agency<?= $i; ?>"> 
} 

輸出,我需要和更容易使用的數組中的輸入元素,但我如果由於表單另一部分的驗證錯誤而導致表單出錯,還想保留數據。

我可以這樣做嗎?

<input type="text" name="agency[]" id="agency<?= $i; ?>" value="<?= htmlspecialchars($_POST['agency[$i]']); ?>"> 
+1

這幾乎是正確的:你必須使用'$ _ POST [ '代理'] [$ i] '而不是'$ _POST ['agency [$ i]']' – roberto06

+0

@ roberto06有道理,謝謝!如果你想發佈它作爲答案,我會標記它。 – Tiffany

+1

完成。請儘量避免使用短標籤,例如'','<?php echo $ var; ?>更好,並且兼容** ALL ** PHP版本。 – roberto06

回答

4

這幾乎是正確的:你必須使用

$_POST['agency'][$i] 

,而不是

$_POST['agency[$i]']