【问题标题】:Fetch a single column by a multi select通过多选获取单列
【发布时间】:2016-01-14 04:08:54
【问题描述】:

我会将每个用户的 ID 保存在会话中,以便在我的登录系统中获取以后的名称。我会在每次登录时这样做。
但问题是:如果我使用 sql 选择更多列,我无法获取单个列。
我如何在 sql 中选择更多列。

我尝试过类似的方法:

$sth->fetch(PDO::FETCH_ASSOC)['password']

但它不适用于我的代码:

$sth = $X['dbh']->prepare("SELECT `password` `id` FROM `users` WHERE `uid` = :uid; "); if (!$sth->execute(array( ':uid' => $X['param']['uid'], ))) { //检查正确的名称,密码... }

【问题讨论】:

标签: php mysql pdo


【解决方案1】:

我如何在 sql 中选择更多列。

不知道。

要么只选择一列,要么获取您选择的所有内容。否则选择就没有意义了。

而且拿到数组后,就可以访问它的成员了。

$user = $sth->fetch(PDO::FETCH_ASSOC);
$pass = $user['password'];

然后在后面的代码中你也可以使用$user['id']。

【讨论】:

  • 我稍后在我的代码中需要 id,但我希望在你的 anwser 中。谢谢!
  • 是 fetch 检索完整的数据集(并选择顶行),还是将数据集限制为 1 行?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-06-17
相关资源
最近更新 更多