从用户ID的数组中选择帖子ID - mysql

时间:2017-05-21 02:39:56

标签: php mysql sql arrays mysqli

我有一个我跟随的ID数组 如果我回应:

echo json_encode($followingIds);

打印:

[{"User_two_id":"3"},{"User_two_id":"4"},{"User_two_id":"5"}]

我现在想从Post表中选择All id,其中Author的值/ s等于我的数组中的User_two_id的值。

“作者正在索引user_two的id”

到目前为止,这是我无法正常工作的地方

function getPosts( $follwingIds ) {

        $sql = "SELECT id
        FROM posts
        WHERE Author IN ('$follwingIds')
        GROUP BY id
        HAVING COUNT(DISTINCT Author)";

    $result = $this->conn->query( $sql );

    if ( $result != null ) {

        while ( $row = $result->fetch_assoc() ) {
            $returnArray[] = $row;
        }
    }




}

1 个答案:

答案 0 :(得分:0)

这里有一个问题:

WHERE Author IN ('$follwingIds')

这里$follwingIds JSON object,其中mysql IN需要以逗号分隔值的值。因此,不要将json数组转换为字符串,如:

$follwIds = implode(',', array_column($follwingIds, 'User_two_id'));

并在查询中使用它,如:

WHERE Author IN ($follwIds)