【问题标题】:How do I apply webform validation in drupal 7?如何在 drupal 7 中应用 webform 验证?
【发布时间】:2011-07-22 05:09:03
【问题描述】:

我的 drupal 7 网站中有网络表单。我想要的是验证我的网络表单字段。网络表单包含一个电话字段,该字段应接受数字字段并且应仅包含 10 个数字。是否有任何模块,或者我必须为此编写代码。

【问题讨论】:

    标签: validation drupal-7 drupal-webform


    【解决方案1】:

    使用hook_form_alter() 在drupal 中应用自定义验证

    创建模块,例如我的模块

    文件 mymodule.module

    function mymodule_form_alter(&$form, &$form_state, $form_id)
    {
        print $form_id;
    
        if($form_id=='webform_client_form_1') //Change webform id according to you webformid
        {
            $form['#validate'][]='mymodule_form_validate';
            return $form;
        }
    }
    
    function mymodule_form_validate($form,&$form_state)
    {
        //where "phone" is field name of webform phone field
        $phoneval = $form_state['values']['submitted']['phone'];
    
        if($phoneval=='')
        {
            form_set_error('phone','Please fill the form field');
        }
        // Then use regular expression to validate it.
        // In above example i have check if phonefield is empty or not.
    }
    

    如果您想更详细地了解如何使用hook_form_alter(),请访问此链接http://www.codeinsects.com/drupal-hook-system-part-2.html

    【讨论】:

      【解决方案2】:

      有一个名为Webform Validation的模块,我们可以在其中为每个字段设置验证规则。

      这是其项目页面的摘录:

      ... 为每个 webform 节点添加一个额外的选项卡,允许您为 webform 组件指定验证规则。您可以创建一个或多个预定义的验证规则,并选择应根据这些规则验证哪些 Web 表单组件。通过使用该模块提供的钩子,您还可以在自己的模块中定义自己的验证规则。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-11-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多