Статистика объектов

Вопросы и ответы по изменению функционала, смене дизайна, переносу сайта и т.п.

Модераторы: Xpycm, Koduc

Правила форума
ВНИМАНИЕ! Форум не является средством гарантированной поддержки клиентов и пользователей. Поэтому на быстрый ответ тут рассчитывать не нужно, как и на ответ вообще. Сотрудники отвечают по мере своих возможностей.

На форуме действует ограничение в 3 сообщения / сутки.
Если Вы хотите сказать "спасибо", то воспользуйтесь функцией "Повысить репутацию" - зелёная иконка "плюс" под ником ответившего.

Статистика объектов

Сообщение avbo » 20 июн 2013, 16:35

Подскажите пож. как вывести например на главную страницу блок показывающий количество объявлений в разрезе:

Всего объявлений: 10
В регионе название города: 5
Всего добавлено за сегодня: 0
Аватара пользователя
avbo
Незнакомец
 
Сообщения: 10
Зарегистрирован: 20 июн 2013, 15:45
Откуда: Киев
Очки репутации: 0

Re: Статистика объектов

Сообщение Foton » 21 июн 2013, 10:53

Добавьте в protected\views\site\index.php код, типа:
Код: Выделить всё
Yii::import('application.modules.apartments.helpers.apartmentsHelper');
$result_all = apartmentsHelper::getApartments(0, 0, 1);
echo '<p>Всего: '.$result_all['apCount']. '</p>';

foreach ($this->cityActive as $id=>$name) {
    $criteria = new CDbCriteria;
    $criteria->compare('city_id',$id);
    $result = apartmentsHelper::getApartments(0, 0, 1, $criteria);
    echo '<p>В регионе '. $name .': '.$result['apCount']. '</p>';
}

$criteria = new CDbCriteria;
$today = new CDbExpression("CURDATE()");
$criteria->addCondition('date_created >= "'.$today.'" ');
$result_today = apartmentsHelper::getApartments(0, 0, 1, $criteria);
echo '<p>Всего добавлено за сегодня: '.$result_today['apCount']. '</p>'; 

В данном случае будут выводится только города, в которых есть объявления
Foton
Разработчик
Разработчик
 
Сообщения: 431
Зарегистрирован: 26 янв 2012, 14:58
Очки репутации: 8

Re: Статистика объектов

Сообщение avbo » 21 июн 2013, 13:45

Спасибо большое.

Скромный вопрос: как можно эти данные взять в рамку?
Аватара пользователя
avbo
Незнакомец
 
Сообщения: 10
Зарегистрирован: 20 июн 2013, 15:45
Откуда: Киев
Очки репутации: 0

Re: Статистика объектов

Сообщение Foton » 21 июн 2013, 13:53

Перед этим кодом вставьте
Код: Выделить всё
echo "<div style='border: 1px solid #000000; width: 200px;'>"; 
а после
Код: Выделить всё
echo "</div>"; 
где 200px - это ширина блока, а #000000 - цвет
Foton
Разработчик
Разработчик
 
Сообщения: 431
Зарегистрирован: 26 янв 2012, 14:58
Очки репутации: 8

Re: Статистика объектов

Сообщение avbo » 21 июн 2013, 19:41

Foton писал(а):Добавьте в protected\views\site\index.php код, типа:
Код: Выделить всё
Yii::import('application.modules.apartments.helpers.apartmentsHelper');
$result_all = apartmentsHelper::getApartments(0, 0, 1);
echo '<p>Всего: '.$result_all['apCount']. '</p>';

foreach ($this->cityActive as $id=>$name) {
    $criteria = new CDbCriteria;
    $criteria->compare('city_id',$id);
    $result = apartmentsHelper::getApartments(0, 0, 1, $criteria);
    echo '<p>В регионе '. $name .': '.$result['apCount']. '</p>';
}

$criteria = new CDbCriteria;
$today = new CDbExpression("CURDATE()");
$criteria->addCondition('date_created >= "'.$today.'" ');
$result_today = apartmentsHelper::getApartments(0, 0, 1, $criteria);
echo '<p>Всего добавлено за сегодня: '.$result_today['apCount']. '</p>'; 

В данном случае будут выводится только города, в которых есть объявления


Вроде проверил. неправильно подсчет всего объявлений. Что делать?
Аватара пользователя
avbo
Незнакомец
 
Сообщения: 10
Зарегистрирован: 20 июн 2013, 15:45
Откуда: Киев
Очки репутации: 0

Re: Статистика объектов

Сообщение vanred79 » 22 июн 2013, 20:10

Добрый день! Подскажите на 1.3 версии данный код будет работать?
Вся недвижимость Астаны у нас на сайте
vanred79
Местная знаменитость
Местная знаменитость
 
Сообщения: 660
Зарегистрирован: 02 фев 2013, 18:42
Откуда: Казахстан
Очки репутации: 2

Re: Статистика объектов

Сообщение Koduc » 25 июн 2013, 11:18

vanred79 писал(а):Добрый день! Подскажите на 1.3 версии данный код будет работать?

По идее да, нормально должно быть.
-- Меньше знаешь - крепче спишь --
Аватара пользователя
Koduc
Ведущий разработчик
Ведущий разработчик
 
Сообщения: 902
Зарегистрирован: 28 дек 2011, 09:11
Очки репутации: 20

Re: Статистика объектов

Сообщение Koduc » 25 июн 2013, 11:21

avbo писал(а):Вроде проверил. неправильно подсчет всего объявлений. Что делать?

Видимо идет подсчет как активных, так и не активных объявлений.
Замените код
$result_all = apartmentsHelper::getApartments(0, 0, 1);
на
$result_all = apartmentsHelper::getApartments(0, 0, 0);
Аналогично, попробуйте заменить
$result = apartmentsHelper::getApartments(0, 0, 1, $criteria);
на
$result = apartmentsHelper::getApartments(0, 0, 0, $criteria);
-- Меньше знаешь - крепче спишь --
Аватара пользователя
Koduc
Ведущий разработчик
Ведущий разработчик
 
Сообщения: 902
Зарегистрирован: 28 дек 2011, 09:11
Очки репутации: 20

Re: Статистика объектов

Сообщение avbo » 25 июн 2013, 13:53

спасибо за ответ.

Подскажите пож. как сделать, чтобы статистика по региону показывалась в виде ссылки,

Например:
Всего объектов: 12

В регионе Москва: 11 - гиперссылка Москва, переход на все объявления по данному городу

Всего добавлено за сегодня: 0
Аватара пользователя
avbo
Незнакомец
 
Сообщения: 10
Зарегистрирован: 20 июн 2013, 15:45
Откуда: Киев
Очки репутации: 0

Re: Статистика объектов

Сообщение Koduc » 25 июн 2013, 22:15

avbo писал(а):Подскажите пож. как сделать, чтобы статистика по региону показывалась в виде ссылки

Код
echo '<p>В регионе '. $name .': '.$result['apCount']. '</p>';
замените на
echo '<p>В регионе '. CHtml::link($name, array('/quicksearch/main/mainsearch', 'city[]' => $id)).': '.$result['apCount']. '</p>';
-- Меньше знаешь - крепче спишь --
Аватара пользователя
Koduc
Ведущий разработчик
Ведущий разработчик
 
Сообщения: 902
Зарегистрирован: 28 дек 2011, 09:11
Очки репутации: 20

След.

Вернуться в Вопросы и помощь по изменениям

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 23

cron