Показать сообщение отдельно
  #8 (permalink)  
Старый 19.01.2016, 20:00
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Здесь почитать о безопасности, в частности баз данных, хотя это малая толика того, что в данном случае требуется. Закрытая сеть, хорошо, если гарантировано только "доверенные" пользователи, но и пауки не дремлют, беда может прийти откуда не ждешь по представлению, к примеру, почитать на досуге. Да и лучше сразу забыть о MySQL движке, переходите на расширение хотя бы mysqli или PDO.

Касаемо поиска по спутнику. Именно потому, что пользователь не ввел имя спутника, а только другие характеристики, нет смысла искать да еще посредством LIKE то, что бессмысленно. Что в конечном итоге будет % + '' + %? Это ведь любое совпадение, и зачем же ковыряться во всех записях, если требуются только иные параметры?

Постройте запрос иначе - в условия попадают только те поля, значения которых выбрал пользователь, те есть:

if($post = array_diff(array_map('trim', $_POST), [''])) {
    //есть заполненные поля, ключи которых и будут ссылаться на поля таблицы в условии
}


И вы получите ровно то, что и требуется - Тогда главный критерий станет именно макс и мин широта и долгота, а спутники должны выйти все. Только не все, а попадающие под эти критерии.

Если таблицу по результату выборки строит скрипт клиента, значит по идее запрос на поиск, это асинхронный запрос. В таком случае отдавайте результат выборки как JSON, по которым построить таблицу просто, и используйте для этого jQuery, иначе к чему она у вас подключается. Это просто на нем будет сделать, я думал вы поясните другое - для чего в вашем коде куча disabled=true/false, что за зависимости, что нужно?

Последний раз редактировалось laimas, 19.01.2016 в 20:10.
Ответить с цитированием