我有两个表是sql 1)friends_details和2)user_info。 现在使用下面的查询正在逐渐使用$number = is coming from app
传递字符串数组在sql查询使用PHP
$sql = "select friends from user_info WHERE user_number ='$number' ";;
$result = mysqli_query($conn, $sql) or die("Error in Selecting " . mysqli_error($conn));
//create an array
$emparray = array();
while($row =mysqli_fetch_assoc($result))
{
$emparray[] = $row;
}
现在$emparray
具有的字符串fromat朋友名字的特定的好友列表。现在我想将这个数组传递给另一个查询,以便我可以找到这些朋友的详细信息。并找不到办法。我试过这段代码。
$friendsArray2 = "'" .implode("','", $emparray ) . "'";
$query120 = "SELECT * FROM friends_deataisl WHERE name IN ($friendsArray2)";
echo $query120;
和echo $ query120的结果是SELECT * FROM friends_deatails WHERE name IN ('Array','Array')
因此,这意味着值不会在查询中去。任何帮助,将不胜感激。 而我已经检查$ emparray不是空它包含的名称,这意味着第一次查询是正确的,但问题是在第二次查询。
因为mysqli_fetch_assoc回报阵列,你必须像'$ emparray [] = $ row ['friends'];''一样填写'emparray'。 – maximkou