これは、以下の重複している可能性があり、複数のフォームを提出したが、私は答えは私の状況に適用する方法を見つけ出すことができません。だからここに私がこれ(私は認めます)と非常によく似た質問をするのが私の挑戦です:
データの行を持つテーブルがあり、各行に送信ボタンがあります。次のようになります。
$form['f'] = array();
foreach ($rows as $row) {
$form['f'][$row['nid']] = array();
$form['f'][$row['nid']]['nid'] = array(
'#markup' => $row['nid'],
);
$form['f'][$row['nid']]['submit'] = array(
'#type' => 'submit',
'#value' => t('sumbit'),
'#submit' => array('f_submit'),
);
}
つまり、フォームはデータベースから抽出された一連の行で構成され、対応するnid
フィールドの値を取得してその値を出力する送信コールバックを作成します。下のコメントがあるところに何を付けたらいいのかと思っています。
function f_submit($form, &$form_state) {
// Here I want to print the value of the relevant nid field
}