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


FAQ (вопросы и ответы).


  • Вы не можете ответить в тему
Сообщений в теме: 67

#21 mailomsk

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

  • Assistent vsupport.club
  • PipPipPip
  • 135 сообщений
Репутация: 0
Начинающий
  • ГородОмск

Отправлено 26 June 2012 - 05:12 PM

badisoft

core/tpl/user/название_текущего_шаблона/blocks/answer.tpl.html
надо
core/tpl/user/название_текущего_шаблона/answer.tpl.html

Я делал по первой вашей строке

Заменили правильно. Правда у меня почему то был префикс vmkt_.
И что в итоге у Вас получилось?

Тои получилось (я про ошибку и про то, что у меня в админке нет сообщений)

define('CONF_ANSWER_COUNT', 10);

а то CONF_ANSWER_COUNT в answer.php используется, но нигде не задается. число по вкусу. Как я понял, это количество вопросов на странице. Без этого вопросы-ответы не будут выводиться вообще, только страница с заголовком и формой для ввода.

это исправлю, но завтра уже поздно.
  • 0

#22 badisoft

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

  • Assistent vsupport.club
  • PipPipPip
  • 5075 сообщений
Репутация: 786
Мастер

Отправлено 26 June 2012 - 06:26 PM

Скачал как мог. :rolleyes:

Ничего страшного, это нормальная ситуация. Не первый такой модуль и не второй. На shopkod.ru в таком состоянии они продаются (с пучком неточностей и недоделок), а тут на халяву :).

это исправлю, но завтра уже поздно.

казнить нельзя помиловать :).

Вы таки перво-наперво убедитесь, что таблица xxxx_answer действительно создалась. Иначе все остальные действия бессмысленны :).
  • 0
http://cpu.badisoft.ru (тестовый сайт), http://badisoft.ru (модули)

#23 mailomsk

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

  • Assistent vsupport.club
  • PipPipPip
  • 135 сообщений
Репутация: 0
Начинающий
  • ГородОмск

Отправлено 26 June 2012 - 07:06 PM

Вы таки перво-наперво убедитесь, что таблица xxxx_answer действительно создалась. Иначе все остальные действия бессмысленны :).

Однозначно это самый 1 пунк при кстановке вот с него и начну проверять все
  • 0

#24 badisoft

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

  • Assistent vsupport.club
  • PipPipPip
  • 5075 сообщений
Репутация: 786
Мастер

Отправлено 26 June 2012 - 10:13 PM

Очень не хватает сообщений на емейл о новом поступившем вопросе или ответе. Надо бы доделать. Не проверять же ежедневно админку, написал ли там кто либо что либо в вопросы-ответы или нет :). Это я как бы сам для себя пишу, в задачник.

Опана! В файле catalog_answer.tpl.html прописан впрямую admin.php, хотя он может называться как угодно. Я, например, сменил на нечто типа sdldskhjljksdfsdf.php. Короче, имеет смысл заменить в этом файле два вхождения /admin.php на {$smarty.const.ADMIN_FILE}, так будет правильнее.
  • 0
http://cpu.badisoft.ru (тестовый сайт), http://badisoft.ru (модули)

#25 mailomsk

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

  • Assistent vsupport.club
  • PipPipPip
  • 135 сообщений
Репутация: 0
Начинающий
  • ГородОмск

Отправлено 27 June 2012 - 04:30 AM

Всем спасибо за участие! Работает!

А это нормально?
RROR: 1054:Unknown column 'tstamp' in 'field list'
Sql: insert into fsca_error_log (errors, tstamp) VALUES ('WARNING: Missing argument 1 for discGetAllAnswer(), called in /**/core/includes/admin/sub/catalog_answer.php on line 115 and defined\nLine: 20\nFile: /**/core/functions/answer_functions.php\nLink: /admin.php?dpt=catalog&sub=answer\nDate: 27.06.12 - 06:29:42\nDump:\narray(2) {\n  ["dpt"]=>\n  string(7) "catalog"\n  ["sub"]=>\n  string(6) "answer"\n}\narray(0) {\n}', NOW())
Link: /admin.php?dpt=catalog&sub=answer
Date: 27.06.12 - 06:29:42
Dump:
array(2) {
  ["dpt"]=>
  string(7) "catalog"
  ["sub"]=>
  string(6) "answer"
}
array(0) {
}
---
ERROR: 1054:Unknown column 'tstamp' in 'field list'
Sql: insert into fsca_error_log (errors, tstamp) VALUES ('WARNING: Missing argument 2 for discGetAllAnswer(), called in /**/core/includes/admin/sub/catalog_answer.php on line 115 and defined\nLine: 20\nFile: /**/core/functions/answer_functions.php\nLink: /admin.php?dpt=catalog&sub=answer\nDate: 27.06.12 - 06:29:42\nDump:\narray(2) {\n  ["dpt"]=>\n  string(7) "catalog"\n  ["sub"]=>\n  string(6) "answer"\n}\narray(0) {\n}', NOW())
Link: /admin.php?dpt=catalog&sub=answer
Date: 27.06.12 - 06:29:42
Dump:
array(2) {
  ["dpt"]=>
  string(7) "catalog"
  ["sub"]=>
  string(6) "answer"
}
array(0) {
}
---

  • 0

#26 badisoft

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

  • Assistent vsupport.club
  • PipPipPip
  • 5075 сообщений
Репутация: 786
Мастер

Отправлено 27 June 2012 - 10:01 AM

А это нормально?

Нет, не нормально. Но судя по
Sql: insert into fsca_error_log (errors, tstamp)
к модулю "FAQ" это не имеет отношения.

У меня структура таблицы error_log такова:
mysql> desc cpu_error_log;
+--------+-----------+------+-----+-------------------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------+-----------+------+-----+-------------------+-------+
| errors | text | NO | | NULL | |
| tstamp | timestamp | NO | | CURRENT_TIMESTAMP | |
+--------+-----------+------+-----+-------------------+-------+
2 rows in set (0.00 sec)

У Вас, видимо, поля tstamp нет.

PS. Хотя могу быть и не прав, пишу быстренько навскидку. По крайней мере, каким-то боком там упоминается функция discGetAllAnswer(), а она прямиком относится к FAQ.
  • 0
http://cpu.badisoft.ru (тестовый сайт), http://badisoft.ru (модули)

#27 mailomsk

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

  • Assistent vsupport.club
  • PipPipPip
  • 135 сообщений
Репутация: 0
Начинающий
  • ГородОмск

Отправлено 27 June 2012 - 10:15 AM

А это нормально?

Нет, не нормально. Но судя по
Sql: insert into fsca_error_log (errors, tstamp)
к модулю "FAQ" это не имеет отношения.

У меня структура таблицы error_log такова:
mysql> desc cpu_error_log;
+--------+-----------+------+-----+-------------------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------+-----------+------+-----+-------------------+-------+
| errors | text | NO | | NULL | |
| tstamp | timestamp | NO | | CURRENT_TIMESTAMP | |
+--------+-----------+------+-----+-------------------+-------+
2 rows in set (0.00 sec)

У Вас, видимо, поля tstamp нет.

Да совершенно верно нет такого поля! Подскажите запрос на создание енного?

1 errors text utf8_general_ci Нет Нет 2 tstamp timestamp on update CURRENT_TIMESTAMP Нет CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
Изображение
Вроде то
  • 0

#28 badisoft

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

  • Assistent vsupport.club
  • PipPipPip
  • 5075 сообщений
Репутация: 786
Мастер

Отправлено 27 June 2012 - 10:17 AM

Читайте описание запроса ALTER TABLE.

PS. Интересно, КАК может получиться, что его нет? Это же штатная таблица ShopCMS, создаваемая при инсталляции :).
  • 0
http://cpu.badisoft.ru (тестовый сайт), http://badisoft.ru (модули)

#29 mailomsk

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

  • Assistent vsupport.club
  • PipPipPip
  • 135 сообщений
Репутация: 0
Начинающий
  • ГородОмск

Отправлено 27 June 2012 - 10:35 AM

Грохнул наверно!
Восстановил!
вот что появилось после отправки сообщения
WARNING: Missing argument 2 for discGetAllAnswer(), called in /**/core/includes/admin/sub/catalog_answer.php on line 115 and defined
Line: 20
File: /**/core/functions/answer_functions.php
Link: /admin.php?dpt=catalog&sub=answer
Date: 27.06.12 - 12:28:51
Dump:
array(2) {
  ["dpt"]=>
  string(7) "catalog"
  ["sub"]=>
  string(6) "answer"
}
array(0) {
}

  • 0

#30 Pascal

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

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

Отправлено 27 June 2012 - 11:28 AM

если не ошибаюсь, то говорит, что функция discGetAllAnswer() не определена в core/functions/answer_functions.php

У Вас линк к модуля такой
admin.php?dpt=catalog&sub=answer
или такой
admin.php?dpt=modules&sub=answer
?
  • 0

#31 mailomsk

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

  • Assistent vsupport.club
  • PipPipPip
  • 135 сообщений
Репутация: 0
Начинающий
  • ГородОмск

Отправлено 27 June 2012 - 11:43 AM

Не понимаю вопроса! Честно.

Вот catalog_answer.php
Спойлер

Вот answer_functions.php
Спойлер

  • 0

#32 badisoft

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

  • Assistent vsupport.club
  • PipPipPip
  • 5075 сообщений
Репутация: 786
Мастер

Отправлено 27 June 2012 - 12:52 PM

если не ошибаюсь, то говорит, что функция discGetAllAnswer() не определена в core/functions/answer_functions.php

Ошибаетесь. Это ошибка писателя модуля, перепиливавшего его из штатного модуля дисскуссий.
В 115-й строке файла catalog_answer.php функция discGetAllAnswer() вызывается без аргументов, а они (два из трех) обязательно должны быть.
Об этом в сообщении написано прямым текстом: Missing argument 2 for discGetAllAnswer().
Лечится очень просто - надо таки дать этой функции эти два аргумента, т.е. discGetAllAnswer() заменить на discGetAllAnswer('',$ttt)
Более правильное решение, а не затычку мне искать лень.

PS. Собственно, у Вас такой Warning тоже должен присутствовать в полный рост.
  • 0
http://cpu.badisoft.ru (тестовый сайт), http://badisoft.ru (модули)

#33 Pascal

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

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

Отправлено 27 June 2012 - 07:07 PM

2 варианта:
1. просто закомментировать 115 и 117 строки
2. строки с 115 по 126
					    $discussed_products = discGetAllAnswer();
					    $smarty->assign( "products", $discussed_products );
					    $callBackParam["productID"] = $_GET["productID"];
					    $smarty->assign( "productID", $_GET["productID"] );
					    $count = 0;
					    $navigatorHtml = GetNavigatorHtml( GetUrlToNavigate(), 20,
													    'discGetAllAnswer', $callBackParam,
													    $discussions, $offset, $count );
					  
заменить на вот это:
$smarty->assign( "products", $discussed_products );
					    $callBackParam["productID"] = $_GET["productID"];
					    $smarty->assign( "productID", $_GET["productID"] );
					    $count = 0;
					    $navigatorHtml = GetNavigatorHtml( GetUrlToNavigate(), 20,
													    'discGetAllAnswer', $callBackParam,
													    $discussions, $offset, $count );
	  
	  $count1 = 0;
	  $discussed_products = discGetAllAnswer(array(), $count1);
					    $smarty->assign( "products", $discussed_products );

  • 2

#34 Jeck2000

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

  • Assistent vsupport.club
  • PipPipPip
  • 159 сообщений
Репутация: 8
Начинающий
  • ГородСанкт-Петербург

Отправлено 10 July 2012 - 06:31 AM

Прикольная штуковина. После небольших танцев с бубном заработала. Эх, не хватает 2-х мелочей. Оповещение админа о новом вопросе и неплохо бы еще пользователя (уж раз зачем-то email спрашивается) оповещать о поступлении ответа на его вопрос
  • 0

#35 badisoft

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

  • Assistent vsupport.club
  • PipPipPip
  • 5075 сообщений
Репутация: 786
Мастер

Отправлено 10 July 2012 - 07:51 AM

не хватает 2-х мелочей. Оповещение админа о новом вопросе и неплохо бы еще пользователя (уж раз зачем-то email спрашивается) оповещать о поступлении ответа на его вопрос

Это весьма не сложно перенести из модуля Гостевая Книга, там буквально одна или две строки на предмет отправки емейла.
  • 1
http://cpu.badisoft.ru (тестовый сайт), http://badisoft.ru (модули)

#36 Jeck2000

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

  • Assistent vsupport.club
  • PipPipPip
  • 159 сообщений
Репутация: 8
Начинающий
  • ГородСанкт-Петербург

Отправлено 10 July 2012 - 11:50 AM

не хватает 2-х мелочей. Оповещение админа о новом вопросе и неплохо бы еще пользователя (уж раз зачем-то email спрашивается) оповещать о поступлении ответа на его вопрос

Это весьма не сложно перенести из модуля Гостевая Книга, там буквально одна или две строки на предмет отправки емейла.


Так это не сложно тому кто знает :) , вот написал бы кто как это сделать, было бы просто замечательно ! Многие бы поблагодарили, ибо вещь нужная, а главное полезная :)
  • 0

#37 badisoft

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

  • Assistent vsupport.club
  • PipPipPip
  • 5075 сообщений
Репутация: 786
Мастер

Отправлено 10 July 2012 - 12:07 PM

вот написал бы кто как это сделать, было бы просто замечательно

Я чуть позже напишу. Скорее всего, вечером. Там действительно две строчки, но сейчас не хочется озадачиваться.
  • 0
http://cpu.badisoft.ru (тестовый сайт), http://badisoft.ru (модули)

#38 Jeck2000

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

  • Assistent vsupport.club
  • PipPipPip
  • 159 сообщений
Репутация: 8
Начинающий
  • ГородСанкт-Петербург

Отправлено 10 July 2012 - 12:09 PM

вот написал бы кто как это сделать, было бы просто замечательно

Я чуть позже напишу. Скорее всего, вечером. Там действительно две строчки, но сейчас не хочется озадачиваться.


Спасибо ! С нетерпением !
  • 0

#39 badisoft

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

  • Assistent vsupport.club
  • PipPipPip
  • 5075 сообщений
Репутация: 786
Мастер

Отправлено 10 July 2012 - 01:31 PM

Я чуть позже напишу.

В файле answer.php после строки

discAddAnswer( $_POST["answerID"], $_POST["nick"], $_POST["body"], $_POST["email"], 0 );

вставьте строку

xMailTxtHTML(CONF_GENERAL_EMAIL, "New question added on ".$_SERVER[SERVER_NAME], $_POST["body"], $_POST["email"], $_POST["nick"]);

  • 0
http://cpu.badisoft.ru (тестовый сайт), http://badisoft.ru (модули)

#40 Jeck2000

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

  • Assistent vsupport.club
  • PipPipPip
  • 159 сообщений
Репутация: 8
Начинающий
  • ГородСанкт-Петербург

Отправлено 10 July 2012 - 02:02 PM

Я чуть позже напишу.

В файле answer.php после строки

discAddAnswer( $_POST["answerID"], $_POST["nick"], $_POST["body"], $_POST["email"], 0 );

вставьте строку

xMailTxtHTML(CONF_GENERAL_EMAIL, "New question added on ".$_SERVER[SERVER_NAME], $_POST["body"], $_POST["email"], $_POST["nick"]);


Шикарно ! Спасибо огромно, всё работает! А вот вот второй пункт, чтобы если пользователь вводит свой email, то ему приходило сообщение на мыло, что на его вопрос опубликован и на него поступил ответ, такую бы еще штучку
  • 0