За последние 24 часа нас посетили 16750 программистов и 1606 роботов. Сейчас ищут 1234 программиста ...

Подскажите как вывести общее кол-во строк?

Тема в разделе "PHP и базы данных", создана пользователем Merlak, 27 май 2011.

  1. Merlak

    Merlak Активный пользователь

    С нами с:
    25 апр 2009
    Сообщения:
    10
    Симпатии:
    0
    У меня стоит движок Social Engine (шаблонизатор смарти)


    Есть функция в class_items.php

    PHP:
    1. function get_popular_neighborhoods($catid=null, $limit = 10, $order="total") {
    2.     global $database;
    3.     $sql = "SELECT item_neighborhood as name, COUNT(item_neighborhood) as total
    4.       FROM se_items
    5.       LEFT JOIN se_itemcats ON se_itemcats.itemcat_id = se_items.item_itemcat_id
    6.       WHERE " . $this->prefilter_active_criteria();
    7.     if ($catid) {
    8.       $sql .= " AND (item_itemcat_id='$catid' OR itemcat_dependency='$catid') ";
    9.     }
    10.     $sql .= " GROUP BY item_neighborhood ORDER BY total DESC LIMIT 0, $limit";
    11.    
    12.     $values = array();
    13.    
    14.     $res = $database->database_query($sql);
    15.     while ($row = $database->database_fetch_assoc($res)) {
    16.       $values[$row['name']] = $row['total'];
    17.     }
    18.     //rc_toolkit::debug($values, "get_popular_neighborhoods sql=$sql");
    19.     if ($order == 'name') {
    20.       ksort($values);
    21.     }
    22.    
    23.     return $values;
    24.   }
    25.   // get_popular_neighborhoods


    в файле php обработана так:

    PHP:
    1. $popular_neighborhoods = $item->get_popular_neighborhoods($itemcat_id, 20, 'name');
    2. $smarty->assign('popular_neighborhoods', $popular_neighborhoods);

    Ну и в tpl шаблоне выводиться с помошью:

    PHP:
    1. {foreach name=nan from=$popular_neighborhoods key=popular_neighborhood item=popular_neighborhood_count}
    2.  
    3. {$popular_neighborhood}
    4.  
    5. {/foreach}
    6.  
    Результат:

    Москва(13)
    Санкт Петербург (3)
    Казань(6)
    и т.д.

    Выводятся по 20 городов.

    Вопрос: Мне нужно просто вывести общее кол-во этих популярных городов в цифрах.

    Например:

    Всего городов (22)

    ==========================================================
    Прошу подскажите люди умные как это сделать
    ..Я могу конечно сделать запрос в таблицу se_items и вывести общее кол-во через *. Но там не будет выборки по совпадающимся городам.[/php]