我需要根据photo_id选择多条评论(如果有的话)。据我所知,你可以使用WHERE子句,但我不确定如何选择多个并将它们存储在某种数组中?
e.g。
$result = mysqli_query($conn,"SELECT * FROM comments WHERE photo_id='$photo1id'");
$row = $result->fetch_assoc(); // but there's more than 1 row
如果例如$photo1id == 21
,我如何获得所有评论(在这种情况下为2)?某种while循环?
在PHP文件的末尾我有这个:
echo json_encode(array('photo1id'=>$photo1id));
我需要以某种方式存储该数组中的每一行,因为我需要使用$ .getJSON在另一个PHP文件中检索数据。或者也许有更好的解决方案。
答案 0 :(得分:1)
Loop
通过它并生成array
-
while($row = $result->fetch_assoc()) {
$comments[] = $row;
}
之后,您可以将数组作为json
发送。
echo json_encode($comments);
答案 1 :(得分:0)
是否有更多行,您需要使用循环。
while ($row = $result->fetch_assoc()) {
// your code here
}
答案 2 :(得分:0)
尝试以下代码:
//Run query
$result = mysqli_query($conn,"SELECT * FROM comments WHERE photo_id='$photo1id'");
//While there is a result, fetch it
while($row = $result->fetch_assoc()) {
//Do what you need to do with the comment
}
如果您不想立即打印代码,可以创建一个数组:
$x=0;
while($row = $result->fetch_assoc()) {
$comment[$x]=$row['comment'];
$x++;
}