我想让用户输入优惠券号码以获得折扣。输入并提交优惠券号码后,页面会重新加载,并显示他们输入了正确的金额。
如果优惠券金额不是0.00 英镑,我尝试执行此操作的方式是显示勾号。但是字符串比较似乎不起作用,因为它总是认为它不是 0.00 英镑。代码如下。函数 coupon_amount() 返回票面金额。coupon_amount() 返回“£0.00”(包括英镑符号)
<?php $coup_amount = coupon_amount(); ?>
<?php $zero_amount = "£0.00"; ?>
<?php if(strcmp($coup_amount, $zero_amount)== 0) { ?>
<?php echo 'Enter coupon code if applicable:' ?>
<input type='text' class='couponinput' name='coupon_num' id='coupon_num' value='coupons_name' />
<input type='submit' class='update-button' value='submitcoupon' />
<?php } else { ?>
<?php echo 'Thanks.' ?><input type='text' disabled='disabled' class='couponinput' name='coupon_num' id='coupon_num' value='coupons_name' />
<div class='tick'></div>
<?php } ?>
我在比较方面做错了吗?
我在下面遵循了 Oscar 的建议,这是输出。似乎是编码问题。并且对于 zero_amount,英镑符号没有正确显示。
coup_amount: (£0.00) zero_amount: (�0.00)
coup_len:10 zero_len:5
strcmp: -1
coup_ascii: 38 zero_ascii:163