【问题标题】:Extract name attribute from form field从表单字段中提取名称属性
【发布时间】:2021-11-19 00:30:12
【问题描述】:

我有一个这样的数组:

Array
(
    [enabled] => Array
        (
            [:input[name="email"]] => Array
                (
                    [checked] => 1
                )

        )

)

使用 php 提取名称属性的最佳方法是什么? 我需要像这样检查电子邮件的价值:

if(!empty($array['enabled']['email'])){
// do some stuff.
}

名称值由某个外部组件设置,可以是任何东西,我需要做的是,始终检查我的实现,确保此动态属性已设置且不为空。此表单字段是由其他模块添加的,我正在尝试在 hook_form_alter 上进行检查,并根据提交的值添加验证处理程序。

提前致谢。

【问题讨论】:

  • 我建议更改表单 POST 键名。 :input[name="email"] 操作太繁琐
  • $array['enabled'][':input[name="email"]']['checked']

标签: php drupal-8 drupal-modules


【解决方案1】:

你想做什么:

print_r($_POST);
echo $_POST['enabled'][":input[name='email'"]['checked'];

你的输入应该是这样的:

<form action="" method="post">
    <input type="text" name="enabled[:input[name='email'][checked]]" value="Şahin">
    <input type="submit" name="submit" value="Gönder" >
</form>

结果:

Array
(
    [enabled] => Array
        (
            [:input[name='email'] => Array
                (
                    [checked] => Şahin
                )
        )

    [submit] => Gönder
)
Şahin

【讨论】:

  • 忘了提到 Drupal。更新了问题。
猜你喜欢
  • 2011-01-08
  • 2012-09-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-11-05
  • 1970-01-01
相关资源
最近更新 更多