Здрасте!
Озадачил себя обновленим счёт-фактуры что высылается на почту после оплаты заказа. Первое время всё работало (когда были выставлены ещё не все сокращения), теперь же при оформелнии заказа старница не загружается, а если обновить зависшую страничку - появляется уведомления, что якобы заказ оформлен, вот только оповещение на почту не приходит. Тоже самое с /admin/store/orders/[номер_заказа]/invoice/print. Белая страница. Причём если посмотреть код страницы - браузер утверждает что на странице нету ничего кроме <html></html>
.
В логах ничего. При возвращении старой формы - всё работает. Из чего делаю вывод что дело в моём коде.
P.S. Не знаю разрешено ли тут такие длинные посты писать, но спойлера я в списке BB-кодов не нашёл)
<?php<div class="body" style="background:#fff; width:600px; font-family:Arial">
<div class="header">
<img src="http://###.ru/logo-mail.png" alt="###" style="margin-top:0px; margin-left:0px;">
<font style="font-size:26px;font-weight:bold;bottom:25px;position:relative;left:20px;">Детали заказа #<?php echo $order_link; ?></font><br>
<font style="font-size:18px;">Спасибо за Ваш заказ, <?php echo $order_first_name; ?>!</font>
</div>
<div class="block1">
<div class="block1-header" style="margin-top:20px;background:#c0c0c0;border-radius:5px 5px 0px 0px;width:230px;height:25px;">
<center><font style="font-size:18px;font-weight:bold;">Информация о покупке</font></center>
</div>
<div class="block1-body" style="font-size:12px;padding-left:5px;padding-top:5px;padding-bottom:5px;background-color:#dedede;">
<div class="block1-body-title" style="display:inline-block;">
Адрес электр. почты:<br>
Телефон:<br>
Метод оплаты:
Комментарии к заказу:
</div>
<div class="block1-body-value" style="display:inline-block;margin-left:20px;">
<?php echo $order_email; ?><br>
<?php echo $order_shipping_phone; ?><br>
<?php if (isset($order_payment_method)) { echo $order_payment_method; } ?><br>
<?php echo $order_comments; ?>
</div>
<br>Адрес доставки:<br>
<?php echo $order_shipping_address; ?>
</div>
</div>
<div class="block2">
<div class="block2-header" style="margin-top:20px;background:#c0c0c0;border-radius:5px 5px 0px 0px;width:230px;height:25px;">
<center><font style="font-size:18px;font-weight:bold;">Стоимость заказа</font></center>
</div>
<div class="block2-body" style="font-size:12px;padding-left:5px;padding-top:5px;padding-bottom:5px;background-color:#dedede;">
<font style="font-size:18px;font-weight:bold;">Данные о доставке:</font><br>
<div class="block2-body-title" style="display:inline-block;">
Заказ<br>
Дата заказа:<br>
Способ доставки:<br>
Итого за товары:<br>
Почта России:<br>
----<br>
Сумма для данного заказа:
</div>
<div class="block2-body-value" style="display:inline-block;margin-left:20px;">
#<?php echo $order_link; ?><br>
<?php echo $order_date_created; ?><br>
<?php echo $order_shipping_method; ?><br>
<?php echo $order_subtotal; ?><br>
Бесплатно<br><br>
<?php echo $order_total; ?>
</div><br>
<?php
$context = array(
'revision' => 'themed',
'type' => 'line_item',
'subject' => array(
'order' => $order,
),
);
foreach ($line_items as $item) {
if ($item['line_item_id'] == 'subtotal' || $item['line_item_id'] == 'total') {
continue;
}?>
<?php echo $item['title']; ?>:
<?php
$context['subject']['line_item'] = $item;
echo uc_price($item['amount'], $context);
?>
<font style="display:block;font-size:18px;font-weight:bold;margin-top:10px;">Заказанные товары:</font><br>
<div class="block2-body-cart">
<?php echo t('Products:'); ?><br />
<?php
$context = array(
'revision' => 'themed',
'type' => 'order_product',
'subject' => array(
'order' => $order,
),
);
foreach ($products as $product) {
$price_info = array(
'price' => $product->price,
'qty' => $product->qty,
);
$context['subject']['order_product'] = $product;
?>
- <?php echo $product->qty; ?> x <?php echo $product->title .' - '. uc_price($price_info, $context); ?><br />
<?php echo t('SKU: ') . $product->model; ?><br />
<?php if (isset($product->data['attributes']) && is_array($product->data['attributes']) && count($product->data['attributes']) > 0) {?>
<?php foreach ($product->data['attributes'] as $attribute => $option) {
echo ' '. t('attribute: options', array('attribute' => $attribute, 'options' => implode(', ', (array)$option))) .'<br />';
} ?>
<?php } ?>
<br />
<?php } ?>
</div>
</div>
</div>
<div class="footer" style="font-size:12px;margin-top:10px;">
<b>
Хотите управлять вашими заказами на сайте?</b>
<br>
Если Вам нужно проверить статус заказа, зайдите на <a href="$store_link">главную страницу</a> ###- и нажмите на пункт "Мои учетные данные" в меню или перейдите по следующей ссылке:
<?php echo $site_login; ?><br><br>
<b>Где я могу получить информацию по обработке моего заказа?</b><br>
Для того, чтобы узнать больше о работе с вашими заказами в ### - , пожалуйста, посетите нашу <a href="$store_help_url">страницу помощи.</a> <br><br>
Примечание: это сообщение создано автоматически. Пожалуйста, не отвечайте на него.<br><br>
<font style="font-size:18px;">Ещё раз спасибо за покупку в нашем магазине!</font>
</div>
<div class="copyright" style="font-size:14px;position:relative;right:0px;top:10px;text-align:right;">
###<br>
С нами вы действительно экономите!
</div>
</div>?>
Комментарии
Ну html добавляет сам браузер. Так что вы видите WSOD. Включите логирование ошибок и смотрите логи веб-сервера.
Спасибо. Как-то даже не подумал о логах сервера. Да, действительно есть ошибки. А именно:
<?phpPHP Parse error: syntax error, unexpected end of file in /home/###/###.ru/www/sites/all/modules/ubercart/uc_order/templates/uc_order-customer.tpl.php on line 136, referer: http://###.ru/admin/store/orders/42/invoice?>
Ещё раз сравнил исходник - заметил очень частый тег
<?php } ?>
добавил его к своему шаблону - работает. Ещё раз спасибо.
PHP я не знаю, по этому не расскажите что это за "такое"?
Нет.