Bootstrap-Selectpicker: как ускорить выборку данных на огромных записях?

Ситуация: Когда страница загружается, она автоматически заполняет раскрывающийся список «сотрудниками». (Более 2000 записей извлечено на данный момент)

Затем я должен выбрать сотрудника более тысячи из записей.

Все работает абсолютно нормально.

Вопрос:
Как мне увеличить скорость выборки, если в будущем у меня будет более 10 000 данных для извлечения?

Есть ли лучшие варианты для этого?

Я хочу придерживаться доступных для поиска выборок. Если нет, пожалуйста, предложите хороший.

Вот мои коды на CodeIgniter:

контроллер:

public function employee()
{
$data["get_employee"] = $this->Home_model->get_query_array("SELECT employee_id, employee_name FROM Employee_List");

$this->load->view('header_view');
$this->load->view('employee_view', $data);
$this->load->view('footer_view');
}

Модель:

public function get_query_array($query_statement)
{
$query = $this->db->query($query_statement);
return $query->result();
}

Посмотреть:

<label for="employee">Employee</label>
<select class="selectpicker" data-show-subtext="true" data-live-search="true" name="employee" id="employee">
<option value=""></option>
<?php
foreach($get_employee as $row)
{
$id = $row->employee_id;
$name = $row->employee_name;
echo "<option value='".$id."'>".$name."</option>";
}
?>
</select>

Большое спасибо, ребята!

1

Решение

Когда вы выполните этот запрос для больших данных, определенно ваша страница будет работать медленно.

Для этого я предпочту, чтобы вы выбрали ajax select PHP search dropdown. Вот хороший пример https://codeforgeek.com/2014/09/ajax-search-box-php-mysql/ Пожалуйста, попробуйте с этим. Это будет очень полезно для вас. В этом разделе вы найдете, что ваша страница работает быстро и выглядит хорошо как функция в форме или где вы ее используете.

Спасибо

0

Другие решения

Вы можете создать выпадающий алфавит от A до Z, а затем щелкнуть мышью на любом символе, используя ajax, загрузить сотрудников, соответствующих этому символу. Таким образом, вы можете уменьшить число. загрузки сотрудника за раз, и это сократит время выборки с сервера, потому что если вы попытаетесь загрузить все сразу, это, безусловно, займет время.

0