дополнительные поля в форму в магазине. можно?

#
дополнительные поля в форму в магазине. можно?
Можно ли добавить дополнительные поля в форму для заказа в интернет магазин? и как это сделать?
Собственно, если конкретно, я нашла где добавляются данные из формы в сессию, а вот как потом их оттуда вытащить?! чтобы можно было в шаблоне отредактировать способ вывода?
http://www.colibre.ru - Создание и продвижение сайтов
Модератор
#
Re: дополнительные поля в форму в магазине. можно?
libertine,
о какой именно форме идет речь - в центре администрирования?
#
Re: дополнительные поля в форму в магазине. можно?
нет, там где корзина, внизу форма с именем и т.д. (у меня все остальные шаги пропущены, та что сразу после нее идет отправка) мне там нужно добавить много специфических полей, которых нет
http://www.colibre.ru - Создание и продвижение сайтов
Модератор
#
Re: дополнительные поля в форму в магазине. можно?
libertine,
Так добавьте, в чем именно проблема? Форма в типовой динамической странице.
#
Re: дополнительные поля в форму в магазине. можно?
Хм, сейчас напишу что я сделала, подскажите, что не так, пожалуйста.
1.
Добавляю в шаблон корзины новое поле
<form action="{/cart/shop/path}cart/" name="address" method="POST">
.....
   <tr>
      <td>Мобильный телефон</td>
      <td>
      <input name="mobiltel" type="text" value="" size="40"/>
      </td>
   </tr>

Далее в типовую динамическую вношу следующие изменения (привожу весь кусок, а мои изменения это запись в сессию переменной site_user_mobiltel):

/* Ввод адреса доставки */
   if (isset($_POST['step_1']))
   {
      /* Если отключен модуль пользователей сайта, то вызывается этот подэтап */
      if (isset($_POST['step_1_1a']))
      {
         /* Сохраняем данные о пользователе в сессию */
         $_SESSION['site_users_name'] = to_str($_POST['site_users_name']);
         $_SESSION['site_users_surname'] = to_str($_POST['site_users_surname']);
         $_SESSION['site_users_phone'] = to_str($_POST['site_users_phone']);
   $_SESSION['full_address'] = to_str($_POST['site_users_address']);
   $_SESSION['site_user_mobiltel'] = to_str($_POST['mobiltel']);
      }

/* Запоминаем купон */
$_SESSION['shop_coupon_text'] = to_str($_POST['shop_coupon_text']);

/* Отображаем форму ввода адреса */
//$shop->ShowAddress(to_str($GLOBALS['LA']['xsl_delivery_address']), $shop_id);

$system_of_pay_id = 1;

   if (to_int($system_of_pay_id) != 0)
      {
         if (!$shop->ExecSystemsOfPayHandler(to_int($system_of_pay_id)))
         {
            show_error_message("Не найден обработчик платежной системы с номером ".to_int($_POST['system_of_pay_id']));
         }
      }
      else
      {
         show_error_message('Ошибка! Не указана ни одна платежная система.');
      }

Далее в шаблоне для обработки платежной форме вывожу

   <xsl:if test="site_user_mobiltel != ''">
      <p>Мобильный телефон: <xsl:value-of select="site_user_mobiltel"/></p>
   </xsl:if>

Но не работает!!!
Я явно что-то пропускаю (например откуда возьмутся в xsl новые переменные, если я про это нигде не писала?!), а вот что не знаю (
http://www.colibre.ru - Создание и продвижение сайтов
#
Re: дополнительные поля в форму в магазине. можно?
libertine, после тип. дин. страницы "Интернет-магазин корзина" данные попадают в обработчик той платежной системы, которую выбрал пользователь. Файлы обработчиков всех платежных систем находятся в разделе "Интернет-магазин" --> "Справочники" --> "Платежные системы". Именно в коде обработчика данные берутся из сессии и вставляются в базу данных. В данном случае(если модуль "Пользователи сайта" отсутствует) дополнительное поле необходимо дописывать к полю "Описание заказа", т.е. в переменную $description
#
Re: дополнительные поля в форму в магазине. можно?
Нашла где формируются эти данные для письма, а как их теперь вывести в шаблоне? У меня после отправки заказа выводится собственно сам заказ и данные о заказчике. Я добавила доп поле вот сюда, а дальше что?
/* Описание заказчика */
      $description = "Информация о заказчике:\n"
      ."Имя: ".to_str($_SESSION['site_users_name'])."\n"
      ."Фамилия: ".to_str($_SESSION['site_users_surname'])."\n"
      ."Отчество: ".to_str($_SESSION['site_users_patronymic'])."\n"
      ."E-Mail: ".to_str($_SESSION['site_users_email'])."\n"
      ."Телефон: ".to_str($_SESSION['site_users_phone'])."\n"
      ."Мобильный телефон: ".to_str($_SESSION['site_user_mobiltel'])."\n"
      ."Факс: ".to_str($_SESSION['site_users_fax'])."\n"
      ."Адрес: ".to_str($_SESSION['site_users_address'])."\n";

      $order_row['description'] = to_str($description);
http://www.colibre.ru - Создание и продвижение сайтов
#
Re: дополнительные поля в форму в магазине. можно?
libertine, в XSL-шаблоне(при отсутствии модуля "Пользователи сайта" тэг description можно вывести только целиком. Отдельно вывести только мобильный телефон стандартно не получится.
#
Re: дополнительные поля в форму в магазине. можно?
Понятно, спасибо.
http://www.colibre.ru - Создание и продвижение сайтов
#
Re: дополнительные поля в форму в магазине. можно?
Пожалуйста. Вот тема http://www.hostcms.ru/forums/22/635/ может пригодиться.
Авторизация