2

我正在尝试根据我的 Drupal 站点中成员的 UID 在表中添加记录。我正在使用每个成员页面上的表格来执行此操作。为了使其正常工作,我需要在 mysql 查询中使用 UID。这被包含在一个 Drupal 块中的页面中。

如果我使用 $uid = $user->uid;,它将是我作为管理员的 UID。我需要用我当前正在查看其页面的成员的 UID 填充它。

这是我的代码的一小段:

mysql_query("INSERT INTO profile_values (fid, uid, value) VALUES ('99','$uid', '$newcompany')");

我需要定义 $uid ,这将完美地工作!(这是 Drupal Commons,如果有区别的话)

4

1 回答 1

2

如果您在用户页面上,那么无论当前 URL 是底层路由器路径,用户 IDuser/%在哪里。%

考虑到这一点,您可以使用 Drupal 的arg()函数来获取由字符分割的 URL 部分/,从而获取用户 ID:

// This if statement just checks that you're on a user page.
if (arg(0) == 'user' && is_numeric(arg(1)) {
  $uid = arg(1);
}

请记住,if以上内容也将匹配路径,例如,user/%/edit如果这会导致问题,只需添加&& is_null(arg(2))条件即可。

于 2012-01-10T18:06:40.007 回答