重力表单显示字段名称而不是值

时间:2013-11-25 17:57:52

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

我正在使用重力形式开展项目。我创建了一个下拉字段(字段id1),标签为'option1,option2等',并为它们赋值(option1 = value 100,option2 = value 200)

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

 $example = $_POST["input_1"]    
在这种情况下,{p> $example给出了选择的值(100或200)。我有时想要这个,但我还需要它给我字段名称(option1或option2)。

所以我想要的是:

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

使$example2给我字段名称。

可能吗?

1 个答案:

答案 0 :(得分:2)

我假设您使用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'] ];

使用提交的字段值,您可以检查字段数组中的哪个选项已被选中,并获得此选项的文本和值。