Форум

Открыть Ответить

Подключил функцию комментариев в своём модуле, не срабатывает POST запрос

21.09.2016 20:43:00 12.10.2016 18:05:42

Сайт на ОпенСлаед 1.3.

Добавил новый модуль, подключил функцию комментариев в просмотрах: show_com($id)

Но почему-то они не записываются. Ошибок нет и сама функция show_com() работает правильно. А вот дальше, данные из формы должны обработаться функцией save_com, но они туда не поступают. После нажатия на кнопку "Разместить комментарий" сайт переходит на первую страницу модуля.

В тоже время у модуля новости всё работает нормально.
В чём может быть проблема?

Ссылка на страницу где комментарий не добавляется battle-wizards.ru/asgard-view-5.html работающий комментарий (в новостях) battle-wizards.ru/novosti-view-23.html

В чём может быть проблема?

Open SLAED 1.*
5
Сервер в интернете
olevpa
  • Группа: Клиент
  • Пункты: 32309
  • Регистрация: 06.05.2011
  • Пол: Мужчина
olevpa
4.01

4.01

Проверяли, комментарии записываются в базу?
Код модуля можете показать?


О сколько нам открытий чудных,
Готовит просвещенья дух,
И опыт, сын ошибок трудных,
И гений, парадоксов друг...
SLAED CMS
  • Группа: Клиент
  • Пункты: 39047
  • Регистрация: 30.04.2005
  • Пол: Мужчина
  • Из: Germany
SLAED CMS
3.24

3.24

23.09.2016 20:00:30 23.09.2016 20:01:56

в базу не пишется, в логах ошибок нет.


function view() {
....
show_com($id);
.....
}


функция show_com(). Стандартная. Все данные в неё заносятся. Пробовал выводить значения переменных после формы - все переменные вывелись с верными значениями.

		echo "<form name=\"post\" action=\"index.php?name=".$conf['name']."\" method=\"post\" OnSubmit=\"ButtonDisable(this)\">";
		if (is_user()) {
			echo "<div class=\"left\">"._YOURNAME.":</div><div class=\"center\">".text_filter(substr($user[1], 0, 25))."</div>";
        } else {
			echo "<div class=\"left\">"._YOURNAME.":</div><div class=\"center\"><input type=\"text\" name=\"postname\" value=\"".$confu['anonym']."\" size=\"65\" maxlength=\"25\" class=\"".$conf['name']."\"></div>";
        }
		echo "<div class=\"left\">"._COMMENT.":</div><div class=\"center\">".textarea("1", "comment", "", $conf['name'], "5")."</div>"
		."".captcha_random().""
		."<div class=\"button\"><input type=\"hidden\" name=\"cid\" value=\"$cid\">
        <input type=\"hidden\" name=\"op\" value=\"save_com\">
        <input type=\"submit\" value=\""._COMMENTREPLY."\" class=\"fbutton\"></div></form>";


функция save_com() стандартная . В неё данные не поступают

Open SLAED 1.*
5
olevpa
  • Группа: Клиент
  • Пункты: 32309
  • Регистрация: 06.05.2011
  • Пол: Мужчина
olevpa
4.01

4.01

В функции save_com следует внести изменения с учётом вашего нового модуля.
Сейчас она сохраняет комментарии только для модулей: файлы, новости, опросы.

Рекомендую в конфигурациях системы активировать "Анализатор переменных", поможет в выявлении проблемных мест. Если конечно в теме оформления в файле index.html не удалён участок: {%BLOCKS variables%}


О сколько нам открытий чудных,
Готовит просвещенья дух,
И опыт, сын ошибок трудных,
И гений, парадоксов друг...
SLAED CMS
  • Группа: Клиент
  • Пункты: 39047
  • Регистрация: 30.04.2005
  • Пол: Мужчина
  • Из: Germany
SLAED CMS
3.24

3.24

24.09.2016 19:56:29 24.09.2016 19:58:34

нет смысла вносить туда изменения. Так как эта функция почему-то не вызывается. В этом весь и вопрос.
Я её даже полностью закоментировал добавив

echo "Коментарии отключены";


в блоке новостей отрабатывается правильно
а в блоке асгард не хочет.

анализатор переменных после нажатия на кнопку показывает:
GET - name=asgard

POST - postname=Guest, comment=проверка, family=Шрифт, color=Цвет, size=Размер, check=593584, cid=99, op=save_com

а может быть что-то из-за настроек в файлах конфиг_рерайт и .htaccess ?

olevpa
  • Группа: Клиент
  • Пункты: 32309
  • Регистрация: 06.05.2011
  • Пол: Мужчина
olevpa
4.01

4.01

а может быть что-то из-за настроек в файлах конфиг_рерайт и .htaccess

Вполне возможно, попробуйте отключить ЧПУ.


О сколько нам открытий чудных,
Готовит просвещенья дух,
И опыт, сын ошибок трудных,
И гений, парадоксов друг...
SLAED CMS
  • Группа: Клиент
  • Пункты: 39047
  • Регистрация: 30.04.2005
  • Пол: Мужчина
  • Из: Germany
SLAED CMS
3.24

3.24

пробовал отключить. всё равно не помогло.
в чём ещё может быть причина? есть какие-нито варианты?

SLAED CMS 6.* Pro
5
Сервер в интернете
olevpa
  • Группа: Клиент
  • Пункты: 32309
  • Регистрация: 06.05.2011
  • Пол: Мужчина
olevpa
4.01

4.01

Вышлите на почту весь модуль с DB таблицей, протестирую на своём локальном сервере.


О сколько нам открытий чудных,
Готовит просвещенья дух,
И опыт, сын ошибок трудных,
И гений, парадоксов друг...
SLAED CMS
  • Группа: Клиент
  • Пункты: 39047
  • Регистрация: 30.04.2005
  • Пол: Мужчина
  • Из: Germany
SLAED CMS
3.24

3.24

12.10.2016 19:43:51 12.10.2016 17:47:17

Проверил Ваш модуль, обнаружил следующее:

В конце файла модуля, index.php замените:

switch($op) {
	default:
	asgard();
	break;

	case "view":
	view();
	break;
}

На:
switch($op) {
	default:
	asgard();
	break;

	case "view":
	view();
	break;

	case "save_com":
	save_com();
	break;
}

После чего комментарий будет записан в базу.

Отправка срабатывает, но переход в соответствующий отдел, то есть обратно не происходит. Искать причину не стал в виду отсутствия времени, думаю разберётесь.

Обратите внимание на ещё один нюанс, Ваш код модуля сильно грузит систему:
Генерация: 7.876 сек. и 19 запросов к базе данных за 0.004 сек.

При этом стандартные страницы генерируются на порядок быстрее:
Генерация: 0.055 сек. и 17 запросов к базе данных за 0.005 сек.

Тут проблема не в запросах в базу, с ними на первый взгляд всё в порядке, ищите проблему в коде функции.


О сколько нам открытий чудных,
Готовит просвещенья дух,
И опыт, сын ошибок трудных,
И гений, парадоксов друг...
SLAED CMS
  • Группа: Клиент
  • Пункты: 39047
  • Регистрация: 30.04.2005
  • Пол: Мужчина
  • Из: Germany
SLAED CMS
3.24

3.24

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

Voroshilov
  • Пункты: 19
  • Регистрация: 14.10.2016
  • Из: Москва
Voroshilov
0

0

Всего: 11 на 2 страницах по 10 на каждой странице

1 2
Открыть Ответить

Хотите опробовать SLAED CMS в действии?

Идеи и предложения
Обратная связь