user_load

Хочешь помочь с переводом? Это очень просто и быстро. Лишь зарегистрируйся, и можешь тут же начать переводить.

modules/user/user.module, строка 47

Версии
5 – 6
user_load($array = array())

Загружает объект пользователя.

Параметры

$array Ассоциативный массив аттрибутов пользователя, таких как имя пользователя, email, и т.д. (например array('uid' => 123, 'name' = 'veronika')).

Возвращаемое значение

Полностью загруженный объект пользователя или FALSE, если пользователь не может быть загружен.

▾ 33 функции вызывают user_load()

blog_feed_user in modules/blog/blog.module
Displays an RSS feed containing recent blog entries of a given user.
blog_page_user in modules/blog/blog.module
Показывает страницу Друпал с последними записями в блоге данного пользователя.
comment_admin_settings in modules/comment/comment.module
Menu callback; presents the comment settings page.
comment_form_add_preview in modules/comment/comment.module
Конструктор формы; Формирует и проверяет форму предпросмотра комментария.
comment_validate in modules/comment/comment.module
Проверка данных комментария.
contact_mail_user_submit in modules/contact/contact.module
Process the personal contact page form submission.
contact_menu in modules/contact/contact.module
Реализация hook_menu().
contact_user_page in modules/contact/contact.module
Страница персональных контактов.
drupal_login in modules/drupal/drupal.module
Callback function from drupal_xmlrpc() for authenticating remote clients.
node_access_grants in modules/node/node.module
Fetch an array of permission IDs granted to the given user ID.
node_preview in modules/node/node.module
Generate a node preview.
node_submit in modules/node/node.module
Подготавливает ноду к записи и делает возможным вносить изменния другими модулями.
node_validate in modules/node/node.module
Perform validation checks on the given node.
profile_block in modules/profile/profile.module
Реализация hook_block().
profile_browse in modules/profile/profile.module
Menu callback; display a list of user information.
statistics_user_tracker in modules/statistics/statistics.module
tracker_track_user in modules/tracker/tracker.module
Menu callback. Prints a listing of active nodes on the site.
user_authenticate in modules/user/user.module
user_confirm_delete_submit in modules/user/user.module
user_delete in modules/user/user.module
Delete a user.
user_edit in modules/user/user.module
user_external_load in modules/user/user.module
user_menu in modules/user/user.module
Реализация hook_menu().
user_multiple_role_edit in modules/user/user.module
Callback function for admin mass adding/deleting a user role.
user_pass_reset in modules/user/user.module
Menu callback; process one time login link and redirects to the user page on success.
user_pass_validate in modules/user/user.module
user_save in modules/user/user.module
Save changes to a user account or add a new user.
user_user_operations_block in modules/user/user.module
Callback function for admin mass blocking users.
user_user_operations_unblock in modules/user/user.module
Callback function for admin mass unblocking users.
user_view in modules/user/user.module
_comment_form_submit in modules/comment/comment.module
_user_edit_submit in modules/user/user.module
_user_edit_validate in modules/user/user.module

Код

<?php
function user_load($array = array()) {
  // Dynamically compose a SQL query:
  $query = array();
  $params = array();

  foreach ($array as $key => $value) {
    if ($key == 'uid' || $key == 'status') {
      $query[] = "$key = %d";
      $params[] = $value;
    }
    else if ($key == 'pass') {
      $query[] = "pass = '%s'";
      $params[] = md5($value);
    }
    else {
      $query[]= "LOWER($key) = LOWER('%s')";
      $params[] = $value;
    }
  }
  $result = db_query('SELECT * FROM {users} u WHERE '. implode(' AND ', $query), $params);

  if (db_num_rows($result)) {
    $user = db_fetch_object($result);
    $user = drupal_unpack($user);

    $user->roles = array();
    if ($user->uid) {
      $user->roles[DRUPAL_AUTHENTICATED_RID] = 'authenticated user';
    }
    else {
      $user->roles[DRUPAL_ANONYMOUS_RID] = 'anonymous user';
    }
    $result = db_query('SELECT r.rid, r.name FROM {role} r INNER JOIN {users_roles} ur ON ur.rid = r.rid WHERE ur.uid = %d', $user->uid);
    while ($role = db_fetch_object($result)) {
      $user->roles[$role->rid] = $role->name;
    }
    user_module_invoke('load', $array, $user);
  }
  else {
    $user = FALSE;
  }

  return $user;
}
?>
Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

Вход в систему