Форум русской поддержки Joomla!® CMS
05.12.2016, 04:33:08 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 3.0 FAQ Joomla 2.5 FAQ Joomla 1.5 FAQ Правила форума Новости Joomla Реклама Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор

Где находится insert ?

 (Прочитано 393 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Sergio111
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Сообщений: 163



« : 28.10.2015, 14:28:16 »

Здравствуйте, уважаемые!
Не могу найти файл где производится вставка комментария в таблицу jcommenst!
Поиском по файлам искал - не нашёл.
Подскажите, пожалуйста, где находится этот insert?
Очень нужно!
Записан
Sergio111
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Сообщений: 163



« Ответ #1 : 30.10.2015, 07:52:44 »

Хоть бы автор компонента отписался...
Записан
Sergio111
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Сообщений: 163



« Ответ #2 : 03.11.2015, 09:18:04 »

Где находится insert? Я не могу защиту от спама без этого сделать!
Записан
Arkadiy
Группа развития
*****

Репутация: +431/-0
Offline Offline

Пол: Мужской
Сообщений: 5313


Крепитесь, други.


« Ответ #3 : 03.11.2015, 12:01:13 »

Откройте консоль FireBug, посмотрите по какому адресу идет аякс-запрос при добавлении комментария, в адресе все написано.
Записан
Sergio111
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Сообщений: 163



« Ответ #4 : 03.11.2015, 16:18:21 »

Откройте консоль FireBug, посмотрите по какому адресу идет аякс-запрос при добавлении комментария, в адресе все написано.
Не могу разобраться, подскажите, пожалуйста.
Всё, что я в консоли вижу - это какой-то jcomments.updateList с параметрами
Цитировать
[ { "n": "js", "d": "jcomments.updateList('\\<h4\\>Комментарии \\<a class=\\\"rss\\\" href=\\\"\/index
.php\/component\/jcomments\/feed\/com_content\/1181\\\" title=\\\"RSS лента комментариев этой записи
\\\" target=\\\"_blank\\\"\\>\\&nbsp;\\<\/a\\>\\<a class=\\\"refresh\\\" href=\\\"#\\\" title=\\\"Об
новить список комментариев\\\" onclick=\\\"jcomments.showPage(1181,\\'com_content\\',0);return false
;\\\"\\>\\&nbsp;\\<\/a\\>\\<\/h4\\>\\n\\<div id=\\\"comments-list\\\" class=\\\"comments-list\\\"\\>
\\n\t\\<div class=\\\"even\\\" id=\\\"comment-item-152\\\"\\>\\<div class=\\\"rbox\\\"\\>\\<div class
=\\\"rbox_tr\\\"\\>\\<div class=\\\"rbox_tl\\\"\\>\\<div class=\\\"rbox_t\\\"\\>\\&nbsp;\\<\/div\\>\
\<\/div\\>\\<\/div\\>\\<div class=\\\"rbox_m\\\"\\>\\n\\<div class=\\\"comment-box\\\"\\>\\n\\<a class
=\\\"comment-anchor\\\" href=\\\"\/index.php\/home\/urok-lyubovi-i-dobra-mikoli-dzhmilya#comment-152
\\\" id=\\\"comment-152\\\"\\>#1\\<\/a\\>\\n\\<span class=\\\"comment-author\\\"\\>Алекс\\<\/span\\>
\\n\\<span class=\\\"comment-date\\\"\\>03.11.2015 12:05\\<\/span\\>\\n\\<div class=\\\"comment-body
\\\" id=\\\"comment-body-152\\\"\\>Старый дед какой-то\\<\/div\\>\\n\\<span class=\\\"comments-buttons
\\\"\\>\\n\\<a href=\\\"#\\\" onclick=\\\"jcomments.quoteComment(152); return false;\\\"\\>Цитироват
ь\\<\/a\\>\\n\\<\/span\\>\\n\\<\/div\\>\\<div class=\\\"clear\\\"\\>\\<\/div\\>\\n\\<\/div\\>\\<div class
=\\\"rbox_br\\\"\\>\\<div class=\\\"rbox_bl\\\"\\>\\<div class=\\\"rbox_b\\\"\\>\\&nbsp;\\<\/div\\>\
\<\/div\\>\\<\/div\\>\\<\/div\\>\\n\\<\/div\\>\\n\\<\/div\\>\\n\\<div id=\\\"comments-list-footer\\\"
\\>\\<a class=\\\"refresh\\\" href=\\\"#\\\" title=\\\"Обновить список комментариев\\\" onclick=\\\"jcomments
.showPage(1181,\\'com_content\\',0);return false;\\\"\\>Обновить список комментариев\\<\/a\\>\\<br \
/\\>\\<a class=\\\"rss\\\" href=\\\"\/index.php\/component\/jcomments\/feed\/com_content\/1181\\\" title
=\\\"RSS лента комментариев этой записи\\\" target=\\\"_blank\\\"\\>RSS лента комментариев этой запи
си\\<\/a\\>\\<\/div\\>\\n','r');" }, { "n": "js", "d": "jcomments.scrollToList();" }, { "n": "js", "d"
: "jcomments.message('Спасибо за Ваш комментарий!', '');" }, { "n": "js", "d": "jcomments.clear('comment'
);" }, { "n": "js", "d": "jcomments.clear('captcha');" } ]

Сайт http://biblionet.com.ua/
Записан
Arkadiy
Группа развития
*****

Репутация: +431/-0
Offline Offline

Пол: Мужской
Сообщений: 5313


Крепитесь, други.


« Ответ #5 : 04.11.2015, 08:34:26 »

jComments при создании комментария делают AJAX запрос на адрес
Код:
http://.../index.php/component/jcomments/
с параметрами
Код:
comment=sdf%20sd
jtxf=JCommentsAddComment
object_group=com_content
object_id=1181
userid=863
В параметре jtxf указано значение JCommentsAddComment.
Идем в /components/com_jcomments/jcomments.php
Там ищем текст JCommentsAddComment, поиск показывает нам строку
Код:
$jtx->registerFunction(array('JCommentsAddComment', 'JCommentsAJAX', 'addComment'));
То есть вам нужна функция addComment в классе JCommentsAJAX. Файл найдите полнотестовым поиском названия класса.
Записан
Sergio111
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Сообщений: 163



« Ответ #6 : 05.11.2015, 09:51:27 »

Файл нашёл, функцию нашёл, insert не нашёл.
Вроде бы вижу код добавления в БД, но куда копать дальше?
Код:
// save new comment to database
if (!$comment->store()) {
$response->addScript("jcomments.clear('comment');");

if ($acl->check('enable_captcha') == 1 && $config->get('captcha_engine', 'kcaptcha') == 'kcaptcha') {
JCommentsCaptcha::destroy();
$response->addScript("jcomments.clear('captcha');");
}
return $response;
}
Подскажите, пожалуйста, где находится insert?
Записан
Arkadiy
Группа развития
*****

Репутация: +431/-0
Offline Offline

Пол: Мужской
Сообщений: 5313


Крепитесь, други.


« Ответ #7 : 05.11.2015, 10:25:00 »

Он находится в функции $comment->store().
Записан
Sergio111
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Сообщений: 163



« Ответ #8 : 05.11.2015, 16:38:17 »

Он находится в функции $comment->store().
А в каком файле находится эта функция?
Записан
Arkadiy
Группа развития
*****

Репутация: +431/-0
Offline Offline

Пол: Мужской
Сообщений: 5313


Крепитесь, други.


« Ответ #9 : 05.11.2015, 17:09:41 »

Ну проведите такое же расследование как я, не могу же я за вас все искать, посмотрите как инициализировалась $comment, экземпляром какого класса она является, потом поищите этот класс и т.п.
Записан
Фей
Завсегдатай
*****

Репутация: +86/-3
Offline Offline

Пол: Мужской
Сообщений: 724


skype: bel_ko_d


« Ответ #10 : 05.11.2015, 17:19:01 »

бяда-бяда!
$comment ссылается на модель данных (ищите в каталоге models компонента) или на класс самой таблицы (ищите в каталоге tables компонента).
А защиту от спама нужно делать до функционала работы с моделью (до записи в таблицу).
Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Powered by SMF 1.1.21 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet