Самый быстрый способ загрузить динамический выбор с помощью PHP - PullRequest
0 голосов
/ 17 февраля 2012

Я разрабатываю систему управления клиентом для своего рабочего места, используя PHP и MySQL. Каждая страница загружает файл header.php, который содержит, помимо прочего, меню навигации и раскрывающийся список, который динамически загружает все имена клиентов, чтобы я мог быстро перейти к их карточке контакта. Длинные имена сокращены, с полным именем в качестве «заголовка».

Однако на этом этапе каждая страница должна приостановиться, пока загружается список, прежде чем она сможет продолжить загрузку остальной части страницы.

Вот мой код:

<select>
<?
$select = "SELECT id, name FROM customers ORDER BY name ASC";
$query  = @mysql_query($select,$con) or die(mysql_error());
while($data = @mysql_fetch_array($query)){
    $cust_id   = $data['id'];
    $cust_name = substr($data['name'], 0, 14);
    $cust_name_long = "";
    if (strlen($data['name']) >= 15){
       $cust_name .= "...";
       $cust_name_long = $data['name'];
    }
    echo '<option title="'.$cust_name_long.'" value="customers-edit.php?id='.$cust_id.'">'.$cust_name.'</option>';
}
?>
</select>

Какой более эффективный способ сделать это, чтобы у меня не было 2-секундной паузы при каждом открытии страницы? Я мог бы согласиться с загрузкой раскрывающегося списка после загрузки остальной части страницы или загрузкой кэшированной версии раскрывающегося списка, если имена клиентов не изменились, или ......? *

1 Ответ

0 голосов
/ 17 февраля 2012

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

...