次のコードは、テーブル CHART および COMMENTS から、MySQL データベースからのコメントを含むメッセージ (ステータス) を取得しています。msg_id がテーブル COMMETS のいずれにも一致しなかったため、コメント フィールドとメッセージが HTML ページに表示されないデータベースからメッセージを返すときに、コードの問題が解消されています。
誰かがこれを解決するのを手伝ってくれますか? または私がこれを行うことができるより良い方法は何ですか?
サンプル コード 注: 最初に、メッセージを作成するために使用しているフォームがあり、次にコメントするメッセージを取得し、コメントされたメッセージの下にコメントを返す次のコードがあります。
<?php
//MYQSL query to select from two tables chart and comments
//this query is not returning anything because the script is dieing ON ch.msg_id=co.comment_id, it cant find co.comment_id because has not yet created.
$result = mysqli_query($con, "SELECT ch.msg , ch.msg_id , co.comment , co.comment_id
FROM chart AS ch
JOIN comments AS co
ON ch.msg_id=co.comment_id
ORDER BY ch.msg_id, co.comment_id");
$last_msg = null;
while($row = mysqli_fetch_array($result))
{
if ($row['msg_id'] !== $last_msg) {
if ($last_msg !== null) {
echo "<table>";
}
echo "<table border='1' width='600px'>
<tr>
<td>
$row[msg]
</td>
</tr>\n";
$last_msg = $row['msg_id'];
}
//all comments should appear here if comment_id match msg_id in COMMENTS table
echo("
<tr>
<td>
$row[comment]
<p></p>
//HTML form which will insert the comments into table COMMENTS
//this form should appear below each message since its a comment field
<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]'>
</form>
</td>
</tr>
");
echo "</table>";
}
?>