0

この問題の解決策を Web で検索してみましたが、見つかりませんでした。問題は、追加の入力を追加するフォームと JavaScript 関数を備えたボタンがあることです。これらの入力変数を php 配列に渡した後$_POST、動的に作成された入力以外のすべてを出力します。動的に生成された入力が表示されない理由を知っていますか?

<form action="page.php" method="post" id="rekins">
   <p>Invoice Number: <input type="text" name="nr" /></p>
   <p>Account: <input type="text" name="konts" /></p>
   <h1>Services:</h1>
   <h2>1. Service</h2>
   <input type="text" name="pak[0][counter]" style="display:none" value="1"/>
   <p>Name<input name="pak[0][name]" type="text" id="pakName0" class="pak"/></p>
   <p>Count<input name="pak[0][count]" type="text" id="pakCount0" class="pak"/></p>
   <p>Price<input name="pak[0][Price]" type="text" id="pakPrice0" class="pak"/></p>
   <input type="button" onclick="addInput()" name="add" value="Add another service" />
   <p><input type="submit" name="submit" value="Submit" /></p>
</form>
<script language="javascript">
    fields = 0;
    function addInput() {
    fields += 1;
    document.getElementById('rekins').innerHTML += 
            "<h2>"+(fields+1)+". service</h2>"+
            "<input type='text' name='pak["+fields+"][counter]' style='display:none' value='"+(fields+1)+"'/>"+
            "<p>Name<input name='pak["+fields+"][name]' type='text' id='pakName"+fields+"' class='pak'/></p>"+
            "<p>Count<input name='pak["+fields+"][count]' type='text' id='pakCount"+fields+"' class='pak'/></p>"+
            "<p>Price<input name='pak["+fields+"][Price]' type='text' id='pakPrice"+fields+"' class='pak'/></p>";
    }
</script>

でデバッグを試みたところvar_dump($_POST['pak']);、デフォルト値は表示されましたが、動的に追加された値は表示されませんでした。

何が問題なのですか?

4

1 に答える 1