2010-06-29 5 views
0

drupal에서 webform을 사용하여 사용자 전자 메일 주소를 캡처하고 있지만 gmail, yahoo, rediffmail 등과 같은 무료 전자 메일을 입력하도록 사용자를 제한하려고합니다. 회사 전자 메일 만 받아 들여야합니다. 아무도 그걸 어떻게하는 지 알려주실 수 있습니까? stackoverflow있는이 How to write regular expression to match free email accounts? 있어요하지만 webform 전자 메일 필드에서 구현하는 방법을 몰라.Drupal webform 전자 메일 필드에서 무료 전자 메일 제한

+0

일부 무료 이메일 제공 업체와 일치시키지 않으면 매우 효과적이지 않을 수 있습니다. –

답변

0

hook_form_alter()을 사용하십시오. 사실 'hook_form_FORM_ID_alter'는 'element_validate'속성을 설정합니다.

function example_data_form_user_register_alter(&$form,&$form_state) { 
    $form['mail']['#element_validate'] = 'example_mail_validate'; 
} 

function example_mail_validate($element, &$form_state) { 
    if (-- Whatever condition you like --) { 
    form_error($element, t('Free email is not allowed.')); 
    } 
} 
관련 문제