День добрый коллеги. Уже сломал себе всю голову. Вкратце:
есть плагин для выставления счета - Банковский платеж для юридических лиц.
это его вывод, не могу никак вывести артикул. Выводит только пустое поле.
Подскажите пожалуйста, где я затупил. Пробовал уже разные варианты, но все равно не получается.
Бональная вставка - <?php echo $product_sku; ?> не помогает.
<?php class num2str
{
var $nums = array(
1 => array( 'один', 'одна' ),
2 => array( 'два', 'две' ),
3 => 'три',
4 => 'четыре',
5 => 'пять',
6 => 'шесть',
7 => 'семь',
8 => 'восемь',
9 => 'девять',
10 => 'десять',
11 => 'одиннадцать',
12 => 'двенадцать',
13 => 'тринадцать',
14 => 'четырнадцать',
15 => 'пятнадцать',
16 => 'шестнадцать',
17 => 'семнадцать',
18 => 'восемнадцать',
19 => 'девятнадцать',
20 => 'двадцать',
30 => 'тридцать',
40 => 'сорок',
50 => 'пятьдесят',
60 => 'шестьдесят',
70 => 'семьдесят',
80 => 'восемьдесят',
90 => 'девяносто',
100 => 'сто',
200 => 'двести',
300 => 'триста',
400 => 'четыреста',
500 => 'пятьсот',
600 => 'шестьсот',
700 => 'семьсот',
800 => 'восемьсот',
900 => 'девятьсот',
);
var $names = array(
1000 => array( 'тысяча', 'тысячи', 'тысяч', '', 'sem' => 1 ),
1000000 => array( 'миллион', 'миллиона', 'миллионов', '', 'sem' => 0 ),
1000000000 => array( 'миллиард', 'миллиарда', 'миллиардов', '', 'sem' => 0 )
);
var $out = array();
function semantic( $num, $words )
{
$des = false;
$num = $num % 100;
if( $num > 20 )
{
$num = $num % 10;
if( !$num ){
$des= true;
}
}
if ( 1 == $num ){
return $words[0];
}elseif( $des ){
return $words[2];
}elseif( !$num ){
return $words[3];
}elseif( $num <= 4 ){
return $words[1];
}else{
return $words[2];
}
}
function small_nums( $num, $sem )
{
if( $num < 21 )
{
if( $num <= 2 )
{
$this->out[] = $this->nums[$num][$sem];
}else{
$this->out[] = $this->nums[$num];
}
}else{
$this->out[] = $this->nums[$num - ( $num % 10 )];
if( ( $num % 10 ) <= 2 )
{
$this->out[] = $this->nums[$num % 10][$sem];
}else{
$this->out[] = $this->nums[$num % 10];
}
}
}
function work( $num, $all_sem )
{
foreach( array( 1000000000, 1000000, 1000 ) as $order )
{
$temp = floor( $num / $order );
if( ( $temp - ( $temp % 100 ) ) > 0 ){
$this->out[] = $this->nums[$temp - ( $temp % 100 )];
}
$this->small_nums( $temp % 100, $this->names[$order]['sem'] );
$this->out[] = $this->semantic( $temp, $this->names[$order] );
$num -= $temp * $order;
}
$temp = $num;
if( ( $temp - ( $temp % 100 ) ) > 0 ){
$this->out[] = $this->nums[$temp - ( $temp % 100 )];
}
$this->small_nums( $temp % 100, $all_sem );
$temp = implode( ' ', $this->out );
$this->out = array();
return $temp;
}
}
class money2str
{
var $names = array(
1 => array( 'рубль', 'рубля', 'рублей', 'рублей', 'sem' => 0 ),
2 => array( 'копейка', 'копейки', 'копеек', 'копеек', 'sem' => 1 )
);
var $out = array();
function money2str()
{
$this->num2str = new num2str();
}
function work( $money, $kopnum = false )
{
$kop = substr( $money, -2 );
$rub = substr( $money, 0, -3 );
if( !$rub )
{
$this->out[] = 'ноль';
}else{
$this->out[] = $this->num2str->work( $rub, $this->names[1]['sem'] );
}
$this->out[] = $this->num2str->semantic( $rub, $this->names[1] );
if( !$kopnum )
{
if( !$kop )
{
$this->out[] = 'ноль';
}else{
$this->out[] = $this->num2str->work( $kop, $this->names[2]['sem'] );
}
}else{
$this->out[] = $kop;
}
$this->out[] = $this->num2str->semantic( $kop, $this->names[2] );
$temp = implode( ' ', $this->out );
$this->out = array();
return $temp;
}
}
?>
<?php
$name=fsch_name;
$KPP=fsch_KPP;
$INN=fsch_INN;
$Rch=fsch_Rch;
$Rch_v=fsch_Rch_v;
$BIK=fsch_BIK;
$Kch=fsch_Kch;
$IND=fsch_IND;
$obl=fsch_obl;
$gor=fsch_gor;
$ul=fsch_ul;
$dom=fsch_dom;
$office=fsch_office;
$tel=fsch_tel;
$fax=fsch_fax;
$url_img=fsch_url;
$width_img=fsch_width;
$height_img=fsch_height;
?>
<script>
function Load2(){
text = document.getElementById('result2').innerHTML;
printwin = open('', 'printwin', 'width=600,height=800');
printwin.document.open();
printwin.document.writeln('<html><head><title></title></head><body onload=print();close()>');
printwin.document.writeln(text);
printwin.document.writeln('</body></html>');
printwin.document.close();
}
</script>
<table width="560px" border="0" cellspacing="0" cellpadding="0" id=result2>
<tr>
<td><table width="100%" border="1" cellspacing="0" cellpadding="0">
<tr>
<td colspan="2" rowspan="2" valign="top" style="border-bottom:none;">
<p style="font-size:12px; padding:2px;"> <?php echo $Rch_v;?></p></td>
<td><p style="font-size:12px; padding:2px;">БИК</p></td>
<td><p style="font-size:12px; padding:2px;"><?php echo $BIK;?></p></td>
</tr>
<tr>
<td style="border-bottom:none;"><p style="font-size:12px; padding:2px;">Сч. №</p></td>
<td style="border-bottom:none;"><p style="font-size:12px; padding:2px;"><?php echo $Kch;?></p></td>
</tr>
<tr>
<td colspan="2" style="border-top:none;"><p style="font-size:10px; padding:2px;">Банк получателя</p></td>
<td style="border-top:none;"> </td>
<td style="border-top:none;"> </td>
</tr>
<tr>
<td><p style="font-size:12px; padding:2px;">ИНН <?php echo $INN; ?></p></td>
<td><p style="font-size:12px; padding:2px;">КПП <?php echo $KPP; ?></p></td>
<td rowspan="3" valign="top"><p style="font-size:12px; padding:2px;">Сч. №</p></td>
<td rowspan="3" valign="top"><p style="font-size:12px; padding:2px;"><?php echo $Rch; ?></p></td>
</tr>
<tr>
<td colspan="2" style="border-bottom:none;"><p style="font-size:12px; padding:2px;"><?php echo $name; ?></p></td>
</tr>
<tr>
<td colspan="2" style="border-top:none;"><p style="font-size:10px; padding:2px;">Получатель</p></td>
</tr>
</table></td>
</tr>
<tr>
<td>
<table height="40" width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td style="border-bottom:2px solid #000000;"><p style="font-size:16px;"><strong>Счет на оплату № ВГС<?php printf("%04d", $db->f("order_id")); ?> от <?php echo vmFormatDate($db->f("cdate"), "%d.%m.%Y");?>г.</strong></p>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td><table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td align="center"><p style="font-size:12px;">Поставщик:</p></td>
<td><p style="font-size:12px;"><strong>
<?php if ($INN!="") echo "ИНН $INN,"; ?>
<?php if ($KPP!="") echo "КПП $KPP,"; ?>
<?php if ($name!="") echo "$name,"; ?>
<?php if ($IND!="") echo "$IND,"; ?>
<?php if ($obl!="") echo "$obl,"; ?><br>
<?php if ($gor!="") echo "$gor,"; ?>
<?php if ($ul!="") echo "$ul,"; ?>
<?php if ($dom!="") echo "$dom,"; ?>
<?php if ($office!="") echo "$office,"; ?><br>
<?php if ($tel!="") echo "тел.: $tel"; ?>
<?php if ($fax!="") echo ", факс: $fax"; ?>
</strong></p></td>
</tr>
<tr>
<td width="80" align="center"><p style="font-size:12px;">Покупатель:</p></td>
<td><p style="font-size:12px;"><strong>
<?php $INN_P=$dbbt->f("bank_sort_code"); if ($INN_P!="") echo "ИНН $INN_P,";?>
<?php $KPP_P=$dbbt->f("vm_kpp"); if ($KPP_P!="") echo "КПП $KPP_P,";?>
<?php $company=$dbbt->f("company"); if ($company!="") echo "$company,";?>
<?php $zip=$dbbt->f("zip"); if ($zip!="") echo "$zip,";?>
<?php $vm_state=$dbbt->f("vm_state"); if ($vm_state!="") echo "$vm_state,";?><br>
<?php $city=$dbbt->f("city"); if ($city!="") echo "$city,";?>
<?php $address_1=$dbbt->f("address_1"); if ($address_1!="") echo "$address_1,";?>
<?php $address_2=$dbbt->f("address_2"); if ($address_2!="") echo "$address_2,";?>
<?php $office_P=$dbbt->f("vm_office"); if ($office_P!="") echo "$office_P,";?>
<?php $phone=$dbbt->f("phone_1"); if ($phone!="") echo "тел.: $phone"; ?>
<br>Контактное лицо:
<?php echo $dbbt->f("last_name");?>
<?php echo $dbbt->f("first_name");?>
<?php echo $dbbt->f("middle_name");?>
<?php $phone_2=$dbbt->f("phone_2"); if ($phone_2!="") echo "моб. тел.: $phone_2"; ?>
</strong></p>
</td>
</tr>
</table></td>
</tr>
<tr>
<td><table width="100%" border="1" cellspacing="0" cellpadding="0">
<tr>
<td align="center"><p style="font-size:12px;"><strong>№</strong></p></td>
<td align="center"><p style="font-size:12px;"><strong>Артикул</strong></p></td>
<td align="center"><p style="font-size:12px;"><strong>Товары (услуги, работы)</strong></p></td>
<td align="center"><p style="font-size:12px;"><strong>Кол-во</strong></p></td>
<td align="center"><p style="font-size:12px;"><strong>Ед.</strong></p></td>
<td align="center"><p style="font-size:12px;"><strong>Цена</strong></p></td>
<td align="center"><p style="font-size:12px;"><strong>Сумма</strong></p></td>
</tr>
<?php
$dbcart = new ps_DB;
$q = "SELECT * FROM #__vm_order_item ";
$q .= "WHERE #__vm_order_item.order_id='$order_id' ";
$dbcart->query($q);
$subtotal = 0;
$dbi = new ps_DB;
$dbdel = new ps_DB;
while ($dbcart->next_record()) {
?>
<tr>
<td align="center"><?php $nomer=$nomer+1; echo $nomer;?></td>
<!-- ! ВОТ ТУТ ! --> <td align="center"><p style="font-size:11px; padding-right:5px;"><?php echo $product_sku; ?><?php $dbcart->f("product_sku");?><?php $dbcart->p("product_sku");?> </p></td>
<td>
<p style="font-size:12px; line-height:12px; margin:0px; padding:0px; padding-left:2px; padding-right:2px;">
<?php $dbcart->p("order_item_name");?></p>
<p style="font-size:10px; line-height:11px; margin:0px; padding:0px; padding-left:10px;">
<?php echo $dbcart->f("product_attribute");?></p>
</td>
<td align="right"><p style="font-size:11px; padding-right:5px;">
<?php $dbcart->p("product_quantity");?></p></td>
<td align="center">шт.</td>
<td align="right"><p style="font-size:11px; padding-right:5px;">
<?php if( $auth["show_price_including_tax"] ){
$item_price = $dbcart->f("product_final_price");
}
else {
$item_price = $dbcart->f("product_item_price");
}
$cena2=$dbcart->f("product_final_price");
echo number_format($cena2, 2, '.', ' ');
?></p></td>
<td align="right"><p style="font-size:11px; padding-right:5px;">
<?php $total = $dbcart->f("product_quantity") * $item_price; echo number_format($total, 2, '.', ' ');?></p>
</td>
</tr><?php } ?>
<?php $details = explode( "|", $db->f("ship_method_id"));
$dostavka=$details[3];
if ($dostavka!=0) {
?>
<tr>
<td align="center"><?php $nomer=$nomer+1; echo $nomer;?></td>
<td align="center">-</td>
<td><p style="font-size:12px; padding-left:2px;">Вариант доставки:<br>
<?php echo $details[1];?></p></td>
<td> </td>
<td> </td>
<td align="right"><p style="font-size:12px; padding-right:5px;"><?php echo number_format($dostavka, 2, '.', ' ');?></p></td>
<td align="right"><p style="font-size:12px; padding-right:5px;"><?php echo number_format($dostavka, 2, '.', ' ');?></p></td>
</tr>
<?php }?>
</table></td>
</tr>
<tr>
<td>
<table width="100%" height="50" border="0" cellpadding="0" cellspacing="0">
<tr>
<td width="100"> </td>
<td width="360" height="20" align="right" valign="bottom">
<p style="font-size:12px; padding-right:5px;"><strong>Итого:</strong></p></td>
<td width="100" align="right" valign="bottom">
<p style="font-size:12px; padding-right:5px;"><strong><?php $total_sum = $db->f("order_total");
echo number_format($total_sum, 2, '.', ' ');?></strong></p>
</td>
</tr>
<tr>
<td> </td>
<td height="20" align="right">
<p style="font-size:12px; padding-right:5px;">В том числе НДС:</p></td>
<td align="right">
<p style="font-size:12px; padding-right:5px;"><?php $tax_total = $db->f("order_tax") + $db->f("order_shipping_tax"); echo number_format($tax_total, 2, '.', ' ');?></p></td>
</tr>
<tr>
<td> </td>
<td height="20" align="right">
<p style="font-size:12px; padding-right:5px;">Без налога (НДС):</p></td>
<td align="right">
<p style="font-size:12px; padding-right:5px;">
<?php $summa_bez_nalogov=$total_sum-$tax_total;
echo number_format($summa_bez_nalogov, 2, '.', ' ');?></p></td>
</tr>
</table>
</td>
</tr>
<tr>
<td>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td height="40" style="border-bottom:2px solid #000000;">
<p style="font-size:12px; padding-left:10px;">Всего наименований <strong><?php echo $nomer;?></strong>, на сумму <strong><?php echo number_format($total_sum, 2, '.', ' ');?> руб.<br>
<?php
$m = new money2str();
echo $m->work( $total_sum, true );
?>
</strong></p>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td align="center">
<img src="<?php echo $url_img; ?>" width="<?php echo $width_img; ?>" height="<?php echo $height_img; ?>">
</td>
</tr>
</table>
<br>
<input type=submit onclick=Load2() value="Распечатать счет">