Вопрос связан с mysql-запросом
Есть список "статей" выводится на страницу с помощью
while($row = $query -> fetch())
А проблема в том, что нужно отображать не только сами статьи, но и
- количество комментариев к ним
- Логин последнего прокомментировавшего и время комментария
- Логин автора
Для всего этого отдельные запросы, а в других случаях их и того больше получается.
Много разных запросов к БД. И выглядит всё примерно так
while($row = $stmt -> fetch()){
$query = $DB->prepare("SELECT `login`,`gender`,`email` FROM `users` WHERE `id`=:author limit 1");
$query -> bindParam(':author', $row['author']);
$query -> execute();
$T2 = $query -> fetch();
$query = $DB->prepare("SELECT `id`,`time`,`name` FROM `comments` WHERE `comTo`=:id ORDER BY `id` DESC limit 1");
$query -> bindParam(':id', $row['id']);
$query -> execute();
$T = $query -> fetch();
// Допустим так выводит
echo "Название <a href="site.com/topic/'.$row['id'].'">".$row['name'].'</a>';
echo '<br> Автор <a href="'.$row['author'].'">'.$row[''].'</a>';
// и т.д.
} // end while
Суть в том, что
я очень сомневаюсь, что так правильно делать. Слышал запросы в цикле делать грех, а выводить так через
echo
и подавно...
Бд очень будет нагружаться, верно?
Направьте на путь истинный!