验证Drupal表格不起作用

时间:2017-01-11 13:13:34

标签: forms validation drupal drupal-7

我创建了这两个函数,可以通过跟踪SOF或其他信息的不同主题来修改Drupal表单的验证。但我的查询从未进入验证功能,我不明白为什么......

/**
 * Implements hook_form_FORM_ID_alter().
 */
function *****_form_simplenews_block_form_1_alter(&$form, &$form_state) {
    // Modify some form settings
    $form['mail']['#title_display'] = 'invisible';
    $form['mail']['#size'] = 40;
    $form['mail']['#attributes']['placeholder'] = t('Enter your email address');
    $form['submit']['#value'] = t('OK');
    $form['#validate'][0] = '*****_simplenews_block_form_validate';
}

/**
 * Validate the mail address for simplenews
 *
 * @param $form
 * @param $form_state
 */
function *****_simplenews_block_form_validate($form, &$form_state) {
    kpr($form);die();
    if (!valid_email_address($form_state['values']['mail']) && $form_state['values']['check_robot']) {
        form_set_error('mail', t("Error, please try again"));
        form_set_error('submit', "You are a robot.");
    }
}

我去看了Drupal API的文档(https://www.drupal.org/files/fapi_workflow_7.x_v1.1.png),似乎我做了必要的事情,所以如果有人能帮助我,我会很高兴,谢谢你提前!

1 个答案:

答案 0 :(得分:0)

好吧,我的坏!

操作表单将表单提交给Web服务。因此,Drupal表单工作流程永远不会验证它。