drupal检索当前登录的用户?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了drupal检索当前登录的用户?相关的知识,希望对你有一定的参考价值。

是否有一个函数来检索Drupal 7的所有当前登录用户?

我试图建立一个基于Get all logged in user in Drupal的查询

$query->join('users', 'u', 's.uid = u.uid'); //JOIN sessions with users
$query->fields('u',array('name')) //SELECT the fields from node
      ->orderBy('timestamp', 'DESC') //ORDER BY timestamp
      ->range(0,10); //LIMIT to 10 records
      ->execute()
      ->fetchAll();
$result = $query->execute();

但是我仍然缺少一些东西来将所有名称检索到$ result作为一个数组,以及如何使用时间戳限制超时可能持续5分钟的活跃用户?

更新我需要把它们放在一个数组中,它们的名字在#title中,而uid在#href中

Joe
#title - Joe
#href - 15

Mary
#title - Mary
#href - 20
答案

检索最近5分钟内登录的用户:

$users_results = db_query('SELECT u.uid , u.name FROM users u 
                   WHERE ( UNIX_TIMESTAMP(NOW()) - u.access ) < (5*60)')
          ->fetchAllKeyed();
dsm($users_results);

编辑

喜欢问:

foreach($users_results as $uid => $name){
  $users[$name] = array('#title' => $name , '#href' => $uid);
}

以上是关于drupal检索当前登录的用户?的主要内容,如果未能解决你的问题,请参考以下文章

Drupal 8 - 如何在视图中显示当前登录用户未创建的所有内容

Drupal 7:视图 3:仅显示当前用户的个人资料信息

如何使用 Backand 检索当前登录的用户

如何在 Drupal 7 中创建一个仅显示基于当前用户字段的过滤列表的视图

关于drupal 7 用户登录 注册 修改注册信息等的问题

Javascript代码片段在drupal中不起作用