Как сделать сгенерированные MySQL сообщения, чтобы быть независимыми от их собственных

я извлекаю сообщения из таблицы под названием post. Я хотел добавить функцию комментирования в этот код, проблема в том, что переменные последних публикаций доминируют над другими в том, что если вы комментируете более старую запись, переменные «последнее сообщение (которое появляется первым из-за критериев ORDER BY ID DECS «
Кто-то, помогите мне сделать эти посты независимыми самостоятельно … Спасибо

 <?php

$sqlhash="SELECT * FROM posts ORDER BY id DESC ";
$result_hash = mysqli_query($conn,$sqlhash);
while($rowhash = mysqli_fetch_assoc( $result_hash))
{
$user = $rowhash['user'];
$message = $rowhash['post'];
$time =  $rowhash['time'];
$id=  $rowhash['id'];
$tt = date('m/d/Y H:i:s',$time);

$my_id = $_SESSION['user_id'];$sql="SELECT * FROM users WHERE Full_name='$user'  ";
$result_set = mysqli_query($conn,$sql);
while($row = mysqli_fetch_assoc( $result_set))
{

$select_username = $row['Full_name'];
$profp = $row['pic'];$my_id = $_SESSION['user_id'];?>

<center><div class='post' style='width:48%; height:40%; align:middle; text-align:left; margin:30px 0'>
<img width="70" height="70" src='uploads/<?php echo $profp; ?>'><br><p style='color:#0c88b5'><b>  <?php echo $id ;?><br><?php echo $user ;?>On:<?php echo $tt ; ?><h4><b><?php echo $message
;?></h4></p><hr>
<?php

$sqlcom="SELECT * FROM comment WHERE hash='$id' ";
$result_com = mysqli_query($conn,$sqlcom);
while($rowcom = mysqli_fetch_assoc( $result_com))
{
$usercom = $rowcom['comment'];
$comenter = $rowcom['user'];

echo "<p style='color:#0c88b5' $comenter</p>". ":" ;
echo $usercom. "<br>" ;

}
if (isset($_POST['commen'])) {$sqlhash= "SELECT * FROM posts WHERE post= '$message' ";
$result_hash = mysqli_query($conn,$sqlhash);
while($rowhash = mysqli_fetch_assoc( $result_hash))
{
$user1 = $_SESSION['username'];
$comment = $_POST['commen'];
$time =  $rowhash['time'];$time2 = $_SESSION['time'];$sql3 = "INSERT INTO comment (user, comment, hash) VALUES
('$user1','$comment', '$id')";

if($conn->query($sql3) === TRUE) {

header('Location: timeline.php');

}else {
echo"error";
}

0

Решение

Внесите некоторые изменения на уровне базы данных в таблицу сообщений, чтобы управлять цепочкой ответов на сообщение.

  1. Добавьте столбец parent_id с нулевым значением по умолчанию, который содержит идентификатор сообщения, для которого сделан ответ или комментарий.
  2. Для каждого комментария или ответа поместите запись в столбец parent_id.
  3. Чтобы показать сообщение, извлеките записи, имеющие parent_id НУЛЕВОЙ. При этом вы получите только пост, разместите заказ по id, чтобы получить в нужном порядке.
  4. Для каждого сообщения вы можете получить комментарий или ответ, поставив условие вроде parent_id НЕ НУЛЬ

Это поможет вам.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]