|
|
02.04.2011, 14:02
|
|
Гость
Гость
|
Попозже выложу, доделаю сначала.
|
|
|
02.04.2011, 15:10
|
|
Гость
Гость
|
Дело было так
1. Создал в таблице, например новостей новое поле CntComments, тип - "Целое число".
2. В компоненте Комментариев в действии после добавления объекта написал
Код:
$db->query("UPDATE Message107 SET CntComments=CntComments+1 WHERE Message_ID = $f_Object_ID");
107 - это ID компонента новостей
3. В компоненте Комментариев в действии после удаления объекта написал
Код:
$db->query("UPDATE Message107 SET CntComments=CntComments-1 WHERE Message_ID = $f_Object_ID");
Все очень просто!
Как писать условия, если считать комментарии при включении-выключении объектов, тоже не сложно. При этом в компоненте Комментариев на вкладке Изменение в действии после включения/выключения объектов пишутся условия if ($checked==2)- включение или if ($checked==1) - выключение и в них соответственно (+1 или -1) код запроса.
Код:if ($checked==2) {
$db->query("UPDATE Message107 SET CntComments=CntComments+1 WHERE Message_ID = $f_Object_ID");
}
elseif ($checked==1) {
$db->query("UPDATE Message107 SET CntComments=CntComments-1 WHERE Message_ID = $f_Object_ID");
}
|
|
|
02.04.2011, 15:18
|
|
Гость
Гость
|
...забыл, потом в списке объектов и в полном выводе объектов новостей, чтобы показать кол-во комментариев по каждой новости просто пишете под каждой $f_CntComments и безо всяких запросов с перебором всех записей комментариев
например
Код:
".($f_CntComments ? "Комментариев: $f_CntComments" : "Комментариев пока нет.")."
|