вопрос
Добрый день, решил обратиться к знатокам php. При установки модуля Awards 4.5 на 9.8 появляется баг, у новостей с комментариями комменты склеиваются с комментами из других новостей. Проблема в lastcomments.php, show.full.php, возможно еще в comments.class.php. Скорее всего адаптация кривая. Дело в том, что я хочу вывести подарки пользователя в комментариях, а из за того, что комментарии все в куче мале это портит всю картину.
Ссылка на модуль наград.
Кто разбирается, проверь на ошибки эту часть кода:
Ссылка на модуль наград.
Кто разбирается, проверь на ошибки эту часть кода:
Открываем \engine\modules\lastcomments.php в нем ищем:
$comments->query = "SELECT " . PREFIX . "_comments.id, post_id, " . PREFIX . "_comments.user_id, " . PREFIX . "_comments.date, " . PREFIX . "_comments.autor as gast_name, " . PREFIX . "_comments.email as gast_email, text, ip, is_register, name, " . USERPREFIX . "_users.email, news_num, " . USERPREFIX . "_users.comm_num, user_group, lastdate, reg_date, signature, foto, fullname, land, icq, " . USERPREFIX . "_users.xfields, " . PREFIX . "_post.title, " . PREFIX . "_post.date as newsdate, " . PREFIX . "_post.alt_name, " . PREFIX . "_post.category FROM " . PREFIX . "_comments LEFT JOIN " . PREFIX . "_post ON " . PREFIX . "_comments.post_id=" . PREFIX . "_post.id LEFT JOIN " . USERPREFIX . "_users ON " . PREFIX . "_comments.user_id=" . USERPREFIX . "_users.user_id " . $where . " ORDER BY id desc";
Заменить на:
$comments->query = "SELECT " . PREFIX . "_comments.id, post_id, " . PREFIX . "_comments.user_id, " . PREFIX . "_comments.date, " . PREFIX . "_comments.autor as gast_name, " . PREFIX . "_comments.email as gast_email, text, ip, is_register, group_concat(mid) as `awards`, name, " . USERPREFIX . "_users.email, news_num, " . USERPREFIX . "_users.comm_num, user_group, lastdate, reg_date, signature, foto, fullname, land, icq, " . USERPREFIX . "_users.xfields, " . PREFIX . "_post.title, " . PREFIX . "_post.date as newsdate, " . PREFIX . "_post.alt_name, " . PREFIX . "_post.category FROM " . PREFIX . "_comments LEFT JOIN " . PREFIX . "_awards ON uid = " . PREFIX . "_post ON " . PREFIX . "_comments.post_id=" . PREFIX . "_post.id LEFT JOIN " . USERPREFIX . "_users ON " . PREFIX . "_comments.user_id=" . USERPREFIX . "_users.user_id " . $where . " ORDER BY id desc";
=======================================================================================
Открываем /engine/modules/show.full.php в нем ищем:
$comments->query = "SELECT " . PREFIX . "_comments.id, post_id, " . PREFIX . "_comments.user_id, date, autor as gast_name, " . PREFIX . "_comments.email as gast_email, text, ip, is_register, name, " . USERPREFIX . "_users.email, news_num, comm_num, user_group, lastdate, reg_date, signature, foto, fullname, land, icq, xfields FROM " . PREFIX . "_comments LEFT JOIN " . USERPREFIX . "_users ON " . PREFIX . "_comments.user_id=" . USERPREFIX . "_users.user_id WHERE " . PREFIX . "_comments.post_id = '$news_id'" . $where_approve . " ORDER BY date " . $config['comm_msort'];
Заменить на:
$comments->query = "SELECT c.id,c.post_id,c.user_id,c.date,c.autor as gast_name,c.email as gast_email,c.text,c.text,c.ip,c.is_register,name,u.email,news_num,comm_num,user_group,lastdate,reg_date,signature,foto,fullname,land,icq,xfields,group_concat(mid) as `awards`,u.name FROM ". USERPREFIX ."_comments c LEFT JOIN ". USERPREFIX ."_awards ON c.user_id = uid LEFT JOIN ". USERPREFIX ."_users u ON u.user_id = c.user_id WHERE c.post_id = '$news_id'". $where_approve . " ORDER BY date " . $config['comm_msort'];