Как получить значения полей webform

Главные вкладки

Аватар пользователя Conan Conan 18 февраля 2008 в 14:07

Здравствуйте. Использую drupal 5.5 и webform1.9. Сразу оговорюсь в php не силен
Помогите пожалуйста со следующими вопросами:

1. Как при использовании модуля Webform получить на странице, куда я перенаправляю пользователя после заполнения "Опросника" значения определенных полей и вывести их прямо на этой странице. Очень хочется простой и понятный пример.
Для примера: есть поля fio и mail (это их машинное название в webform). На странице перенаправления надо увидеть такой текст:

Здравствуйте [Значение поля fio] Ваш E-mail: [Значение поля mail] Спасибо за Ваш заказ.

Наиболее близкое к моему вопросу тут http://setegnom.com/node/235 Но как то все не очевидно. Хотелось бы более понятно для начинающих. К тому же не хочется вносить изменения в сам модуль без большой необходимости.

2. Как проще всего отправить со страницы сайта POST запрос в кодировке win1251. Пытаюсь создать платежи через систему RuPay, а они принимают запросы только в кодировке 1251. Нужно еще включить в этот запрос данные из формы, которую перед этим заполнит пользователь (см. вопрос1). Кроме того хочется включать туда номер покупки, который (в идеале) хотелось бы брать из таблицы с данными, в которую заносит данные webform после отправки формы. Но как это сделать? Или есть более простой способ придумать какой либо счетчик и использовать его в качестве номера покупки и хранить в той же базе отправленных форм?

Комментарии

Аватар пользователя Conan Conan 20 февраля 2008 в 15:46

Неужели никто не ответит! ОЧЕНЬ (простите за крики) но действительно очень прошу помочь ценным советом. Не могу увидеть основной вектор движения к решению поставленных задач.

Аватар пользователя Conan Conan 5 марта 2008 в 15:35

Попробую сформулировать вопрос по другому (все еще надеюсь на помощь со стороны опытных и мудрых):
Если я ставлю "галку" "Перенаправлять POST - запросы", то я могу получить данные из полей формы на странице назначения, НО... эти данные тогда не сохраняются в SQL таблице webform_submiter_data (т.е. в результатах заполнения формы)
Если "галку" не ставлю, то не могу получить данные из формы и вывести их например на странице.
Вижу 2 пути, но не знаю, как подступиться:
1 путь - попытаться взять данные из SQL таблицы webform_submiter_data после перенаправления на страницу назначения используя известное значение sid (но как это делается???????)
2 путь - Как то использовать поля Additional Validation: и Additional Processing: но это для меня вообще темный лес. Напишите плизззз пример php кода для пересылки определенных значений формы на страницу назначения.

Направьте заблудшего!!!!!!!!!!!!!!!!!!!!

Аватар пользователя orb orb 3 сентября 2008 в 21:15

в Additional Processing
<?php
$_SESSION['name_fio'] = $form_values['submitted_tree']['fio'];
$_SESSION['name_mail'] = $form_values['submitted_tree']['mail'];
?>

на нужной странице получить $_SESSION['name_fio'] и $_SESSION['name_mail']

Аватар пользователя flatron flatron 10 марта 2012 в 21:21

orb wrote:
в Additional Processing
<?php
$_SESSION['name_fio'] = $form_values['submitted_tree']['fio'];
$_SESSION['name_mail'] = $form_values['submitted_tree']['mail'];
?>

на нужной странице получить $_SESSION['name_fio'] и $_SESSION['name_mail']

Можно чуть поподробней расписать код вывода полей?
Нужно на странице node/*/done?sid=* после заполнения формы вывести поле с ключем 897680789022222.

Я пробовал так в файле webform-confirmation.tpl.php (с разными вариациями):

<?php$_SESSION['name_897680789022222'] = $form_values['submitted_tree']['897680789022222'];
print $form_values['submitted_tree']['897680789022222']['value'];?>

Никак не работает, может вопрос и простой, но не силен в php.

Аватар пользователя vicccy vicccy 26 ноября 2011 в 19:50

orb, спасибо огромнейшее за решение. Оказалось всё очень даже просто. Теперь буду думать как результаты вывести на печать на белом листике, но это уже ерунда)