Вывод всех строк с базы данных selector multiple
требуется помощь,есть таблица, в ней есть id сериала - tid и id жанра - jid хочу сделать поиск по жанрам но поиск ищет строки где есть последний из выбранных пользователем жанра, для поиска стоит select multiple, нужно сделать так чтобы из базы данных выводились строки где есть сразу все выбранные жанры пользователем а не последний, вот код селектора -
<select name="sjanrs[]" id="janrs" class="chosen-select" multiple data-placeholder="По каким жанрам искать">
<option value="1">
Альтернативная история
</option>
<option value="2">
Альтернативная реальность
</option>
<option value="3">
Ангелы
</option>
<option value="4">
Андроиды
</option>
<option value="5">
Антивойна
</option>
<option value="6">
Антиутопия
</option>
<option value="7">
Баскетбол
</option>
<option value="8">
Безумие
</option>
<option value="9">
Бисёнэн
</option>
<option value="10">
</select>
Код обработчика PHP Но он видимо как-то не правильно работает -
foreach ($_POST['sjanrs'] as $janr) {
$jid = (int)$janr;
$Result = mysqli_query($CONNECTDB, "SELECT `tid` FROM `janrs` WHERE `jid` = $jid");
}
Ответы (1 шт):
Автор решения: Kirill
→ Ссылка
$sjanrs = $_POST['sjanrs'];
array_walk($sjanrs, function (&$janr) {
$janr = (int)$janr;
})
unset($janr);
$result = mysqli_query($CONNECTDB, "SELECT `tid` FROM `janrs` WHERE `jid` IN (implode(',', $sjanrs))");
while($row = $result->fetch_assoc()) {
// $row['tid']
}