2
私はPHPスクリプトを使用して、データベースにコメントをプルしてアプリケーションを設定しています。データベースがどのように設定されているかは、二次コメント、つまりコメントへの返信にはreply_idがあります。私が見ている問題は、無回答のすべてのコメントですが、それを持っている1つのコメントと同じ返信が表示されています。私はそれの二次的なコメントで配列を削除しようとしたが、役に立たない。誰かが値を分けていない箇所を指摘することができますか?PHPを使用してMYSQLデータベースからコメントを引き出す予期せぬJSON結果が発生する
// Create connection
$conn = mysqli_connect($servername, $username, $password,$db);
// Check connection
if ($conn->connect_error)
die("Connection failed: " . $conn->connect_error);
$memory_id=$_POST['memory_id'];
$query ="Select * FROM comment WHERE memory_id= '$memory_id' and reply_id=''";
$dbquery = mysqli_query($conn,$query);
$query2= "Select * FROM comment WHERE memory_id='$memory_id' and reply_id='$comment_id'";
if($dbquery){
$result = array();
while($row = mysqli_fetch_array($dbquery))
{
$temp_array= array();
unset($temp_array['replys']);
$temp_array['user_id']=$row['user_id'];
$temp_array['comment_id']=$row['comment_id'];
$temp_array['text']=$row['comment'];
$comment_id= $row['comment_id'];
$temp_array['replys']=array();
$dbquery2 = mysqli_query($conn,$query2);
if($dbquery2){
while ($row2 = mysqli_fetch_array($dbquery2)){
$temp_array['replys'][]=array(
'user_id'=>$row2['user_id'],
'comment_id'=>$row2['comment_id'],
'text'=>$row2['comment']);
}//Feeds comments
array_push($result, $temp_array);
}
}//pulls initial command
echo json_encode($result);
}
else
{
$response["error"] = TRUE;
$response["error_msg"] = "No memory FOund";
echo json_encode($response);
}
?>
チャームのように働いて、助けと洞察力に感謝します。 – Sean