Jor*_*dan 3 php mysql sql arrays
$sql = "SELECT *
FROM `likes`
WHERE `pid` = $pid";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
$likers = array();
while($row = $result->fetch_assoc()) {
$likers[] = $row['uid'];
echo implode(", ", $likers);
}
} else {
return "Be the first to like this status...";
}
Run Code Online (Sandbox Code Playgroud)
例如,它应该显示如果查询在3行结果与用户ID下面:21,20,44
它应显示:21,20,44 但它显示:2121,20,44 看它如何显示第一个值?
另一个例子:50,60,70 但显示:5050,60,70
有什么方法可以解决?提前致谢
您正在while循环中打印结果,这就是它发生的原因.首先在阵列中将有21个,然后它将是21,20等等.在循环外打印它.尝试 -
while($row = $result->fetch_assoc()) {
$likers[] = $row['uid'];
}
echo implode(", ", $likers);
Run Code Online (Sandbox Code Playgroud)