Drupal Forms APIフォームの検証機能で、ユーザーのクレジットカードに請求しようとしています。成功したら、送信機能に参照番号を渡して、そこで使用できるようにしたいと思います。これを行うための最良の方法は何ですか?
2940 次
1 に答える
3
ドキュメントには次のように書かれています。
Drupal 6 以降では、「#foo」がフォーム API の他の内部プロパティと競合しない限り、任意の変数を代わりに $form['#foo'] に格納することもできます。
したがって、次のようなことができます。
function form($form_state) {
//in your form definition function:
$form['#reference_number'] = 0;
}
function form_validate($form, &$form_state) {
//try to charge card ...
if ($card_charged) {
$form_state['values']['#reference_number'] = $reference_number;
}
}
function submit_form($form, &$form_state) {
if (isset($form_state['values']['#reference_number'])) {
$reference_number = $form_state['values']['#reference_number'];
//do whatever you want
}
}
于 2009-07-30T18:36:50.833 に答える