运行查询时始终获取NULL

时间:2014-07-06 16:38:16

标签: php html mysql sql

因此,我尝试在用户刷新页面时获取更新的喜欢列表。问题是我得到了

  

注意:未定义的变量:在第54行的/Users/matt/Desktop/Likers/home/index.php中发布

第54行是var_dump($post['id']);。我最终得到NULL,这应该发生。现在我在这里查询

$qry = $con->prepare("SELECT * FROM posts WHERE post_user IN (SELECT follow_to FROM followers WHERE follow_from = :user)");
$qry->bindValue(':user', $username, PDO::PARAM_STR);
$qry->execute();

    $posts = array();
    while($row = $qry->fetch(PDO::FETCH_ASSOC)){
        $posts[] =  array(
        'post_user' => $row['post_user'],
        'id' => $row['id'],
        'post_date' => $row['post_date'],
        'post_likes' => $row['post_likes'],
        'post_content' => $row['post_content']
    );
    }   

var_dump($post['id']);

所以我基本上没有得到id。在我的数据库中,我有id

2 个答案:

答案 0 :(得分:2)

您正在定义数组$posts[],然后转储$post['id']。首先,$post应为$posts,其次,您要添加到数组中,因此它将具有索引$posts[0]['id']

答案 1 :(得分:0)

您将获得像

这样的记录数组
$posts = array('0' => array('id' => 1), '1' => array('id' => 2));

所以你需要使用它的索引值或使用foreach循环找到id值。

foreach($posts as $post){
   var_dump($post['id']);
}