English 中文(简体)
在Droupal与外部身份保存机构登记数据
原标题:Validating Registration Data with an External Identity Repository in Drupal
  • 时间:2009-11-02 19:23:43
  •  标签:

当我用户试图登记时,我谨通过检查外部身份存放处(例如,称为网络服务或寻找名录服务器),确保其信息有效。

是否可能使用任何现有模块? 如果没有,发展这一功能的最佳途径是什么?

最佳回答

I m不了解允许添加习俗验证的现有模块,但使用hook_user(:

function yourModule_user($op, &$edit, &$account, $category = NULL) {
  // Are we in the validation phase of a new user registration?
  if ( validate  == $op &&  user_register  == $edit[ form_id ] &&  account  == $category) {
    // Yes, do custom validation...
    // NOTE: Just an example to validate by email.
    // Check the other elements in $edit array (e.g.  name ) for more options
    $mail_is_valid = yourModule_custom_mail_validation($edit[ mail ]);
    // Is the mail address OK?
    if (!$mail_is_valid) {
      // No, set error on mail form field
      form_set_error( mail , t( your custom error message ));
    }
  }
}

只要<代码>your Module_custom_mail_validation(<>不退还TRUE,便停止登记程序,并将登记表与邮件领域的错误信息重新编号。

如果您希望对现有的用户进行验证,也对其进行编辑,那么你可以放弃。

 &&  user_register  == $edit[ form_id ]

第一种条款的部分内容是,该守则将适用于每个用户填写表格,而不仅仅是登记。

问题回答




相关问题
热门标签