2009-09-21 2 views
4

Я работаю над системой на основе Drupal, которая не будет напрямую обрабатывать обработку входа в систему.Есть ли крючок drupal 6 для обработки аутентификации входа в систему без отправки из формы входа?

Скорее другая система будет обрабатывать аутентификацию пользователя и передавать данные непосредственно в Drupal через параметр GET.

Можно ли подключить функцию, которая будет обрабатывать этот параметр GET и проверять пользователя?

Я вхожу в развитие этой системы поздно, и многие вещи уже выбраны для меня, поэтому я остался работать с тем, что уже было разработано. Любой совет будет очень благодарен!

ответ

5

Я смог выполнить то, что мне было нужно, используя hook_init() и user_external_login_register().

Не совсем уверен, почему я не думал об этом раньше!

+1

Спасибо, что нашли время сообщить о своем решении. Вы можете принять этот ответ, чтобы показать, что это решило проблему для вас. – ctford

+0

Спасибо, ctford! Я до сих пор довольно новичок в том, как работает SO. – PrairieHippo

0

Почему бы не просто проверить $ _GET in the function that defines the form? You can then call user_authenticate($form _values).

http://api.drupal.org/api/function/user_authenticate/6

Вы также можете просто проверить учетные данные в $ _GET, когда форма была отправлена ​​с помощью крюка проверки.

http://api.drupal.org/api/drupal/developer--topics--forms_api_reference.html#validate

Затем можно воспользоваться формой _set методы _error(), как вы бы для любой другой ошибки проверки, но я понимаю, что это не приемлемо?

+0

Можно ли сделать валидацию без предоставления формы? – PrairieHippo

+0

Нет, проверка формы выполняется на форме submit. – ctford