PDO获得多个价值观

时间:2013-03-23 15:50:28

标签: php pdo

我已经决定使用PDO,因为我看到有些人说它比mysql好。

我有这个代码应该获取uid,ticket_id和事件表。

$query = $db->prepare("SELECT embedded_page.uid, embedded_page.ticket_id, embedded_page.event_table FROM embedded_page WHERE fbp_id = :fbp_id");
$query->bindValue(":fbp_id", $fbp_id, PDO::PARAM_INT);
$query->execute();

echo $compibot_user = $query->fetchObject()->uid;
echo $ticket_id = $query->fetchObject()->ticket_id;
echo $event_table = $query->fetchObject()->event_table;

查看代码,我回复了三个变量 $ compibot_user $ ticket_id $ event_table

我得到的结果是“ 1 ”,这是 $ compibot_user

的结果

$ ticket_id和$ event_table没有回应任何内容。所以我一直想知道为什么它不起作用。这个东西有什么解决方案吗?

3 个答案:

答案 0 :(得分:2)

试试这个:

$sql="SELECT embedded_page.uid, embedded_page.ticket_id, embedded_page.event_table FROM embedded_page WHERE fbp_id = ?";        
$stmt=$db->prepare($sql) or die("Prepare Error");
$stmt->bindParam(1, $fbp_id);       
$stmt->execute();   

$result=$stmt->fetch(PDO::FETCH_ASSOC);

echo  $result['YOUR COLUMN NAME']; //example echo $result['ticket_id']; 

$stmt->closeCursor();
$stmt=NULL;

答案 1 :(得分:1)

尝试类似的事情,或许:

$query = $db->prepare("SELECT embedded_page.uid, embedded_page.ticket_id, embedded_page.event_table FROM embedded_page WHERE fbp_id = :fbp_id");
$query->execute( array( 'fbp_id' => $fbp_id ) );
list ( $compibot_user, $ticket_id, $event_table ) = $query->fetch( PDO::FETCH_NUM );

print "$compibot_user, $ticket_id, $event_table\n";

答案 2 :(得分:0)

最简单的解决方案:

$query = $db->prepare('SELECT `embedded_page`.`uid`, `embedded_page`.`ticket_id`, `embedded_page`.`event_table` FROM `embedded_page` WHERE `fbp_id` = ?');
$query->execute(array($fbp_id));

while(($row = $query->fetch(PDO::FETCH_ASSOC)) !== false) {
   echo $row['uid'], ', ', $row['ticket_id'], ', ', $row['event_table'];
}