Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.73/55: Рейтинг темы: голосов - 55, средняя оценка - 4.73
0 / 0 / 1
Регистрация: 11.08.2015
Сообщений: 96

Фильтр поиска для сайта

08.05.2017, 18:34. Показов 12166. Ответов 51
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Подскажите как организовать такой фильтр..
Может натолкнете на путь истинный?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
08.05.2017, 18:34
Ответы с готовыми решениями:

Фильтр для поиска
Доброго времени суток Появилось желание сделать фильтр для поиска с выбором подходящих вариантов как в поисковых системах типа...

Движок поиска для самописного сайта
Есть самописный движок, необходимо организовать поиск по БД (mysql), по двум полям - русское название и название на английском языке. При...

Фильтр поиска
Хочу сделать фильтр по стране, городу, половой принадлежности и возрасту. Как это можно сделать? Я знаю как ищется по определенному...

51
 Аватар для fanatikus
1932 / 1523 / 703
Регистрация: 17.11.2012
Сообщений: 6,585
08.05.2017, 23:40
Студворк — интернет-сервис помощи студентам
в начало файла
PHP
1
2
error_reporting(E_ALL);
ini_set('display_errors', 1);
Добавлено через 3 минуты
код рабочий, проверил
0
0 / 0 / 1
Регистрация: 11.08.2015
Сообщений: 96
09.05.2017, 11:54  [ТС]
Так же пустая страница..

Добавлено через 4 минуты
Запрос в PHPMYadmin выполняется отображает записи.
0
 Аватар для fanatikus
1932 / 1523 / 703
Регистрация: 17.11.2012
Сообщений: 6,585
09.05.2017, 14:00
100% рабочий код
PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
        <?php
        if (isset($_POST['sub'])) {
            $mysqli = new mysqli('localhost', 'root', '', 'db');
            if ($mysqli->connect_error) {
                die('Connect Error (' . $mysqli->connect_errno . ') ' . $mysqli->connect_error);
            }
 
            $rayon = implode("','", $_POST['rayon']);
            $level = implode("','", $_POST['level']);
 
            $sql = "select * from choice_tb where `rayon` in ('" . $rayon . "') and `level` in ('" . $level . "')";
            $res = $mysqli->query($sql);
            if ($mysqli->errno) {
                echo 'Select Error (' . $mysqli->errno . ') ' . $mysqli->error;
            } else {
                if ($res->num_rows) {
                   while ($row = $res->fetch_assoc()) {
                        ?>
                        <p> <a href="view.php?id=<?php echo $row['id']; ?>"><?php echo $row['adress']; ?></a> </p>
                    <?php }
                } else {?>
                    <p>данных в базе не найдено</p>
                <?php
                }
            }
        }
        ?>
0
0 / 0 / 1
Регистрация: 11.08.2015
Сообщений: 96
09.05.2017, 14:37  [ТС]
Выводит "Данных в базе не найдено" Хотя они там есть...
0
 Аватар для fanatikus
1932 / 1523 / 703
Регистрация: 17.11.2012
Сообщений: 6,585
09.05.2017, 14:44
Цитата Сообщение от krayder Посмотреть сообщение
Хотя они там есть..
именно с теми параметрами которые выбираете в форме? не может такого быть.
покажите дамп таблицы .
0
0 / 0 / 1
Регистрация: 11.08.2015
Сообщений: 96
09.05.2017, 15:25  [ТС]
Структура таблицы `choice_tb`
MySQL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
--
 
CREATE TABLE IF NOT EXISTS `choice_tb` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `adress` varchar(255) NOT NULL,
  `level` int(11) NOT NULL,
  `total_area` int(11) NOT NULL,
  `price` varchar(200) NOT NULL,
  `description` varchar(255) NOT NULL,
  `full_description` text NOT NULL,
  `rayon` varchar(255) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 AUTO_INCREMENT=9 ;
 
--
-- Дамп данных таблицы `choice_tb`
--
 
INSERT INTO `choice_tb` (`id`, `adress`, `level`, `total_area`, `price`, `description`, `full_description`, `rayon`) VALUES
(1, 'Пархоменко 120', 4, 80, '2000000', 'Косметический ремонт', 'Хорошая квартира в центре красного камня.', 'Кр.камень'),
(2, 'Мира 56', 3, 40, '2000000', 'Без ремонта', 'Квартира требующая ремонта. Цена без торга.', 'Город'),
(3, 'Пархоменко 124', 5, 74, '1900000', 'Большая светлая уютная.', 'Хороший выбор для будущей семьи. ', ''),
(4, 'Газетная 34', 2, 54, '1700000', 'маленькая квартира.', 'Торг реальному покупателю.', 'ГГМ'),
(5, 'Жуковского 56', 5, 70, '1800000', 'Берите не пожалеете', 'торг', ''),
(6, 'Строителей 12', 5, 42, '1500000', 'Хорошая квартира', 'Уютная солнечная ', 'Город'),
(7, 'Пархоменко 20', 3, 70, '1800000', '', '', 'Кр.камень'),
(8, 'Пархоменко 22', 4, 70, '1800000', '', '', 'Кр.камень');

Фрагмент формы
HTML5
1
2
<input type="checkbox" name="rayon[]" value="Кр.камень">Кр.камень<br>
<input type="checkbox" name="level[]" value="4">4<br>
Добавлено через 29 минут
Через var_damp приходит select * from choice_tb where `rayon` in ('Кр.камень') and `level` in ('4')
вбиваю его в PHPmyadmin все работает выводит 2 записи..
0
Эксперт PHP
3900 / 3238 / 1353
Регистрация: 01.08.2012
Сообщений: 10,914
09.05.2017, 15:35
Добавьте сразу после подключения к БД:
PHP
1
$mysqli->set_charset("utf8");
0
0 / 0 / 1
Регистрация: 11.08.2015
Сообщений: 96
09.05.2017, 15:40  [ТС]
Не помогло..
0
 Аватар для fanatikus
1932 / 1523 / 703
Регистрация: 17.11.2012
Сообщений: 6,585
09.05.2017, 16:46
какой-то полтергейст.
у меня все прекрасно работает.
в таблице, поля соответствуют полям в запросе.
покажите полностью код, который вы сейчас используете.
0
0 / 0 / 1
Регистрация: 11.08.2015
Сообщений: 96
10.05.2017, 13:19  [ТС]
<form method="POST" action="input.php">
<p>Выбор района</p>
<p>
<input type="checkbox" checked='ГГМ' name="rayon[]" value="ГГМ">ГГМ<br>
<input type="checkbox" name="rayon[]" value="ВМЗ">ВМЗ<br>
<input type="checkbox" name="rayon[]" value="Выя">Выя<br>
<input type="checkbox" name="rayon[]" value="Город">Центр<br>
<input type="checkbox" name="rayon[]" value="Кр.камень">Кр.камень<br>
<input type="checkbox" name="rayon[]" value="Вагонка">Вагонка<br>
<input type="checkbox" name="rayon[]" value="Тагилстрой">Тагилстой<br>
<input type="checkbox" name="rayon[]" value="ГГМ">ГГМ<br>
</p>
<p>Этаж</p>
<p>
<input type="checkbox" name="level[]" value="">любой<br>
<input type="checkbox" name="level[]" value="1">1<br>
<input type="checkbox" name="level[]" value="2">2<br>
<input type="checkbox" name="level[]" value="3">3<br>
<input type="checkbox" name="level[]" value="4">4<br>
<input type="checkbox" name="level[]" value="5">5<br>
<input type="checkbox" name="level[]" value="cb5">более 5<br>
</p>
<p><input type="submit" name="sub" value="Выбрать"></p>
</form>

----------------------------
<?php
if (isset($_POST['sub'])) {

$mysqli = new mysqli('localhost', 'admin', '1234', 'choice');

if ($mysqli->connect_error) {
die('Connect Error (' . $mysqli->connect_errno . ') ' . $mysqli->connect_error);
$mysqli->set_charset("utf8");
}

$rayon = implode("','", $_POST['rayon']);
$level = implode("','", $_POST['level']);

$sql = "select * from choice_tb where `rayon` in ('" . $rayon . "') and `level` in ('" . $level . "')";
$res = $mysqli->query($sql);
var_dump($sql);
if ($mysqli->errno) {
echo 'Select Error (' . $mysqli->errno . ') ' . $mysqli->error;
} else {
if ($res->num_rows) {
while ($row = $res->fetch_assoc()) {
?>
<p> <a href="view.php?id=<?php echo $row['id']; ?>"><?php echo $row['adress']; ?></a> </p>
<?php }
} else {?>
<p>данных в базе не найдено</p>
<?php
}
}
}
?>
0
 Аватар для fanatikus
1932 / 1523 / 703
Регистрация: 17.11.2012
Сообщений: 6,585
10.05.2017, 13:32
и? все работает
Миниатюры
Фильтр поиска для сайта  
0
0 / 0 / 1
Регистрация: 11.08.2015
Сообщений: 96
10.05.2017, 13:40  [ТС]
Что может быть? Может Openserver поставит?

Добавлено через 4 минуты
string(85) "select * from choice_tb where `rayon` in ('ГГМ','Кр.камень') and `level` in ('3','4')"
данных в базе не найдено
0
 Аватар для fanatikus
1932 / 1523 / 703
Регистрация: 17.11.2012
Сообщений: 6,585
10.05.2017, 13:43
Цитата Сообщение от krayder Посмотреть сообщение
Может Openserver поставит?
попробуйте
Цитата Сообщение от krayder Посмотреть сообщение
action="input.php">
код php в файле input.php?
html и php в одном файле?
0
0 / 0 / 1
Регистрация: 11.08.2015
Сообщений: 96
10.05.2017, 13:57  [ТС]
Код обработчика в input.php
Он в другом файле.

Добавлено через 45 секунд
форма на indx.php

Добавлено через 10 минут
Можно еще вопросик? Как можно сделать чекбокс с площадью к примеру от 50 до 80? В value указать значение?
0
 Аватар для fanatikus
1932 / 1523 / 703
Регистрация: 17.11.2012
Сообщений: 6,585
10.05.2017, 14:06
Цитата Сообщение от krayder Посмотреть сообщение
В value указать значение?
да, но тогда в php другая логика обработки.
0
0 / 0 / 1
Регистрация: 11.08.2015
Сообщений: 96
10.05.2017, 14:08  [ТС]
можете помочь?
0
 Аватар для fanatikus
1932 / 1523 / 703
Регистрация: 17.11.2012
Сообщений: 6,585
10.05.2017, 14:11
Цитата Сообщение от krayder Посмотреть сообщение
можете помочь?
а что, первый вопрос уже решили? заработало?
0
0 / 0 / 1
Регистрация: 11.08.2015
Сообщений: 96
10.05.2017, 14:14  [ТС]
пока нет..
0
 Аватар для fanatikus
1932 / 1523 / 703
Регистрация: 17.11.2012
Сообщений: 6,585
10.05.2017, 14:20
Цитата Сообщение от krayder Посмотреть сообщение
пока нет..
может сначала решить одну проблему?
0
0 / 0 / 1
Регистрация: 11.08.2015
Сообщений: 96
10.05.2017, 14:22  [ТС]
Предположения из за Денвера.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
10.05.2017, 14:22
Помогаю со студенческими работами здесь

Фильтр поиска
Всем не спящим привет. Я все никак не могу сделать нормальный запрос к бд, что бы работал фильтр. Может кто что подскажет. И так есть у нас...

Фильтр поиска из SQL
Добрый день . Есть сайт заявок нужно реализовать поиск по категориям . Никак немогу разобраться . Суть такова Выбираем несколько...

Фильтр для сайта
Всем привет! Скажу сразу я не опытный программист PHP и если что-то не так, прошу не агрится. Есть код с сайта, в нем разметка селект от...

Ядро для умного поиска. Алгоритм. Создать поиск для сайта
Доброго времени суток. Хочу реализовать поиск по статьям на сайте. И надеюсь на ваше помощь. Есть таблица, где мы храним айди...

Скрипт (система) поиска для сайта
Подскажите ХОРОШИЙ скрипт поиска по сайту. Сайт написан на php. Все страницы на php. Не предлагайте GOOGLE, пожалуйста! Добавлено...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru