Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Оптимизация функции 
V
    Опции темы
aktuba
Дата 26.8.2007, 17:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Смышленный
***


Профиль
Группа: Завсегдатай
Сообщений: 1915
Регистрация: 24.4.2006
Где: Планета Земля

Репутация: нет
Всего: 38



Есть две таблицы 

tblcategory:
Код

1. ID
2. ParentID
3. Caption
4. URL


tblcatsoft:
Код

1. ID
2. CategoryID
3. SoftID


и есть функция, которая считает количество программ в категории, в зависимости от переданной категории:
Код

function get_count_category($category) {
  $result = 0;
  $sql = 'SELECT id FROM tblcategory WHERE parentid=\''.$category.'\'';
  $data = mysql_query($sql);
  while($res = mysql_fetch_array($data)) {
    $sql2 = 'SELECT COUNT(*) c FROM tblcatsoft WHERE categoryid=\''.$res['id'].'\'';
    $data2 = mysql_query($sql2);
    while($res2 = mysql_fetch_array($data2))
      $result = $result + $res2['c'];
  }
  $sql = 'SELECT COUNT(*) c FROM tblcatsoft WHERE categoryid=\''.$category.'\'';
  $data = mysql_query($sql);
  while ($res = mysql_fetch_array($data)) {
    $result = $result + $res['c'];
  }
  return $result;
}


Сам понимаю, что это неправильное решение, но другого сам придумать не смог. Снова надежда на профи...


--------------------
user posted image
PM MAIL WWW Skype   Вверх
aktuba
Дата 26.8.2007, 20:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Смышленный
***


Профиль
Группа: Завсегдатай
Сообщений: 1915
Регистрация: 24.4.2006
Где: Планета Земля

Репутация: нет
Всего: 38



Уже не надо. Полностью переделал - теперь все данные получаю из другой таблице, в которой храню только индекс категории и количество. Один запрос.


--------------------
user posted image
PM MAIL WWW Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0602 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.