【问题标题】:Showing form data after submit提交后显示表单数据
【发布时间】:2010-08-27 20:58:45
【问题描述】:

我有一个带有提交按钮的表单和一个将数据存储在数据库中的处理程序。问题是提交表单时,所有数据都从输入字段中清除。有没有办法在提交后仍然显示它们?我需要对我的 form_submit 函数进行哪些更改?

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

我正在寻找最“drupalish”的方式来完成这项工作?

【问题讨论】:

    标签: php drupal drupal-fapi


    【解决方案1】:

    this previous StackOverflow question 所示,您可以使用 $form_state['storage'] 和 $form_state['rebuild'] 来完成此操作。

    【讨论】:

    • 我实际上是在发帖前阅读了这篇文章,但我觉得它是针对多步骤表单的。我这样想错了吗?
    • 设置重建选项只会保留提交的数据。我想我应该说“@kidrobot 答案的最后一部分是适用的”。对缺乏明确性表示歉意。
    【解决方案2】:

    您可以使用$_REQUEST['form_variable_name'] 访问数据,其中form_variable_name 是html 输入标签的名称。

    然后您需要重新渲染页面,将此值放入输入标签值字段中。

    <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-12-14
      • 1970-01-01
      • 1970-01-01
      • 2019-11-14
      • 2019-11-15
      • 1970-01-01
      • 2014-05-29
      • 1970-01-01
      • 2016-01-12
      相关资源
      最近更新 更多