dongxi4235
2016-06-12 19:52
浏览 29
已采纳

使用PDO和PHP获取数据时出错

I'm developing a web based software that uses MySQL and PHP on the backend.

I'm trying to obtain data with a complex query and in the end I just obtain the query.

   function consulttimes(){
$pdo = connect();
 try{

    $consult = $pdo->prepare("SELECT credentials.realname, timestamp_greenhouse.* FROM times.credentials, times.timestamp_greenhouse WHERE timestamp_greenhouse.id = credentials.id;"); 
    $consult->execute();
    $consult->fetch(PDO::FETCH_ASSOC);
    echo json_encode($consult); 


    //file_put_contents('times.json', $json);



}
catch(PDOException $e) {
    echo $e -> getMessage(); 
}
}

I have all the databases and the query works perfectly on phpmyadmin. Can someone help me with this?

Cheers!

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • dongxie3701 2016-06-12 20:10
    已采纳

    I'm trying to obtain data with a complex query and in the end I just obtain the query.

    The problem is because of this line,

    echo json_encode($consult); 
    

    $consult is a PDOStatement object returned from the prepared statement. I believe you're trying to encode the row obtained from ->fetch(PDO::FETCH_ASSOC) method.

    So first fetch the row from the result set, store it in a variable and then apply json_encode on it, like this:

    // your code
    
    $consult->execute();
    $result = $consult->fetch(PDO::FETCH_ASSOC);
    echo json_encode($result); 
    
    打赏 评论

相关推荐 更多相似问题