如果在数据库中设置了值,则将文本值应用于总计

时间:2013-01-14 23:03:35

标签: php mysql joomla1.5

我正在尝试弄清楚如何修改此代码段,以便我可以从#__kiduka_accounts表中提取gstexempt值,检查它是否设置为0或1并相应地应用税值。

$db = JFactory::getDBO();
    $query = 'SELECT a.id, a.gstexempt FROM #__users as u
        LEFT JOIN #__kiduka_accounts as a ON u.id = a.user_id 
        WHERE u.gid < 23';
    if(JRequest::getInt('membertype', 0) > 0)
    {
        $query .= ' AND a.membertype = '.JRequest::getInt('membertype', 0);
    }
    $db->setQuery($query);
    $users = $db->loadResultArray();
    $query = 'SELECT * FROM #__kiduka_products WHERE id = '.JRequest::getVar('purchaseproduct');
    $db->setQuery($query);
    $product   = $db->loadObject();
    $params    = JComponentHelper::getParams('com_kiduka');
    $tax       = $params->get('tax');
    $gstexempt = $users->gstexempt;

    if ($gstexempt != 1) {

        $subtotal   = $product->price;
        $taxtotal   = $subtotal * $tax / 100;
        $finaltotal = $taxtotal + $subtotal;

    } else {

        $subtotal   = $product->price;
        $taxtotal   = "0.00";
        $finaltotal = $subtotal;

    }

任何人都可以分享一些关于我需要改变什么以使其发挥作用的见解吗?

谢谢。

麦克

1 个答案:

答案 0 :(得分:0)

尝试重新检查您正在运行的SQL查询,并直接在服务器上运行它以验证它是否给出了您期望的结果。看起来像我这样可能导致问题的一条线是连接。

如果您在硬编码的用户行(g.id = 23)上进行连接,您确定此记录的值不是1吗?

在设置后立即尝试对用户执行print_r并查看数据库结果结构(和/或在此处发布)