Страница 1 из 1

НЕмного лень читать man php =)

Добавлено: 2007-10-29 5:17:28
ADRE
как оптимизировать запросы к бд? чтобы допустим:

Код: Выделить всё

echo "<select name=city style=\"width=200px\"><option value=\"\">Везде</option>";
    $sql33 = "SELECT * FROM catalog";
    $result33 = $db->sql_query($sql33);
    while ($row33 = $db->sql_fetchrow($result33)) {
    echo "<option value=$row33[id_catalog]>$row33[name]</option>";
    }
    echo "</select>";
т.е не обращаться все время к БД, а один раз в оперативу подгрузить(скорее всего массивом), и потом уже из оперативки значения таскать, просто если количество допустим 20 то, выпадающая менюшка делает 20 запросов...

Re: НЕмного лень читать man php =)

Добавлено: 2007-10-29 8:10:02
kmb
Ну так сам написал же :) загнать всё в массив, а потом уже оттуда выводить...

Re: НЕмного лень читать man php =)

Добавлено: 2007-10-29 9:12:56
Alex Keda
ADRE писал(а):как оптимизировать запросы к бд? чтобы допустим:

Код: Выделить всё

echo "<select name=city style=\"width=200px\"><option value=\"\">Везде</option>";
    $sql33 = "SELECT * FROM catalog";
    $result33 = $db->sql_query($sql33);
    while ($row33 = $db->sql_fetchrow($result33)) {
    echo "<option value=$row33[id_catalog]>$row33[name]</option>";
    }
    echo "</select>";
т.е не обращаться все время к БД, а один раз в оперативу подгрузить(скорее всего массивом), и потом уже из оперативки значения таскать, просто если количество допустим 20 то, выпадающая менюшка делает 20 запросов...
ну, в примере для любого количества пунков - один запрос.
=============
а вообще-то, включи ка ты вывод всех варнингов и эрроров на экран, и посмотри что скажет php про твой стиль написания.
вот когда уберёшь все ошибки и приведёшь код в соответствтие с синтаксисом языка - тогда и думай про оптимизацию, потому как любой варнинг - это лишний вызов его обработки, лишние тормоза.
================
и ещё - за это

Код: Выделить всё

SELECT *
тебе минус - если полей сотня, а используешь ты всего два из результата - в память почём зря тащутся все сто. Это тоже время.

Re: НЕмного лень читать man php =)

Добавлено: 2007-10-29 10:43:53
ADRE
полей всего 2-3 =), точно совсем забыл про дебаг =)...