1

フィールドが として定義されている PHP フォームがあり、フィールドitem[fieldname][]のセットは Jquery Clone 関数を介して繰り返されます。

これらの行は、送信時に次のように投稿されます

[item] => Array ( [itemdate] => Array ( [0] => 2012-07-10 20:44:05 [1] => 2012-07-12 20:44:17 )
                  [flditmname] => Array ( [0] => sdc [1] => sd ) 
                  [fieldtype] => Array ( [0] => 1 [1] => 2 ) 
                  [subscribe] => Array ( [0] => X [1] => X ) 
          )

item[id][]ここで、送信された各行に要素 (トランザクション番号など) を挿入する必要があります。私はこれを達成する方法について混乱しています。私は2つの方法を考えました:

  1. 行数を見つけて、反復によって値を追加します。しかし、このために、PHP カウント関数が正しい値を返さないという問題に直面しています (すべての配列を行ではなく 1 つとしてカウントしています)。最初の要素から数えることはできますが、フィールドが動的に入力されるためわかりません。

  2. 行を反復処理して要素に値を追加できる、ある種の配列プッシュ。

これをどのように達成するかについて、ここで専門家の助けを求めています。または、各項目が項目番号でヘッダー トランザクション ID を参照する (すべてのフィールドが動的に入力される) ヘッダー項目トランザクションの転記を処理する方法を提案できる他の方法はありますか? 構造は大まかに以下のようになります。

ヘッダー: ドキュメント ID | フィールド1 | フィールド 2 | ...

アイテム: ドキュメント ID | 行番号 | フィールド 3 | フィールド4 | ...

ドキュメント ID は、投稿中にlastno+1としてデータベースから取得されます。

4

2 に答える 2

1
foreach($items as $index => $array)
{
    $items[$index]['id']=$id;

}

私はこれが古いことを知っていますが、それでも誰かが同様の答えを探しているのを助けるかもしれません

于 2013-01-18T06:51:38.720 に答える
1

何をしようとしているのか正確にはわかりませんが、このようなことはうまくいきませんか?

foreach ($items as &$item)
{
     $item['id'][] = $id;
}

編集:

$key = key($items);

foreach ($items[$key] as $item)
{
     $items['id'][] = $id;
}
于 2012-07-23T12:50:52.003 に答える