Моя проблема в том, что я не получу нужные записи. Поскольку вы можете видеть, что у каждой темы есть board_id, и ей нужно показать правильную доску, но теперь она показывает только stel jezelf voor
и последняя запись должна быть nieuws & events
Klanten db
База данных с платами
База данных с темами
Код для показа записей:
<?php
$toppic = $app->get_topics();
foreach($toppic as $topic){
echo '<div id="topic">';
echo '<div id="topicimg">';
if(file_exists('assets/images/profielfotos/'.$topic['klant_id'])) {
echo '<img class="img-circle" src="/assets/images/profielfotos/'.$topic['klant_id'].'/'.$topic['foto'].'" />';
} else {
echo '<i class="fa fa-fw fa-user img-circle"></i>';
}
echo '</div><div id="topictekst">';
echo '<b><a href="https://tom.lbmedia.nl/reactie"> '.$topic['topicnaam'].'</b></a>';
echo '<a> - ' . $topic['voornaam'] . " " . $topic['achternaam'] . '</a>' ;
echo '<a style="float:right; margin-top:15px;"> reacties</a> <span style="float:right; color:grey; margin-top:15px"class="fa fa-comment"></span>';
echo '<hr><a><span class="badge bg-red">' . $board['topic'] . '</span></a>';
echo '</div></div>';
}
?>
Функции для этого кода:
public function get_boards(){
$getBoards = $this->database->query("SELECT * FROM boards ORDER BY id DESC");
$boards = $this->database->resultset();
return $boards;
}
public function get_topics(){
$getTopic = $this->database->query("
SELECT topics.*, klanten.foto, klanten.voornaam, klanten.achternaam FROM topics
LEFT JOIN klanten ON topics.klant_id=klanten.id
ORDER BY id ASC");
$topics = $this->database->resultset();
return $topics;
}
Резюме, что я хочу:
Я хочу, чтобы он показывал правильную доску с правильной темой. Поскольку вы можете видеть, что на странице продаж есть board_id 2
поэтому ему нужно показать "Nieuws & events", а не "stel jezelf voor",
EXTRA
Также, если это возможно, я хочу, чтобы все записи /div были доступны для клика. любые советы/трюки для этого?
Я думаю, вы пытаетесь сделать что-то похожее, как JOIN
ниже JOIN
, можете ли вы проверить
SELECT boards.topic, topics.topicnaam
FROM topics
LEFT JOIN boards ON boards.id = topics.boards_id
ORDER BY topics.id ASC
Если есть таблица, называемая klanten
как вы сказали, запрос будет выглядеть так:
SELECT boards.topic, topics.topicnaam, klanten.foto
FROM topics
LEFT JOIN boards ON boards.id = topics.boards_id
LEFT JOIN klanten ON topics.ledenpagina_id = klanten.ledenpagina_id
GROUP BY topics.id
ORDER BY topics.id ASC
klanten db