Панель содержимого файла JFrame
имеет BorderLayout
. Если вы поместите компонент в BL без ограничений, он окажется в CENTER
. Центр может отображать только один компонент.
Для немедленного эффекта я предлагаю:
f.add(top, BorderLayout.PAGE_START);
f.add(mid);
f.add(bot, BorderLayout.PAGE_END);
f.setSize(500, 500);
и вызовите pack()
непосредственно перед setVisible(true)
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
на f.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
in.setVisible(true);
За исключением самого кадра , возьмите их. Компонент автоматически становится видимым, когда он добавляется в контейнер верхнего уровня, и сам контейнер становится видимым. public class EncDecExample extends JFrame
на public class EncDecExample
. Этот код содержит ссылку на кадр, и это правый путь. ORDER BY RAND()
, если вам действительно не нужен случайный порядок, так как эти quereis не будут кэшироваться. if
s также не самая лучшая идея , Представьте, что на этой странице будет 400 фильтров. Как бы выглядел ваш код? :) Вот как я это сделал:
Оберните значения фильтра в контейнере:
$.ajax({
url: 'action.php',
method: 'POST',
data: {
locations: {
calangute : calangute,
baga : baga,
morjim : morjim,
candolim : candolim,
anjuna : anjuna,
}
},
success:function(response){
$('.display').html(response);
}
});
Затем на стороне сервера :
<?php
// to remove empty values
$filter = isset($_POST['locations']) ? array_filter($_POST['locations']) : [];
$query = empty($filter)
? "SELECT * FROM rooms"
: "SELECT * FROM rooms WHERE location IN ('".implode("', ", $filter)."')";
$run = mysqli_query($conn, $query);
if (mysqli_num_rows($run) > 0) {// display data }
И еще несколько вещей, которые не имеют прямого значения:
$filter
, если вы выбрали несколько? – t1gor 21 August 2017 в 12:50