I have code that is able to capture the initial comment and the 1st level of replies, but it doesn’t seem to capture the reply to a reply. I know that it requires an indefinite code using some form of recursion, but not quite sure how to properly implement it. Here's the code I'm using:
<?php
$conn = new mysqli('localhost', 'root', 'Jordan123', 'commentsystem2');
$sql1 = "SELECT * FROM comments WHERE r_to = 0";
$result1 = $conn->query($sql1);
while($row1 = $result1->fetch_assoc()) {
$c_id = $row1['id'];
$c_name = $row1['name'];
$c_comment = $row1['comment'];
echo ' <div> <div>ID# '.$c_id.'</div> <div>'.$c_name.'</div> <div>'.$c_comment.'<br><br></div> </div> '; $sql2 = "SELECT * FROM comments WHERE r_to = $c_id"; $result2 = $conn->query($sql2); while($row2 = $result2->fetch_assoc()) { $r_id = $row2['id']; $r_name = $row2['name']; $r_comment = $row2['comment']; $r_to = $row2['r_to']; echo ' <div> <div>ID# '.$r_id.'</div> <div>'.$r_name.' replied to '.$c_name.'</div> <div>'.$r_comment.'<br><br></div> </div> '; }//end of 1st while loop that captures comments.
}//end of 1st while loop that captures comments.
$conn->close();
?>
Notice how some of the replies to replies that are in the table, are missing on output.
Top comments(0)
For further actions, you may consider blocking this person and/orreporting abuse