3

送信ボタンとデータベースにデータを保存するハンドラーを備えたフォームがあります。問題は、フォームが送信されると、すべてのデータが入力フィールドから消去されることです。送信後も表示する方法はありますか? form_submit 関数にどのような変更を加える必要がありますか?

function mymodule_form_submit($form, &$form_state) {
 //how to retain the input in the form
}

これを実現するための最も「drupalish」な方法を探していますか?

4

2 に答える 2

3

この以前の StackOverflow の質問で示されているように、$form_state['storage'] と $form_state['rebuild'] を使用してこれを実現できます。

于 2010-08-27T21:53:49.450 に答える
0

html 入力タグの名前である$_REQUEST['form_variable_name']whereを使用して、データにアクセスできます。form_variable_name

次に、この値を入力タグの値フィールドに入力して、ページをレンダリングする必要があります。

<form method="POST" action="/account/contactdetails/">
 <div>
  <label>First name:</label>
  <input type="text" name="firstname" value="<?php echo $_REQUEST['firstname']; ?>" />
 </div>
 <div>
  <label>Last name:</label>
  <input type="text" name="lastname" value="<?php echo $_REQUEST['lastname']; ?>" />
 </div>
 <input type="submit" value="Save" />
</form>
于 2010-08-27T21:43:16.947 に答える