Не обрабатываются некоторые поля формы интернет-магазина
Проблема в следующем:
при заполнении формы заказа товара в интернет-магазине на почту администратору приходит письмо следующего содержания:
В магазине "XXXXXXX" был оформлен заказ № 73 .
ФИО:
E-mail:
Адрес: 0, Россия, Москва и Московская обл., Москва,
Способ оплаты: Оплата наличными
Статус оплаты: не оплачено
Описание заказа: Проверка магазина. Это не заказ!Информация о заказчике: Имя: Фамилия: Отчество: E-Mail: Телефон: Факс: Адрес:
Номер Артикул Наименование Кол-во Цена Сумма
1 2797 Гладильная доска "MINI" 29*110 тефлон 2797 1 336,21 руб. 336,21 руб.
2 9616 Стол раскладной малый (сосна) 118*70*73 9616 1 3 164,20 руб. 3 164,20 руб.
Итого: 3 500,41 руб.
Т.е. не отображаются поля ФИО: и E-mail:
XSL письма администратору имеет вид:
<?xml version="1.0" encoding="windows-1251"?>
<!DOCTYPE xsl:stylesheet>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output xmlns="http://www.w3.org/TR/xhtml1/strict" doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" encoding="Windows-1251" indent="yes" method="html" omit-xml-declaration="no" version="1.0" media-type="text/xml" />
<xsl:decimal-format name="my" decimal-separator="," grouping-separator=" " />
<!-- ПисьмоАдминистратору -->
<xsl:template match="/document_list">
<html>
<head>
<style type="text/css">html, body, td
{
font-family: Arial, Verdana, Tahoma, sans-serif;
font-size: 10pt;
background-color: #FFFFFF;
color: #000000;
}
.td_main
{
border-top: black 1px solid;
border-left: black 1px solid;
}
.td_header
{
border-left: black 1px solid;
border-top: black 1px solid;
border-bottom: black 1px solid;
text-align: center;
font-weight: bold;
}
.td_main_2
{
border-left: black 1px solid;
border-bottom: black 1px solid;
}
.tr_footer td
{
font-size: 11pt;
font-weight: bold;
white-space: nowrap;
}
table, td
{
empty-cells: show;
}
</style>
</head>
<body bgcolor="#FFFFFF" color="#000000">
<p>В магазине "<xsl:value-of select="order_list/shop/shop_name" />" был оформлен <b>заказ № <xsl:value-of select="order_list/order_account_number" /></b>.</p>
<xsl:apply-templates select="order_list" />
<br />
<xsl:choose>
<xsl:when test="count(items_order) > 0">
<table cellpadding="3" cellspacing="0" width="100%">
<tr>
<td class="td_header">Номер</td>
<td class="td_header">Артикул</td>
<td class="td_header">Наименование</td>
<td class="td_header">Кол-во</td>
<td class="td_header">Цена</td>
<td class="td_header" style="border-right: black 1px solid;">Сумма</td>
</tr>
<xsl:apply-templates select="items_order" />
<tr class="tr_footer">
<td colspan="5" align="right"><b>Итого:</b></td>
<td style="white-space: nowrap">
<xsl:value-of select="format-number(order_list/sum, '### ##0,00', 'my')" /> <xsl:value-of select="order_list/currency/currency_name" disable-output-escaping="yes" /></td>
</tr>
</table>
</xsl:when>
<xsl:otherwise>
<p><b>Заказанных товаров нет</b></p>
</xsl:otherwise>
</xsl:choose>
<xsl:if test="count(shop_eitems/shop_eitem) > 0">
<br /><br />
<b>Данные об электронных товарах:</b>
<br />
<div style="background-color: #eee; padding: 10px;">
<xsl:apply-templates select="shop_eitems/shop_eitem" />
</div>
</xsl:if>
<p>
<hr />
Система управления сайтом HostCMS
<br />
<a href="http://www.hostcms.ru">http://www.hostcms.ru</a>
</p>
</body>
</html>
</xsl:template>
<!-- Шаблон вывода данных о заказе -->
<xsl:template match="order_list">
<p>
<xsl:if test="site_users_company != ''">
Компания: <xsl:value-of select="site_users_company" /><br />
</xsl:if>
ФИО: <xsl:value-of select="site_user_fio" /><br />
E-mail: <xsl:value-of select="site_users_email" /><br />
<xsl:if test="site_users_phone != ''">
Телефон: <xsl:value-of select="site_users_phone" /><br />
</xsl:if>
<xsl:if test="site_users_fax != ''">
Факс: <xsl:value-of select="site_users_fax" /><br />
</xsl:if>
Адрес:
<xsl:if test="index != ''">
<xsl:value-of select="index" /><xsl:text>, </xsl:text>
</xsl:if>
<xsl:if test="country_name != ''">
<xsl:value-of select="country_name" /><xsl:text>, </xsl:text>
</xsl:if>
<xsl:if test="location_name != ''">
<xsl:value-of select="location_name" /><xsl:text>, </xsl:text>
</xsl:if>
<xsl:if test="city_name != ''">
<xsl:value-of select="city_name" /><xsl:text>, </xsl:text>
</xsl:if>
<xsl:if test="city_area_name != ''">
<xsl:value-of select="city_area_name" /><xsl:text>, </xsl:text>
</xsl:if>
<xsl:if test="address != ''">
<xsl:value-of select="address" />
</xsl:if>
<br />
<xsl:if test="delivery_type/type_of_delivery_description != ''">
Тип доставки: <xsl:value-of select="delivery_type/type_of_delivery_description" /><br />
</xsl:if>
<xsl:if test="system_of_pay_description != ''">
Способ оплаты: <xsl:value-of select="system_of_pay_name" /><br />
</xsl:if>
Статус оплаты: <b><xsl:choose>
<xsl:when test="status_of_pay = '1'">оплачено</xsl:when>
<xsl:otherwise>не оплачено</xsl:otherwise>
</xsl:choose></b>
<br />
<xsl:if test="shop_order_description != ''">
Описание заказа: <xsl:value-of select="shop_order_description" disable-output-escaping="yes" /><br />
</xsl:if>
<xsl:if test="shop_order_system_information != ''">
Системная информация: <xsl:value-of select="shop_order_system_information" disable-output-escaping="yes" /><br />
</xsl:if>
</p>
</xsl:template>
<!-- Данные о товарах -->
<xsl:template match="items_order">
<tr>
<td class="td_main_2">
<xsl:value-of select="position()" />
</td>
<td class="td_main_2">
<xsl:choose>
<xsl:when test="order_items_marking != ''">
<xsl:value-of select="order_items_marking" />
</xsl:when>
<xsl:otherwise>—</xsl:otherwise>
</xsl:choose>
</td>
<td class="td_main_2">
<xsl:value-of select="order_items_name" />
</td>
<td class="td_main_2" style="white-space: nowrap">
<xsl:value-of select="order_items_quantity" /><xsl:text> </xsl:text><xsl:value-of select="item/mesure" />
</td>
<td class="td_main_2" style="white-space: nowrap">
<xsl:value-of select="format-number(order_items_price, '### ##0,00', 'my')" /> <xsl:value-of select="/document_list/order_list/currency/currency_name" disable-output-escaping="yes" /></td>
<td class="td_main_2" style="border-right: black 1px solid; white-space: nowrap">
<xsl:value-of select="format-number(order_items_quantity * order_items_price, '### ##0,00', 'my')" /> <xsl:value-of select="/document_list/order_list/currency/currency_name" disable-output-escaping="yes" /></td>
</tr>
</xsl:template>
<!-- Данные о товарах -->
<xsl:template match="shop_eitem">
<b><i><xsl:value-of select="shop_eitem_name" /></i></b>
<br />
<xsl:if test="shop_eitem_value != '' and /document_list/order_list/shop/shop_shops_attach_eitem = 1">
<i>Текст электронного товара:</i><br /><xsl:value-of select="shop_eitem_value" /><br />
</xsl:if>
<!-- Отображать ли ссылку на файл электронного товара-->
<xsl:if test="/document_list/order_list/shop/shop_shops_attach_eitem = 0 and shop_eitem_resource != ''">
<a href="http://{/document_list/order_list/shop/site_alias_name}{/document_list/order_list/shop/shop_path}?download_file={shop_eitem_resource}"><i>Скачать файл</i></a><br />
</xsl:if>
<xsl:if test="shop_eitem_filename != ''">
<i>Файл электронного товара:</i><br /><xsl:value-of select="shop_eitem_filename" /><br />
</xsl:if>
<br />
</xsl:template>
</xsl:stylesheet>
Пользователю письмо о сделанном заказе также не приходит, хотя в настройках магазина стоит чекбокс напротив этой функции.
В разделе Оформленные заказы Магазина поля ФИО также пусты.
Подскажите в чем может быть проблема?
при заполнении формы заказа товара в интернет-магазине на почту администратору приходит письмо следующего содержания:
В магазине "XXXXXXX" был оформлен заказ № 73 .
ФИО:
E-mail:
Адрес: 0, Россия, Москва и Московская обл., Москва,
Способ оплаты: Оплата наличными
Статус оплаты: не оплачено
Описание заказа: Проверка магазина. Это не заказ!Информация о заказчике: Имя: Фамилия: Отчество: E-Mail: Телефон: Факс: Адрес:
Номер Артикул Наименование Кол-во Цена Сумма
1 2797 Гладильная доска "MINI" 29*110 тефлон 2797 1 336,21 руб. 336,21 руб.
2 9616 Стол раскладной малый (сосна) 118*70*73 9616 1 3 164,20 руб. 3 164,20 руб.
Итого: 3 500,41 руб.
Т.е. не отображаются поля ФИО: и E-mail:
XSL письма администратору имеет вид:
<?xml version="1.0" encoding="windows-1251"?>
<!DOCTYPE xsl:stylesheet>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output xmlns="http://www.w3.org/TR/xhtml1/strict" doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" encoding="Windows-1251" indent="yes" method="html" omit-xml-declaration="no" version="1.0" media-type="text/xml" />
<xsl:decimal-format name="my" decimal-separator="," grouping-separator=" " />
<!-- ПисьмоАдминистратору -->
<xsl:template match="/document_list">
<html>
<head>
<style type="text/css">html, body, td
{
font-family: Arial, Verdana, Tahoma, sans-serif;
font-size: 10pt;
background-color: #FFFFFF;
color: #000000;
}
.td_main
{
border-top: black 1px solid;
border-left: black 1px solid;
}
.td_header
{
border-left: black 1px solid;
border-top: black 1px solid;
border-bottom: black 1px solid;
text-align: center;
font-weight: bold;
}
.td_main_2
{
border-left: black 1px solid;
border-bottom: black 1px solid;
}
.tr_footer td
{
font-size: 11pt;
font-weight: bold;
white-space: nowrap;
}
table, td
{
empty-cells: show;
}
</style>
</head>
<body bgcolor="#FFFFFF" color="#000000">
<p>В магазине "<xsl:value-of select="order_list/shop/shop_name" />" был оформлен <b>заказ № <xsl:value-of select="order_list/order_account_number" /></b>.</p>
<xsl:apply-templates select="order_list" />
<br />
<xsl:choose>
<xsl:when test="count(items_order) > 0">
<table cellpadding="3" cellspacing="0" width="100%">
<tr>
<td class="td_header">Номер</td>
<td class="td_header">Артикул</td>
<td class="td_header">Наименование</td>
<td class="td_header">Кол-во</td>
<td class="td_header">Цена</td>
<td class="td_header" style="border-right: black 1px solid;">Сумма</td>
</tr>
<xsl:apply-templates select="items_order" />
<tr class="tr_footer">
<td colspan="5" align="right"><b>Итого:</b></td>
<td style="white-space: nowrap">
<xsl:value-of select="format-number(order_list/sum, '### ##0,00', 'my')" /> <xsl:value-of select="order_list/currency/currency_name" disable-output-escaping="yes" /></td>
</tr>
</table>
</xsl:when>
<xsl:otherwise>
<p><b>Заказанных товаров нет</b></p>
</xsl:otherwise>
</xsl:choose>
<xsl:if test="count(shop_eitems/shop_eitem) > 0">
<br /><br />
<b>Данные об электронных товарах:</b>
<br />
<div style="background-color: #eee; padding: 10px;">
<xsl:apply-templates select="shop_eitems/shop_eitem" />
</div>
</xsl:if>
<p>
<hr />
Система управления сайтом HostCMS
<br />
<a href="http://www.hostcms.ru">http://www.hostcms.ru</a>
</p>
</body>
</html>
</xsl:template>
<!-- Шаблон вывода данных о заказе -->
<xsl:template match="order_list">
<p>
<xsl:if test="site_users_company != ''">
Компания: <xsl:value-of select="site_users_company" /><br />
</xsl:if>
ФИО: <xsl:value-of select="site_user_fio" /><br />
E-mail: <xsl:value-of select="site_users_email" /><br />
<xsl:if test="site_users_phone != ''">
Телефон: <xsl:value-of select="site_users_phone" /><br />
</xsl:if>
<xsl:if test="site_users_fax != ''">
Факс: <xsl:value-of select="site_users_fax" /><br />
</xsl:if>
Адрес:
<xsl:if test="index != ''">
<xsl:value-of select="index" /><xsl:text>, </xsl:text>
</xsl:if>
<xsl:if test="country_name != ''">
<xsl:value-of select="country_name" /><xsl:text>, </xsl:text>
</xsl:if>
<xsl:if test="location_name != ''">
<xsl:value-of select="location_name" /><xsl:text>, </xsl:text>
</xsl:if>
<xsl:if test="city_name != ''">
<xsl:value-of select="city_name" /><xsl:text>, </xsl:text>
</xsl:if>
<xsl:if test="city_area_name != ''">
<xsl:value-of select="city_area_name" /><xsl:text>, </xsl:text>
</xsl:if>
<xsl:if test="address != ''">
<xsl:value-of select="address" />
</xsl:if>
<br />
<xsl:if test="delivery_type/type_of_delivery_description != ''">
Тип доставки: <xsl:value-of select="delivery_type/type_of_delivery_description" /><br />
</xsl:if>
<xsl:if test="system_of_pay_description != ''">
Способ оплаты: <xsl:value-of select="system_of_pay_name" /><br />
</xsl:if>
Статус оплаты: <b><xsl:choose>
<xsl:when test="status_of_pay = '1'">оплачено</xsl:when>
<xsl:otherwise>не оплачено</xsl:otherwise>
</xsl:choose></b>
<br />
<xsl:if test="shop_order_description != ''">
Описание заказа: <xsl:value-of select="shop_order_description" disable-output-escaping="yes" /><br />
</xsl:if>
<xsl:if test="shop_order_system_information != ''">
Системная информация: <xsl:value-of select="shop_order_system_information" disable-output-escaping="yes" /><br />
</xsl:if>
</p>
</xsl:template>
<!-- Данные о товарах -->
<xsl:template match="items_order">
<tr>
<td class="td_main_2">
<xsl:value-of select="position()" />
</td>
<td class="td_main_2">
<xsl:choose>
<xsl:when test="order_items_marking != ''">
<xsl:value-of select="order_items_marking" />
</xsl:when>
<xsl:otherwise>—</xsl:otherwise>
</xsl:choose>
</td>
<td class="td_main_2">
<xsl:value-of select="order_items_name" />
</td>
<td class="td_main_2" style="white-space: nowrap">
<xsl:value-of select="order_items_quantity" /><xsl:text> </xsl:text><xsl:value-of select="item/mesure" />
</td>
<td class="td_main_2" style="white-space: nowrap">
<xsl:value-of select="format-number(order_items_price, '### ##0,00', 'my')" /> <xsl:value-of select="/document_list/order_list/currency/currency_name" disable-output-escaping="yes" /></td>
<td class="td_main_2" style="border-right: black 1px solid; white-space: nowrap">
<xsl:value-of select="format-number(order_items_quantity * order_items_price, '### ##0,00', 'my')" /> <xsl:value-of select="/document_list/order_list/currency/currency_name" disable-output-escaping="yes" /></td>
</tr>
</xsl:template>
<!-- Данные о товарах -->
<xsl:template match="shop_eitem">
<b><i><xsl:value-of select="shop_eitem_name" /></i></b>
<br />
<xsl:if test="shop_eitem_value != '' and /document_list/order_list/shop/shop_shops_attach_eitem = 1">
<i>Текст электронного товара:</i><br /><xsl:value-of select="shop_eitem_value" /><br />
</xsl:if>
<!-- Отображать ли ссылку на файл электронного товара-->
<xsl:if test="/document_list/order_list/shop/shop_shops_attach_eitem = 0 and shop_eitem_resource != ''">
<a href="http://{/document_list/order_list/shop/site_alias_name}{/document_list/order_list/shop/shop_path}?download_file={shop_eitem_resource}"><i>Скачать файл</i></a><br />
</xsl:if>
<xsl:if test="shop_eitem_filename != ''">
<i>Файл электронного товара:</i><br /><xsl:value-of select="shop_eitem_filename" /><br />
</xsl:if>
<br />
</xsl:template>
</xsl:stylesheet>
Пользователю письмо о сделанном заказе также не приходит, хотя в настройках магазина стоит чекбокс напротив этой функции.
В разделе Оформленные заказы Магазина поля ФИО также пусты.
Подскажите в чем может быть проблема?
Судя по XSL у Вас весьма старая версия. Если Вы не меняли типовую дин. страницу корзины и XSL, то рекомендую обновиться до последней версии и обновить типовую дин. страницу корзины с демо-сайта.
Версия HostCMS: 5.8.9
Менялось ли что-то в коде сказать не могу, делал не я - как можно понять в чем вообще может быть проблема. Почему некотороые строки обрабатываются, некоторые нет? где копать?
Менялось ли что-то в коде сказать не могу, делал не я - как можно понять в чем вообще может быть проблема. Почему некотороые строки обрабатываются, некоторые нет? где копать?
pankov-anton,
Начинать копать в типовой дин. странице корзины, в обработчиках платежных систем.
Начинать копать в типовой дин. странице корзины, в обработчиках платежных систем.
Авторизация