Я создал форму для окна комментариев, которое я собираюсь использовать на нескольких разных страницах. Он отправляет данные в таблицу «комментарии» в моей базе данных, в которой есть столбцы «id», «author», «body» «created» и «page_name». Я новичок в php, и я пытаюсь понять, как просто отображать комментарии с таким же значением «page_name», что и текущая страница.Как отображать определенные комментарии, хранящиеся в базе данных
Чтобы получить «PAGE_NAME», я использовал этот код в виде:
<input type="hidden" name="page_name" value="<?=$_SERVER['REQUEST_URI']?>" />
Это код, который я строю, чтобы отобразить комментарии:
<div id="comments">
<?php foreach($comments as $comment): ?>
<div class="comment" style="margin-bottom: 2em;">
<div class="author">
<b><?php echo htmlentities($comment->author); ?>:</b>
</div>
<div class="meta-info" style="font-size: 0.8em;">
<?php echo datetime_to_text($comment->created); ?>
</div>
<div class="body">
<?php echo strip_tags($comment->body, '<strong><em><p>'); ?>
</div>
</div>
<?php endforeach; ?>
<?php if(empty($comments)) { echo "No Comments."; } ?>
</div>
Я просто не уверены, как указать странице отображать только те комментарии, которые имеют то же значение «page_name», что и страница, на которой пользователь включен. Любая помощь будет оценена!
Где запрос к базе данных, которая получает комментарии? Вы должны добавить простой оператор 'if' в цикле, чтобы проверить значение' page_name' комментариев в отношении текущего 'page_name', но вы действительно должны отредактировать запрос базы данных, чтобы в первую очередь загружались только соответствующие комментарии. –
Каков ваш запрос на получение данных. – Damith
вам нужно сделать это по запросу, применить фильтр по запросу на основе имени страницы – user1844933