Создание темы в гостевой книге с переходом к ней после заполнения формы


Пример функциональности можно увидеть на www.maratka.ru/sprosika. Гостевая книга, в которой можно создавать темы и комментарии в них.

Задача: после создания темы из формы нужно перейти внутрь этой темы.

Проблема: в форме еще неизвестен идентификатор записи, которая будет создана, поэтому задать URL сразу в ключе redirect_after нельзя.

Решение

1. В тэге Form задаем переход на некую промежуточную страницу gotonewtheme

$Form[html: CreateThemeForm; redirect_after: gotonewtheme; savetodb: themes]$

2. На этой странице пишем яваскриптовый редирект:

<SCRIPT>location.href='/sprosika/?nid=$IN_recordid$'</SCRIPT>

Обратите внимание, что используется не $IN_id$, а $IN_recordid$, поскольку идентификаторы при передаче со страницы на страницу уничтожаются, и чтобы узнать идентификатор созданной записи нужно обратиться к полю recordid.

См. описание макроса Form.