アップロードされた CSV ファイルに基づいてフォームを書き出すスクリプトに取り組んでいます。CSV ファイルには、「,,,,」のみを含む行で区切られたセクションが含まれています。各ブロックには、キックスタートされるサーバーに関する情報が含まれています。次のようになります。
ホスト、tctivt2r6ra03、、、 int、eth0、10.153.196.248、255.255.255.0、10.153.196.1 int、eth1、10.153.157.113、255.255.255.128、10.153.157.1 int、eth2、10.153.157.241、255.255.255.128、10.153.157.129 int,eth3,00:50:56:ac:69:cb,, 一部、/ホーム、10、、 パーツ、スワップ、10、、 一部、/オプション、60、、 一部、/データ、30、、 、、、、
この入力は、テーブルを含む div に書き込まれます。入力の各行は、テーブル内の一意の行です。一部の値は、テキスト ボックスに表示されます。
スクリプトは、次のような出力を生成します。
各ボックスは動的に生成され、0 から始まるホスト ID と 0 から始まるボックス番号で構成されます。次に例を示します。
<tr><th>eth0: </th><td><input type="text" value="10.153.196.248" name="host0Box0" /></td><td><input type="text" value="255.255.255.0" name="host0Box1" /></td><td><input type="text" value="10.153.196.1" name="host0Box2" /></td></tr><tr>
私が持っている質問は、可変数のボックスを持つフォームを処理する方法です。具体的には、入力の「部分」行を処理するときに、6 つ以上のボックスが存在する可能性があります。
4 つのパーティションの例:
<tr><th>Partition name:</th><td> /</td><td>10</td></tr>
<tr><th>Partition name:</th><td> /var</td><td><input type="text" value="10" name="host0Box9" /></td></tr>
<tr><th>Partition name:</th><td> /home</td><td><input type="text" value="10" name="host0Box10" /></td></tr>
<tr><th>Partition name:</th><td> swap</td><td><input type="text" value="10" name="host0Box11" /></td></tr>
<tr><th>Partition name:</th><td> /opt</td><td><input type="text" value="60" name="host0Box12" /></td></tr>
<tr><th>Partition name:</th><td><input type="text" value="/data" name="host0Box13" />/td><td><input type="text" value="30" name="host0Box14" /></td></tr>
<tr><th>Number of Disks: </th><td><input type="text" value="1" name="host0Disks" /></td></tr></table></div><span><br /><br /></span>
6 つのパーティションの例:
<tr><th>Partition name:</th><td> /</td><td>10</td></tr>
<tr><th>Partition name:</th><td> /var</td><td><input type="text" value="10" name="host1Box9" /></td></tr>
<tr><th>Partition name:</th><td> /home</td><td><input type="text" value="10" name="host1Box10" /></td></tr>
<tr><th>Partition name:</th><td> swap</td><td><input type="text" value="10" name="host1Box11" /></td></tr>
<tr><th>Partition name:</th><td> /opt</td><td><input type="text" value="60" name="host1Box12" /></td></tr>
<tr><th>Partition name:</th><td><input type="text" value="/data" name="host1Box13" /></td><td><input type="text" value="30" name="host1Box14" /></td></tr>
<tr><th>Partition name:</th><td><input type="text" value="/test1" name="host1Box15" /></td><td><input type="text" value="30" name="host1Box16" /></td></tr>
<tr><th>Partition name:</th><td><input type="text" value="/test2" name="host1Box17" /></td><td><input type="text" value="20" name="host1Box18" /></td></tr>
<tr><th>Number of Disks: </th><td><input type="text" value="1" name="host0Disks" /></td></tr></table></div><span><br /><br /></span>
これは進行中の作業であり、各ホスト セクションを適切に処理するために変更する必要があることはわかっています。その間、私はこの 1 つの問題を整理しようとしています。
私の質問は、II が最終的にフォームを処理する段階に到達したとき、$_POST 配列が取り込まれたときに動的に割り当てられたアイテム名を考慮するためにどのようなアプローチを使用する必要があるかということです。配列の値を取り出して、別の配列に配置しますか? 通常の配列のように $_POST 配列を反復処理できますか? 私が気付いていない別のオプションはありますか?