2013-04-11 4 views
0

Я хочу получить products_tax_class_ids на странице оплаты в магазине OSCommerce для покупок. Например, пользователь имеет 20 пунктов в своей корзине покупок, и если у какого-либо продукта есть products_tax_class_id = 30, сайт предупредит его.корзина oscommerce

Этот код не работает.

$tax = tep_db_query("select products_tax_class_id 
        from " . TABLE_PRODUCTS . " 
        where products_id = '".$card[$products_id]."'"); 

while ($warn = tep_db_fetch_array($tax)) { 
    if (warn== '30') { 
     echo "attention ...."; 
    } 
    else { 
     echo "..." 
    } 
} 

Как можно использовать compare tax_class_id?

+0

вы видите какие-то ошибки? Есть очевидные синтаксические ошибки в вашем коде – Ejaz

+0

нет, я проверяю error.php, нет ошибки, я думаю, что не могу выбрать shoppi – snk

+0

нет, я проверяю error.php, нет синтаксической ошибки, я создал класс и вызвал в checkout_payment с требованием , ничего не произошло. функции, подобные (echo $ cart-> show_total()), могут быть вызваны и выполнены отлично в оплате выплат. $ card [$ products_id] может быть неправильным? Я попробовал содержимое [$ products_id] ['products_tax_class_id'] или $ orders_products ['products_id'] from orders.php, чтобы product_id = '". $ card [$ products_id]."' ") никаких результатов снова. понимаете, как я могу вызывать элементы из торговой карты и их products_tax_class_ id. немного запутался. – snk

ответ

0

Вы не указали название поля в цикле while.

$tax = tep_db_query("select products_tax_class_id 
        from " . TABLE_PRODUCTS . " 
        where products_id = '".$card[$products_id]."'"); 

while ($warn = tep_db_fetch_array($tax)) { 
    if ($warn['products_tax_class_id'] == '30') { 
     echo "attention ...."; 
    } 
    else { 
     echo "..." 
    } 
} 

И слово "карта" должна быть "корзина" Я думаю, что ...

0
/**************************************************************************/ 
//Add following function in includes/functions/general.php 
/**************************************************************************/ 

function tep_get_products_tax($product_id) { 
    global $languages_id; 

    if (empty($language)) $language = $languages_id; 

    $product_query = tep_db_query("select products_tax_class_id from " . TABLE_PRODUCTS . " where products_id = '".$product_id."'"); 
    $product = tep_db_fetch_array($product_query); 

    return $product['products_tax_class_id']; 
    } 


/**************************************************************************/ 
//Add following code in checkout_payment.php 
/**************************************************************************/ 
$products = $cart->get_products(); 
for ($i=0, $n=sizeof($products); $i<$n; $i++) { 
    if (tep_get_products_tax($products[$i]['id']) == 30) { 
    echo "attention ...."; 
break 
    } 
} 
/**************************************************************************/ 
//EOD 
/**************************************************************************/