次のコードは、テーブル CHART および COMMENTS から、MySQL データベースからのコメントを含むメッセージ (ステータス) を取得しています。コメントするときに最初にコードに問題があり、コメントがメッセージの下に表示されます(これは問題ありません。すべてのコメントは、古いものから新しいものへと並べ替えられたコメント付きのメッセージの下にある必要があります)。
ただし、もう一度コメントすると、最初に送信したコメントの下にコメントを追加するのではなく、メッセージと新しいコメントで新しい会話が作成されます。誰かがこれを解決するのを手伝ってくれますか? またはこれを行うためのより良い方法は何ですか?
<?php
$profile= htmlentities($_SESSION['user']['username'], ENT_QUOTES, 'UTF-8');
$reply_acc= htmlentities($_SESSION['user']['id'], ENT_QUOTES, 'UTF-8');
$result = mysqli_query($con, "SELECT ch.msg , ch.msg_id , co.comment , co.comment_id FROM chart AS ch, comments AS co WHERE ch.msg_id=co.comment_id");
while($row = mysqli_fetch_array($result))
{
echo("
<table border='1' width='600px'>
<tr>
<td>
$row[msg]
</td>
</tr>
<tr>
<td>
$row[comment]
<p></p>
<form action='drop_comment.php' method='post'>
<input type='text' name='comment' placeholder='drop a comment...' value='' class='add_hook'>
<input name='comment_id' type='hidden' value='$row[msg_id]'>
<input name='id' type='hidden' value='$row[msg_id]'>
<input name='comment_via' type='hidden' value='$device'>
<input name='comment_time' type='hidden' value='$status_time'>
</form>
</td>
</tr>
</table>
<p></p>
");
}
?>