验证 Drupal 表单不起作用
Validation Drupal Form doesn't works
我创建这两个函数是为了能够通过关注 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) ,似乎我做了必要的,所以如果有人能帮助我,我宁愿快乐,提前谢谢你!
好吧,我的错!
操作表单将表单提交到网络服务。所以它永远不会被 Drupal 表单工作流验证。
我创建这两个函数是为了能够通过关注 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) ,似乎我做了必要的,所以如果有人能帮助我,我宁愿快乐,提前谢谢你!
好吧,我的错!
操作表单将表单提交到网络服务。所以它永远不会被 Drupal 表单工作流验证。