Запрос к БД и вывод в InstantCMS

#1 9 ноября 2012 в 05:06
Добрый день! Не сильно силен в работе с базами данных, и прошу совета:
Есть таблица в базе данных. В таблице записи, и в каждой из них есть id. Как с InstantCMS выполнить запрос к БД, узнать количество записей в таблице и вывести это значение в нужном месте? Например, кол-во новостей\комментариев\сообщений и т.д. Или проще по последнему id найти запись и вывести номер этого самого id?

Заранее благодарен.
#2 9 ноября 2012 в 06:35
BastaBastilio, вы хотите подсказку или готовое решение?
если подсказку, то просто откройте, например, файл \components\content\model.php
Там куча примеров запросов и вычисления количества записей.
#3 9 ноября 2012 в 07:02

Например, кол-во новостей\комментариев\сообщений и т.д. Или проще по последнему id найти запись и вывести номер этого самого id?

BastaBastilio
Последний id в не обязательно соответствует количеству записей в таблице.
Последний id покажет вам сколько записей было создано. НО если часть записей была удалена, то их оставшееся количество конечно не будет равняться последнему id.
#4 9 ноября 2012 в 07:54
SJen, желательно готовое решение😊и как из шаблона вызвать функцию которая узнает кол-во записей? Или придется отдельный модуль делать, а из шаблона вызывать модуль?
#5 9 ноября 2012 в 08:00

шаблона вызвать функцию которая узнает кол-во записей?

BastaBastilio
ИЗ шаблона ничего не надо вызывать. Нужно В ШАБЛОН передать кол-во записей, а в шаблоне их просто отобразить
#6 30 марта 2013 в 16:33
Пытаюсь написать функцию которая выведет количество комментариев в объявлении.

Не знаю как подставить в условие id объявления.


public function getCountComments($left_key, $right_key) {

$sql = "SELECT id
FROM cms_comments
WHERE target_id = {???} AND published = 1";

$result = $this->inDB->query($sql);

return $this->inDB->num_rows($result);

}
#7 30 марта 2013 в 17:19


Пытаюсь написать функцию которая выведет количество комментариев в объявлении.

Не знаю как подставить в условие id объявления.


public function getCountComments($left_key, $right_key) {

$sql = "SELECT id
FROM cms_comments
WHERE target_id = {???} AND published = 1";

$result = $this->inDB->query($sql);

return $this->inDB->num_rows($result);

}

somik

пардон, для чего вам функция такая? в чем трудность получить это в подзапросе?
#8 30 марта 2013 в 17:24
public function getCountComments($id) {

$sql = "SELECT id
FROM cms_comments
WHERE target='board' AND target_id=".$id." AND published = 1";

$result = $this->inDB->query($sql);

return $this->inDB->num_rows($result);

}

Функция должна получать id объявления, а не $left_key, $right_key
#9 1 апреля 2013 в 13:48
kir, я не очень разбираюсь в программировании.только основы.
Ленивый, спасибо))
#10 1 апреля 2013 в 22:05
А у меня другой похожий вопрос, можно ли как нибудь отобразить количество кликов по ссылке. У меня ИнМапс в объектах которых проставлена ссылка на ресурс объекта. На многие объекты по несколько десятков раз в день переходят посетители именно по этим ссылкам с моего сайта, как видно из вебвизора. Просто интересно сколько я им посетителей даю за месяц или неделю, при этом ничего не получая взамен )) По многим запросам объектов в топе. Кто может что предложить?
#11 2 апреля 2013 в 09:32


А у меня другой похожий вопрос, можно ли как нибудь отобразить количество кликов по ссылке. У меня ИнМапс в объектах которых проставлена ссылка на ресурс объекта. На многие объекты по несколько десятков раз в день переходят посетители именно по этим ссылкам с моего сайта, как видно из вебвизора. Просто интересно сколько я им посетителей даю за месяц или неделю, при этом ничего не получая взамен )) По многим запросам объектов в топе. Кто может что предложить?

Clear

повесить при клике на ссылку событие которое отсылало бы информацию о том что клик произошел, на сервер, как сделано у яндекс метрики и google an…
#12 2 апреля 2013 в 12:04
Я правильно делаю?:

1) Дописал эту функцию(см выше #8) в файл components/board/model.php

2)В файле где нужно вывести счетчик комментариев вывожу переменную $result.
#13 11 апреля 2013 в 09:34
Блин ничего не получается… как же быть? неужели никому не надо число комментарием для объявлений вывести?
#14 11 апреля 2013 в 11:00
Здравствуйте, А меня интересует, как можно вывести

Загрузили 1000 фото

Оставили 1352 комментов
Добавили 421 объявлений, 333 новостей
Создали 312 блогов

+ сколько новых за сегодня
#15 11 апреля 2013 в 11:01
Кстати значение можно выводить примерно так:

  1. <?php echo cmsDatabase::getInstance()->rows_count('cms_video_movie', "published = 1 AND status = 0"); ?>
в данном коде выводится кол-во видео
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.