2016-12-27 29 views
-1

我正在使用PDO + Mysql,其中我从会话中传递udid,并且如果rowcount大于0,我想从表中以及first_name中获取id,这是表中的fifth列。

的问题是ID总是返回正确的,但不是first_name,不知道为什么

$stmt = $con->prepare("SELECT * FROM members WHERE id= :udid");      
$stmt->bindValue(':udid', $_SESSION['udid']); 
$stmt->execute(); 

$id=$stmt->fetchColumn(); 
$first_name=$stmt->fetchColumn(5); 
+3

你应该真的命名你想选择的列,而不是使用'select *' –

+0

@juergend我想返回10列中的差不多9列 – user580950

+0

将行作为关联数组取出并使用fie ld名称来访问它?你为什么需要使用数字? – Clive

回答

1

我认为你可以使用fetch()来获取整个行,然后由它的名字叫每列

$stmt->execute(); 
$result = $stmt->fetch(); 
$id = $result['id']; 
$name = $result['name']; 
//and so on for all the columns 
+0

@yourcommonsense谨慎解释downvote?或者只是...它的错误,错误,失败或其他什么 – Fabio

+0

@yourcommonsense只是在这里downvote的一切,似乎 – user580950

+0

是的。它被称为“挫折”。没有什么个人的。就在你浪费你的生命寻找重复的时候,有人偷偷摸摸地回答一个愚蠢的问题。但我必须恭喜你 - 最后你设法写出了一个没有错的答案。 –

相关问题