2016-05-15 20 views
0

私はFPDFライブラリを使用しています。新しいセルを動的に作成しようとしています。私は自分のHTMLに、この名前= "field [0] []"のような名前属性を持つ入力フィールド群を持っています。ユーザーが2番目のグループを生成すると、name属性はこのname = "field [1] []"のようになります。ここではHTMLは次のとおりです。PHPで

<div class="new"> 
    <input name="field[0][]" class="description" type="text" maxlength="255" placeholder="Enter Description" value=""/> 
    <input name="field[0][]" data-rate="rate" class="rate qty" type="text" maxlength="255" placeholder="0" size="5" value=""/> 
    <input name="field[0][]" data-price="price" class="pack price" type="text" maxlength="255" placeholder="$ 0.00" size="5" value=""/> 
    <input name="field[0][]" id="amount" class="amount" type="text"> 
</div> 

が、私は「[0] []フィールド」とFPDFセルでそれらを注入し、ここに私のコードでの名前=からすべての値を取得するforeachループを持っています。

$width_array = array(100, 25, 25, 0); 
$pos_array = array(0, 0, 0, 1); 
$align_array = array('L', 'C', 'L', 'L'); 

foreach ($_POST['field'][0] as $key => $description) { 
    $pdf->Cell($width_array[$key],10, "{$description}", 1, $pos_array[$key], $align_array[$key]); 
} 

は今のところ、これは、同じ名前の属性を持つ入力の1セットのための非常に良い感じですが、私は例の$ _POST [「フィールド」]のような複数の入力セット[1]を持っている場合どのように私は動的に多くの細胞を生成することができ、 $ _POST ['field'] [2]などです。別のforeachループを追加して配列番号を変更すると、次のフィールドが表示されますが、それは間違っているため、動的に生成する必要があります。

この$ _POST ['field'] [0]に1つを追加できますか? foreachループで使用しますか?

答えて

1

PHPまたはHTMLに問題がありますか?

HTML JSで解決できるHTMLです。したがって、索引を保存するだけで、誰かがブロックを追加するたびに索引を増やすことができます。これにより、HTMLコードを動的に作成することができます。あなたは、単にお互いに2 foreachsを配置する必要があり

PHP:

foreach ($_POST['field'] as $dataArray) { 
    foreach ($dataArray as $key => $description) { 
     $pdf->Cell($width_array[$key],10, "{$description}", 1, $pos_array[$key], $align_array[$key]); 
    } 
} 
+0

問題は、あなたが私の問題を解決したので、そんなにありがとうPHPです。 :-) – Shark

関連する問題