휴대 전화 리뷰 및 정보를위한 기본 사이트를 설정하는 중입니다. 나는이 가짜 계정을 계속 등록하고 적절하지 않은 사이트에 콘텐츠를 게시합니다.로봇이 사이트에 등록되는 것을 피하십시오
방금 CAPTCHA 및 이미지 CAPTCHA 모듈을 설치했지만 방금 막지 않은 것 같습니다.
위조 계정을 피하는 가장 좋은 방법은 무엇입니까?
감사합니다.
휴대 전화 리뷰 및 정보를위한 기본 사이트를 설정하는 중입니다. 나는이 가짜 계정을 계속 등록하고 적절하지 않은 사이트에 콘텐츠를 게시합니다.로봇이 사이트에 등록되는 것을 피하십시오
방금 CAPTCHA 및 이미지 CAPTCHA 모듈을 설치했지만 방금 막지 않은 것 같습니다.
위조 계정을 피하는 가장 좋은 방법은 무엇입니까?
감사합니다.
또 다른 전략은 사용자 등록 양식에 다른 필드를 추가하는 것입니다. 대부분의 로봇은 필요한 필드가 무엇인지 모르기 때문에 모든 것을 채 웁니다. 사용자가 새 필드에 값을 입력하면 계정을 만들지 마십시오. CSS를 사용하여 UI에서 필드를 숨길 수 있으므로 실제 사람들이 필드를보고 그것에 아무 것도 입력 할 수 없습니다. 자세한 설명은 Easy spam prevention using hidden forms을 참조하십시오.
Drupal 사이트에이 기능을 구현하려면 사용자 등록 양식을 변경하고 유효성 검사를 만들기 위해 모듈을 만들어야합니다.
사용자 등록 양식에 다른 필드를 추가function mymodule_form_alter(&$form, $form_state, $form_id) {
if($form_id == 'user_register_form') {
$form['field_fname'] = array(
'#title' => 'Answer if you are a bot',
'#type' => 'textfield',
);
$form['#validate'][] = 'mymodule_user_bot_validate';
}
}
유효성 검사를 추가
function mymodule_user_bot_validate($form, &$form_state) {
if($form['field_fname']['#value'] != '') {
form_set_error('bot_prevention', t('Could not create your account.'));
drupal_goto('user/register');
}
}
그런 다음 CSS와 함께 필드를 숨 깁니다.
이미이 작업을 수행하는 모듈이 있습니까? –
[프로필 2] (https://drupal.org/project/profile2)라는 모듈이 있지만 폼에 다른 필드 만 추가합니다. 여전히 사용자 정의 모듈을 만드는 것이 좋습니다. 그래도 유효성 검사를 직접 수행해야합니다. 내가 제공 한 코드는 꽤 많이 있습니다. – keenydev
감사합니다. 6748485468 –