0

您好,我是 PHP 新手。

所以我在这里有这个查询来检查数据库中Order Total的 sstatus是否设置为 1 或 0

$chk_dscnt=mysql_query("SELECT * FROM `discount` WHERE `discount_type` = 'Order Total'  ");
while ($x=mysql_fetch_array($chk_dscnt)) {
    echo $x['status'];
}

(I already have a function to change the status to 1 or 0).

$grand_total如果status是 1,我想打折,$grand_total如果状态为 0,则显示正常。但即使我将 设置status为 1 或 0,它总是执行elseif statement并显示undiscounted price或正常价格。

是否有任何逻辑或语法错误?需要你们帮助:)

if ($x == '1') 
{   
    $subt = 0;
        $discounted_price= $grand_total - ($grand_total*(5/100) );
        $subt= $subt + $discounted_price;
        echo '<input type=text name=total value='.$subt.'>';
}
else if($x == '0'){ 

     $subt =$grand_total; ;
        echo '<input type=text name=total value='.$subt.'>';

}
4

1 回答 1

0

在你的情况下$x是一个数组。所以你不能将数组与这样的字符串进行比较

if ($x == '1')

您需要使用索引进行比较

if ($x['status'] == '1')
于 2013-07-13T06:36:15.757 回答