У меня проблема с отображением вещей при нажатии на topic.
Что я хочу
Я также хочу показать записи из вторая база данных, которые имеют правильный topic_id, поэтому, если вы нажмете на тему, нужно будет показать только "onderwerpen" (голландский для субъектов), у которых есть этот topic_id
Мой код:
<div class = "box box-info">
<div class = "panel panel-default">
<div class = "panel-heading main-color-bg">
<h3 class = "panel-title">Topics</h3>
</div>
<div class = "panel-body">
<?php
$toppics = $app->get_topics();
foreach($toppics as $topic){
echo '<div class = "col-md-6">';
echo '<div class = "well dash-box">';
echo '<h3>'.$topic['onderwerp'].'</h3><br>';
echo '<a href = "####">' .$topic['omschrijving'].'</a>';
echo '</div>';
echo '</div>';
}
?>
</div>
</div>
</div><!-- /.box -->
Функция, которую я использую:
public function get_topics(){
$getTopic = $this->database->query("SELECT * FROM topics ORDER BY id DESC");
$topics = $this->database->resultset();
return $topics;
}
База данных onderwerpen
После нажатия на тему теперь отображаются все "onderwerpen" из базы данных. Код для этого:
<?php
$onderrwerp = $app->get_onderwerpen();
foreach($onderrwerp as $onderwerp){
echo '<div class = "well well-sm">';
if (file_exists('assets/images/profielfotos/'.$onderwerp['klant_id'])) {
echo '<img class = "img-circle" src = "/assets/images/profielfotos/'.$onderwerp['klant_id'].'/'.$onderwerp['foto'].'" />';
} else {
echo '<i style = "font-size: 2.5em;" class = "fas fa-user-circle"></i>';
}
echo '<b><a href = "https:/####/reactie"> '.$onderwerp['onderwerpnaam'].'</b></a>';
echo ' - ' . $onderwerp['voornaam'] . ' ' . $onderwerp['achternaam'];
echo '</div>';
}
?>
Функция Get_onderwerpen:
public function get_onderwerpen(){
$getOnderwerp = $this->database->query("
SELECT onderwerpen.*, klanten.foto, klanten.voornaam, klanten.achternaam FROM onderwerpen
LEFT JOIN klanten ON onderwerpen.klant_id=klanten.id
ORDER BY id ASC");
$onderwerpen = $this->database->resultset();
return $onderwerpen;
}
@MehrdadEP добавил это в вопрос
Вы пробовали использовать некоторые JOIN для решения проблемы?
хорошо, вы должны отправить topic_id в качестве аргумента функции get_onderwerpen () и использовать его в запросе sql как оператор where
что вы имеете в виду, говоря «вам нужно отправить topic_id в качестве аргумента, чтобы получить onderwerpen»? @MehrdadEP
get_onderwerpen () должен возвращать все темы с определенным topic_id
Добавьте предложение WHERE к вашему выбору: SELECT ... LEFT JOIN ... ON ... WHERE blabla.id = $_GET['topic_id'] ORDER BY .... Как сказал @MehrdadEP.






покажите нам функцию get_onderwerpen ()