Тема: Как передать значение в поле формы

Здравствуйте!

Вывожу форму обратной связи, вот так {moduleinsert name="\Feedback\Controller\Block\Feedback" form_id="1"} 

Я хочу передать в поле name="name" формы, значение которое у меня храниться в переменной.

В модели блок-контроллера есть такая вот штука https://yadi.sk/i/cXL7puxCtTfBS

Но я что то не пойму синтаксис.

Повысить оценку Понизить оценку

Re: Как передать значение в поле формы

Разобрался, надо туда передавать массив, где ключ = имени поля.

Но проблема появилась другая ))

В магазине все покупки осуществляются без регистрации. Я на странице завершения заказа размещаю форму в которой есть поле Имя. И вот в это поле мне надо автоматический подставить имя которое было введено в поле ФИО на предыдущем шаге. Все эти данные есть в массиве $user, но то что вводиться в поле ФИО разбивается на 3 значения в массиве, а именно: {$user.surname} {$user.name} {$user.midname}, причем если покупатель ввел только одно слово, то оно добавляется в {$user.surname}, если два, то они разбиваются на {$user.surname} {$user.name} и т.д.

Таким образом если я передаю в форму массив $user, то если покупатель написал например "Миша", то в поле ничего не передастся, потому что "Миша" попадет в {$user.surname}. А если он напишет, например "Михаил Петров", то в поле соответствен попадет только "Петров".

Собрать свой массив в smarty я так понял нельзя или просто не нашел как.

Повысить оценку Понизить оценку

Re: Как передать значение в поле формы

Может криво, но сделал в итоге так ))

{$sname = ['name'=>"{$user.surname} {$user.name} {$user.midname}"]}

{moduleinsert name="\Feedback\Controller\Block\Feedback"  form_id="2" values=$sname}  

Повысить оценку Понизить оценку

Re: Как передать значение в поле формы

{$fio=explode(" ", нужная для разбиения переменная)}
{var_dump($fio)}

Всё как в PHP функция explode

Re: Как передать значение в поле формы

Закусило Александр пишет:
{$fio=explode(" ", нужная для разбиения переменная)}
{var_dump($fio)}

Всё как в PHP функция explode

Мне их наоборот надо было собрать, а не разбить. Или я не понял чего.

Повысить оценку Понизить оценку

Re: Как передать значение в поле формы

Ааа собрать. У $user есть метод getFio()

Re: Как передать значение в поле формы

Закусило Александр пишет:

Ааа собрать. У $user есть метод getFio()

А можно пример, а то в документации что то не нашел его.

Повысить оценку Понизить оценку

Re: Как передать значение в поле формы

{$fio=$user->getFio()}