Registrar usuarios y hacer login programáticamente en Drupal

28-05-2014
 

Drupal logo

Drupal logo


Si necesitamos desarrollar un módulo de Drupal que registre o loguee usuarios podemos hacerlo usando estos dos scripts:

Registrar usuario

        $array = array();
        $array["name"] = $nombre_usuario;
        $array["pass"] = $password;
        $array["mail"] = $mail_usuario;
        $array["status"] = 1;
        $array["roles"] = array();
  
        $userObj = user_save("", $array); 

        /* Poner usuario en sesión */
        $user=$userObj;

Loguear usuario

	$form_state = array();
	$form_state['values']['name'] = $username;
	$form_state['values']['pass'] = $password;
	$form_state['values']['op'] = t('Log In');

	drupal_execute('user_login', $form_state);

Estos scripts los utilizo mucho en integraciones de Drupal donde es necesario importar usuarios o loguear usuarios mediante CAS, por ejemplo.

Espero que os resulte útil.

Leave a Reply

© Albert Coronado Calzada