mrusklon
@mrusklon

Как перекинуть работу сервера на пользовательскую часть?

Есть у меня форма, выбор значения
<select class="one" name="text">
        <option value="0">нет</option>
        <?php
        while ($user2 = $stmt2->fetch(PDO::FETCH_ASSOC))
            echo "<option value=\"{$user2['id']}\">{$user2['pred']}</option>";
        ?>
    </select>


в зависимости от того что тут выберем , value идет через ajax на сервер , с сервера
SELECT * FROM objects WHERE parent_id = $name
где $name это значения из value , так вот таким макаром мы делаем много запросов к базе , а по сути это одна таблица, она маленькая , а каждый раз ждать пока сервер вернет ответ для заполнения таких селектов очень долго , особенно если медленный интернет.

И тут у меня родилась идея, может выбрать сразу всю таблицу из БД и просто использовать те значения которые мне нужны? Только я не могу представить как это должно работать на js/jquery , кто на пальцах логику обьяснит?

Берем первый select val например там "2" , значит берем из выбранной таблицы все параметры где parent_id= 2 и вставляем их во второй select
  • Вопрос задан
  • 73 просмотра
Пригласить эксперта
Ответы на вопрос 2
neuotq
@neuotq
full stack php, стартапы, прокрастинация
В вашем случае, чтобы не погружаться во все эти состояния приложений и новый фронтенд с реактивными компонентами, легче всего будет использовать DataTable библиотека для Jquery с крайне широким функционалом по фильтрации таблиц, в том числе с работой только на клиенте с полностью загруженными данными изначально.
Библиотека не сложная, почитайте документацию, поиграйтесь на сайте с примерами я думаю вы быстро решите вашу задачу.
Ответ написан
@grinat
json_encode("SELECT * FROM objects WHERE parent_id = $name")
на фронте JSON.parse()
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через TM ID
Похожие вопросы