在哪里($数组)和东西=?

时间:2014-11-22 20:04:06

标签: php mysql mysqli

我有这个,其中$results_array是一个内爆整数数组:

if ($stmt = $cxn->prepare('SELECT id FROM follows WHERE id IN (' . $results_array . ') AND user_id = ?')) {
    $stmt->bind_param('i', $user_id);
    $stmt->execute();
    $stmt->store_result();
    $stmt->bind_result($temp);

    $final_array = array();
    while($stmt->fetch()) {
        $final_array[] = $temp;
    }

    $final_array = implode(',', $final_array);

    $stmt->close();
}

问题在于查询的AND检查。如果我删除AND检查,它可以正常工作,但我需要在那里进行检查。我该如何解决这个问题?

2 个答案:

答案 0 :(得分:0)

尝试在屏幕上打印$ results_array以了解数组的值,然后您可以运行查询以确切地知道错误的位置。

答案 1 :(得分:0)

您的查询使用问号占位符而不是:冒号,行 $ stmt-> bind_param('i',$ user_id); 想要使用1代替'i' 。那或用 AND user_id =:i

替换SQL