【问题标题】:Gravityforms show field name instead of value重力形式显示字段名称而不是值
【发布时间】:2013-12-10 14:03:29
【问题描述】:

我正在做一个使用重力形式的项目。我创建了一个下拉字段(字段 id1),带有标签“选项 1、选项 2 等”并给它们值(选项 1 = 值 100,选项 2 = 值 200)

我在函数中使用条目,假设我使用以下内容:

 $example = $_POST["input_1"]    

在这种情况下,$example 给了我选择的值(100 或 200)。有时我想要,但我也需要它来给我字段名称(选项 1 或选项 2)。

所以我想要的是这样的:

 $example 2 = .........     

这使得$example2 给我字段名称。

这可能吗?

【问题讨论】:

    标签: php wordpress forms gravity gravity-forms-plugin


    【解决方案1】:

    我假设您使用 Gravity Forms 提供的一些钩子来运行您的代码。一个合适的应该是gform_after_submission,它为您的回调提供form objectentry object。表单对象包含提交表单的所有字段,所有字段名称,入口对象包含提交的值。

    您可以使用简单的 foreach 遍历表单字段。

    foreach( $form['fields'] as $key => $field ) {
        ...
    }
    

    我们在上面检索到的field object 包含表单字段的所有设置,因此您可以通过检查其中一个字段来找到您的特定字段,例如idlabel。因为该字段是一个下拉字段,它甚至包含一个choices 数组,带有标签、值和默认标志。您可以像这样检索特定选择的标签:

    $label = $field['choices'][0]['text'];
    

    最后要做的是读取条目对象以获取提交的选定选项。既然您知道$field['id'],您只需像这样获取提交的值:

    $submitted_value = $entry[ $field['id'] ];
    

    通过提交的字段值,您可以检查字段数组中的哪些选项已被选中,并获取该选项的文本和值。

    【讨论】:

      猜你喜欢
      • 2021-06-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-11-25
      • 1970-01-01
      • 2017-01-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多