Перейти к содержимому


Правила форума

Внимание!!! Если не можете скачать, пожалуйста ознакомьтесь с условиями получения доступа с файлам форума. Правила форума


Отзывы для магазина


Сообщений в теме: 49

#21 meta-s

    Продвинутый пользователь

  • Download User
  • PipPipPip
  • 33 сообщений
Репутация: 2
Начинающий

Отправлено 23 марта 2014 - 20:26

Просмотр сообщенияyura (22 марта 2014 - 22:41) писал:

Просмотр сообщенияmeta-s (22 марта 2014 - 21:53) писал:

Парни так отзывы ПОД ТОВАРОМ можно ОСУЩЕСТВИТЬ штатными способами магазина... Для чего мудрить новые схемы?
А можно подробней, что за штатные способы?

В настройках магазина поставьте галочку
"Разрешить покупателям оставлять мнения о товаре
Если данная опция включена, покупателям предоставляется возможность оставлять свои комментарии и мнения о товарах"
http://meta-s.ru/product_1060.html да вот любая страница. Это у меня табами выводятся нужные блоки. А изначально отзывы отображаются вверху где-то около названия товара справа.

#22 zcz

    Продвинутый пользователь

  • Assistent vsupport.ru
  • PipPipPip
  • 103 сообщений
Репутация: 61
Продвинутый

Отправлено 24 марта 2014 - 06:27

Минус данного модуля (Мнения о товаре) - нет промодерации, не приходят оповещения о новом мнении.
Пишу, устанавливаю, натягиваю))) pix-art.ru

#23 Lada

    Продвинутый пользователь

  • Download User
  • PipPipPip
  • 107 сообщений
Репутация: 7
Начинающий
  • ГородЧита

Отправлено 19 апреля 2014 - 11:36

Просмотр сообщенияzcz (24 марта 2014 - 06:27) писал:

Минус данного модуля (Мнения о товаре) - нет промодерации, не приходят оповещения о новом мнении.

А вот если бы сделать такие же, как здесь общие для магазина, НО в подробном описании товара, да так же с рейтингом - звездочками, да вместо Тема, например Город. - вот это было бы ДА...

То есть , например - Имя, Город, Оценка в звездах, Отзыв......

zcz Вы собирались сделать для полного описания товара отзывы - очень бы было нелохо!

#24 maxruta

    Пользователь

  • Download User
  • PipPip
  • 13 сообщений
Репутация: 0
Начинающий

Отправлено 23 июня 2014 - 18:17

Доброго вечера всем! Поставила данный модуль. Все было хорошо, но сегодня какая-то белеберда в виде множества комментов, можно сказать, не в кассу. Вот как на фото и таких страниц несколько, целый день....Вирус? Или что это? И как с этим бороться?

Прикрепленные файлы

  • Прикрепленный файл  754.jpg   54,01К   43 Количество загрузок:


#25 zcz

    Продвинутый пользователь

  • Assistent vsupport.ru
  • PipPipPip
  • 103 сообщений
Репутация: 61
Продвинутый

Отправлено 24 июня 2014 - 08:11

заспамили.. надо проверку поставить на метод отправки и сам путь... посмотрю чем можно обезопасить.

В общем, так:

файл core/includes/vt.php

В самом верху, после
<?php
вставляем:

if (!isset($_SESSION['fKey']) || empty($_SESSION['fKey'])) {
  $_SESSION['fKey'] = md5(mt_rand(11245, 5469887));
}
$lfKey = $_SESSION['fKey'];
$smarty->assign('fKey', $lfKey);

далее в этом файле находим

if ( isset($_POST["vt_save"]))

заменяем на

if ( isset($_POST["vt_save"]) && $_POST["vt_save"] == 1)

после этой строчки и фигурной скобки ниже, вставляем

if (isset($_POST['fKey']) && $lfKey == $_SESSION['fKey'] && $_POST['fKey'] == $_SESSION['fKey']) {

ниже, после строки
$smarty->assign("UserFName", $_POST['UserFName']);
ставим закрывающий
}

находим
db_query( "insert into ".VT_TABLE." (`name`, `fname`, `alV`, `prdV`, `h_f`, `f_q`, `textToPub`, `add_date`, `add_stamp`, `see` )
            values('".xToText(trim($name))."', '".xToText(trim($fname))."', '".xToText(trim($alV))."', '".xToText(trim($prdV))."', '".xToText(trim($h_f))."', '".xToText(trim($f_q))."', '".xToText(trim($textToPub))."', '".xEscSQL($add_date)."', ".$add_stamp.", ".$see." ) ");

меняем на

db_query( "insert into ".VT_TABLE." (`name`, `fname`, `alV`, `prdV`, `h_f`, `f_q`, `textToPub`, `add_date`, `add_stamp`, `see` )
            values('".xToText(trim($name))."', '".xToText(trim($fname))."', '".xToText(trim($alV))."', '".xToText(trim($prdV))."', '".xToText(trim($h_f))."', '".xToText(trim($f_q))."', '".xToText(trim($textToPub))."', '".xEscSQL($add_date)."', ".$add_stamp.", 0 ) ");

С этим файлом работа закончена.
Открываем core/tpl/user/ваш_шаблон/comment.tpl.html

почти в самом низу перед
<input type=hidden name="add_date" value="{$add_date}">
вставляем
<input type="hidden" name="fKey" value="{$fKey}"/>

Итог:

1 - Добавили уникальный ключ сессии и без него (или, если он не совпадает) отправка формы будет не возможна.
2 - Принудительно выставляем 0 для показа. Если сломают уникальность сессии, то как минимум всякая фигня не будет лезть сразу на сайт.

Если это не поможет, то вас попросту сломали и шлют запросы напрямую в БД.
Как исправить - переименовать таблицу с отзывами, и прописать это имя в файле core/config/connect.inc.php
Пишу, устанавливаю, натягиваю))) pix-art.ru

#26 maxruta

    Пользователь

  • Download User
  • PipPip
  • 13 сообщений
Репутация: 0
Начинающий

Отправлено 24 июня 2014 - 08:46

Просмотр сообщенияzcz (24 июня 2014 - 08:11) писал:

заспамили.. надо проверку поставить на метод отправки и сам путь... посмотрю чем можно обезопасить.

В общем, так:

файл core/includes/vt.php

В самом верху, после
<?php
вставляем:

if (!isset($_SESSION['fKey']) || empty($_SESSION['fKey'])) {
  $_SESSION['fKey'] = md5(mt_rand(11245, 5469887));
}
$lfKey = $_SESSION['fKey'];
$smarty->assign('fKey', $lfKey);

далее в этом файле находим

if ( isset($_POST["vt_save"]))

заменяем на

if ( isset($_POST["vt_save"]) && $_POST["vt_save"] == 1)

после этой строчки и фигурной скобки ниже, вставляем

if (isset($_POST['fKey']) && $lfKey == $_SESSION['fKey'] && $_POST['fKey'] == $_SESSION['fKey']) {

ниже, после строки
$smarty->assign("UserFName", $_POST['UserFName']);
ставим закрывающий
}

находим
db_query( "insert into ".VT_TABLE." (`name`, `fname`, `alV`, `prdV`, `h_f`, `f_q`, `textToPub`, `add_date`, `add_stamp`, `see` )
			values('".xToText(trim($name))."', '".xToText(trim($fname))."', '".xToText(trim($alV))."', '".xToText(trim($prdV))."', '".xToText(trim($h_f))."', '".xToText(trim($f_q))."', '".xToText(trim($textToPub))."', '".xEscSQL($add_date)."', ".$add_stamp.", ".$see." ) ");

меняем на

db_query( "insert into ".VT_TABLE." (`name`, `fname`, `alV`, `prdV`, `h_f`, `f_q`, `textToPub`, `add_date`, `add_stamp`, `see` )
			values('".xToText(trim($name))."', '".xToText(trim($fname))."', '".xToText(trim($alV))."', '".xToText(trim($prdV))."', '".xToText(trim($h_f))."', '".xToText(trim($f_q))."', '".xToText(trim($textToPub))."', '".xEscSQL($add_date)."', ".$add_stamp.", 0 ) ");

С этим файлом работа закончена.
Открываем core/tpl/user/ваш_шаблон/comment.tpl.html

почти в самом низу перед
<input type=hidden name="add_date" value="{$add_date}">
вставляем
<input type="hidden" name="fKey" value="{$fKey}"/>

Итог:

1 - Добавили уникальный ключ сессии и без него (или, если он не совпадает) отправка формы будет не возможна.
2 - Принудительно выставляем 0 для показа. Если сломают уникальность сессии, то как минимум всякая фигня не будет лезть сразу на сайт.

Если это не поможет, то вас попросту сломали и шлют запросы напрямую в БД.
Как исправить - переименовать таблицу с отзывами, и прописать это имя в файле core/config/connect.inc.php

Спасибо. Попробую

#27 nick_sat

    Новичок

  • Assistent vsupport.ru
  • Pip
  • 6 сообщений
Репутация: 0
Начинающий

Отправлено 24 декабря 2014 - 12:20

Добрый день, подскажите где посмотреть(поправить) ошибку - при написании отзыва приходит письмо и сам отзыв в админ панели появляется не в той кодировке. Вместо русских букв знаки вопроса.

Проблема решена, после переноса сайта на новый хостинг по умолчанию новые таблицы создавались в другой кодировке. Изменили это в phpMyAdmin и проблема решилась.

#28 makki

    Продвинутый пользователь

  • Assistent vsupport.ru
  • PipPipPip
  • 146 сообщений
Репутация: 7
Начинающий

Отправлено 11 февраля 2016 - 15:53

Добавил в Downloads обновленный модуль отзывов для магазина под ShopCMS 3.1.3 с постраничной навигацией

Изменения:
1) Вывод под шаблон ShopCMS 3.1.3 на Bootstrap
2) Добавлена постраничная навигация отзывов (количество отзывов на странице задается в Общих настройках)
3) Просмотр отзывов и добавление отзывов происходит на одной странице
4) Псевдостатические ссылки
5) Добавлена captcha
6) Оптимизирован код

Перейти на страницу загрузки

#29 aldrpav

    Новичок

  • Пользователи
  • Pip
  • 4 сообщений
Репутация: 0
Начинающий

Отправлено 17 февраля 2016 - 08:34

А где можно посмотреть как выглядит модуль?

#30 badisoft

    Продвинутый пользователь

  • VIP
  • 5 006 сообщений
Репутация: 766
Мастер

Отправлено 17 февраля 2016 - 10:56

Просмотр сообщенияaldrpav сказал:

А где можно посмотреть как выглядит модуль?
Например, тут - http://new.badisoft.ru/comment.html
Но интересна в основном админка, а кто ж туда пустит?
http://cpu.badisoft.ru (тестовый сайт), http://badisoft.ru (модули)

#31 makki

    Продвинутый пользователь

  • Assistent vsupport.ru
  • PipPipPip
  • 146 сообщений
Репутация: 7
Начинающий

Отправлено 17 февраля 2016 - 15:27

  • Подправил шаблон вывода отзывов. Добавил скриншоты.

http://vsupport.ru/f...ной-навигацией/

#32 jiykka

    Пользователь

  • Download User
  • PipPip
  • 29 сообщений
Репутация: 0
Начинающий

Отправлено 10 апреля 2016 - 05:29

makki,А не подскажите:

<!-- Если установка завершилась с ошибкой, то вручную вставьте в базу через SQL запрос следующий код:

CREATE TABLE ПРЕФИКС_vt (
`oID` INT( 11 ) NOT NULL AUTO_INCREMENT ,
`UserName` VARCHAR( 250 ) NOT NULL ,
`UserCity` VARCHAR( 250 ) NOT NULL ,
`VoteRating` INT( 5 ) NOT NULL ,
`textToPub` LONGTEXT NOT NULL ,
`textToPubAdm` LONGTEXT NOT NULL ,
`add_date` DATE NOT NULL ,
`add_stamp` INT( 11 ) NOT NULL ,
`see` INT( 2 ) DEFAULT '0' NOT NULL ,
UNIQUE (
`oID`
)
)AUTO_INCREMENT=1;

Это какой файл править нужно? -->


Пы сы: после стандартной замены файлов и внесения изменений в указанные 2 - файла модуль не появился в админке.

#33 makki

    Продвинутый пользователь

  • Assistent vsupport.ru
  • PipPipPip
  • 146 сообщений
Репутация: 7
Начинающий

Отправлено 10 апреля 2016 - 06:57

Просмотр сообщенияjiykka (10 апреля 2016 - 05:29) писал:

makki,А не подскажите:

<!-- Если установка завершилась с ошибкой, то вручную вставьте в базу через SQL запрос следующий код:

Это какой файл править нужно? -->


Пы сы: после стандартной замены файлов и внесения изменений в указанные 2 - файла модуль не появился в админке.

SQL запрос нужно выполнить через phpMyAdmin. Но скорее всего не в этом дело.
Принудительная очистка кэша в Общих настройках включена?

#34 jiykka

    Пользователь

  • Download User
  • PipPip
  • 29 сообщений
Репутация: 0
Начинающий

Отправлено 10 апреля 2016 - 12:55

Все работает. Благодарю makkiза содействие.

#35 kery

    Продвинутый пользователь

  • Assistent vsupport.ru
  • PipPipPip
  • 128 сообщений
Репутация: 16
Начинающий

Отправлено 10 ноября 2016 - 13:15

Просмотр сообщенияmakki (11 февраля 2016 - 15:53) писал:

Добавил в Downloads обновленный модуль отзывов для магазина под ShopCMS 3.1.3 с постраничной навигацией

Изменения:
1) Вывод под шаблон ShopCMS 3.1.3 на Bootstrap
2) Добавлена постраничная навигация отзывов (количество отзывов на странице задается в Общих настройках)
3) Просмотр отзывов и добавление отзывов происходит на одной странице
4) Псевдостатические ссылки
5) Добавлена captcha
6) Оптимизирован код

Перейти на страницу загрузки
что то у меня ругается в админке Fatal error: Cannot redeclare _getUrlToSubmit() (previously declared in C:\OpenServer\domains\zakaz.loc\core\includes\admin\sub\modules_vt.php:10) in core\includes\admin\modules_vt.php on line 8

#36 zcz

    Продвинутый пользователь

  • Assistent vsupport.ru
  • PipPipPip
  • 103 сообщений
Репутация: 61
Продвинутый

Отправлено 10 ноября 2016 - 13:29

Просмотр сообщенияkery (10 ноября 2016 - 13:15) писал:

Просмотр сообщенияmakki (11 февраля 2016 - 15:53) писал:

Добавил в Downloads обновленный модуль отзывов для магазина под ShopCMS 3.1.3 с постраничной навигацией

Изменения:
1) Вывод под шаблон ShopCMS 3.1.3 на Bootstrap
2) Добавлена постраничная навигация отзывов (количество отзывов на странице задается в Общих настройках)
3) Просмотр отзывов и добавление отзывов происходит на одной странице
4) Псевдостатические ссылки
5) Добавлена captcha
6) Оптимизирован код

Перейти на страницу загрузки
что то у меня ругается в админке Fatal error: Cannot redeclare _getUrlToSubmit() (previously declared in C:\OpenServer\domains\zakaz.loc\core\includes\admin\sub\modules_vt.php:10) in core\includes\admin\modules_vt.php on line 8

Значит функция где-то уже объявлена.
Есть костыль небольшой:

Перед
 function _getUrlToSort()
вставить
if (!function_exists('_getUrlToSort')) {
и после окончания функции (фигурная скобка } )
поставить еще одну закрывающую фигурную скобку }

скорее всего подобную фигню придется проделать со всеми функциями в файле.

Причина мне самому до сих пор не понятна (недавно встретился с подобным для списка пользователей)
Пишу, устанавливаю, натягиваю))) pix-art.ru

#37 badisoft

    Продвинутый пользователь

  • VIP
  • 5 006 сообщений
Репутация: 766
Мастер

Отправлено 10 ноября 2016 - 14:42

Цитата

Причина мне самому до сих пор не понятна (недавно встретился с подобным для списка пользователей)
С функциями _getUrlToNavigate, _getUrlToSort, _sortSetting надо быть осторожным, т.к. они даже штатно дублируются в нескольких includes/*.php и includes/admin/sub/*.php. В штатном виде это никак не мешает, т.к. код, содержащий эту функцию нигде не пересекается друг с другом (исполняется либо один, либо другой), а объявление функции происходит только при исполнении этого кода, но вот при написании своих модулей надо это иметь в виду.

Цитата

скорее всего подобную фигню придется проделать со всеми функциями в файле.
Скорее всего, это не поможет. Вместо нужной функции будет вызываться чужая объявленная ранее, которая может возвращать другой результат.

Цитата

что то у меня ругается в админке Fatal error: Cannot redeclare _getUrlToSubmit() (previously declared in C:\OpenServer\domains\zakaz.loc\core\includes\admin\sub\modules_vt.php:10) in core\includes\admin\modules_vt.php on line 8
Тут, как мне кажется, лечение намного проще. В каталоге core/includes/admin/ исполняются ВСЕ лежащие в нем PHP-файлы. Подозреваю, что modules_vt.php это не действительно нужный файл, а бэкап modules.php со всеми вытекающими в виде попытки повторного определения уже определенных функций.
http://cpu.badisoft.ru (тестовый сайт), http://badisoft.ru (модули)

#38 zcz

    Продвинутый пользователь

  • Assistent vsupport.ru
  • PipPipPip
  • 103 сообщений
Репутация: 61
Продвинутый

Отправлено 10 ноября 2016 - 15:01

Просмотр сообщенияbadisoft (10 ноября 2016 - 14:42) писал:

Тут, как мне кажется, лечение намного проще. В каталоге core/includes/admin/ исполняются ВСЕ лежащие в нем PHP-файлы. Подозреваю, что modules_vt.php это не действительно нужный файл, а бэкап modules.php со всеми вытекающими в виде попытки повторного определения уже определенных функций.
Совсем недавно (почему и быстро написал костыльный способ лечения) столкнулся с такой-же ошибкой, но внутри стандартных функций (на голом сайте, после установки) для списка пользователей.
Вопрос в том - от чего это происходит. Даже, если учесть, что данная функция дублируется по несколько раз, она вызывается внутри своего файла при условии вызова этого файла...
а т.к. она каждый раз объявляется по новой, то не вижу причин ее неработоспособности.
З.Ы. переименовывание функции тоже не спасает от этой ошибки.
Пишу, устанавливаю, натягиваю))) pix-art.ru

#39 badisoft

    Продвинутый пользователь

  • VIP
  • 5 006 сообщений
Репутация: 766
Мастер

Отправлено 10 ноября 2016 - 15:13

Просмотр сообщенияzcz сказал:

Совсем недавно (почему и быстро написал костыльный способ лечения) столкнулся с такой-же ошибкой, но внутри стандартных функций (на голом сайте, после установки) для списка пользователей.
"На голом сайте" или таки "на голом сайте, но с установленным этим модулем"?
http://cpu.badisoft.ru (тестовый сайт), http://badisoft.ru (модули)

#40 zcz

    Продвинутый пользователь

  • Assistent vsupport.ru
  • PipPipPip
  • 103 сообщений
Репутация: 61
Продвинутый

Отправлено 10 ноября 2016 - 15:16

Просмотр сообщенияbadisoft (10 ноября 2016 - 15:13) писал:

"На голом сайте" или таки "на голом сайте, но с установленным этим модулем"?
Таки совсем на голом сайте. Так сказать "из коробочки".
+ , прошу заметить, что данный модуль уже переработан и не мной.
Пишу, устанавливаю, натягиваю))) pix-art.ru