如果无法识别的用户名或密码,请勿重新加载页面

时间:2017-09-26 12:46:26

标签: php forms drupal drupal-7

我有自定义模块,工作正常。如果登录成功,则用户停留在同一页面中,如果登录不成功,则用户将保持在同一页面中。现在我想不重新加载页面,如果用户登录不成功,则无法识别用户名或密码。

有人可以帮助我吗?

当页面转到current_path()时,我可以添加j:

drupal_add_js('jQuery(document).ready(function () { alert("Hello!"); });', 'inline');

不起作用。

这是我的代码:

function redirect_after_login_user_login(&$edit, $account) {
  if (!isset($_POST['form_id']) || $_POST['form_id'] != 'user_pass_reset') {
    if (in_array('authenticated user', $account->roles)) {
      drupal_add_js('http://js.hs-scripts.com/2851839.js', 'external');
      drupal_goto(current_path());
    }
  }
}
function redirect_after_login_form_alter(&$form, $form_state, $form_id) {
  switch ($form_id) {
    case 'user_login_block':
      $form['#validate'][] = 'my_custom_login_val';
      break;
    default:
      break;
  }
}

function my_custom_login_val($form, &$form_state) {
  $form = form_get_error($form['name']) . form_get_error($form['pass']);
  if($form != '') {
    $_GET['destination'] = current_path();
    drupal_goto(current_path());
    drupal_add_js('
  jQuery(document).ready(function () {
      alert("Hello!");
    });', 'inline');  
    }       
  }
}

0 个答案:

没有答案