我使用以下代码将数组值传递给mysql查询但是数组到字符串转换错误将会出现
$sql =mysql_query("SELECT userId from groupmembers where groupId='$groupId'");
$bjson = array();
$i = 0;
while($result=mysql_fetch_assoc($sql))
{
$bjson[$i]['userId'] = $result['userId'];
$i++;
}
$query = "SELECT firstName
FROM users
WHERE userId IN('" . implode("','", $bjson) ."')";
答案 0 :(得分:6)
不需要两个查询和循环只需使用
SELECT firstName
FROM users
WHERE userId IN(SELECT userId from groupmembers where groupId='$groupId')
注意: - 不推荐使用mysql而是使用mysqli或PDO
答案 1 :(得分:1)
可以在查询中使用连接来保存循环
SELECT u.firstName FROM users u JOIN groupmembers gm ON gm.userID = u.userID WHERE gm.groupID='$groupId'