【问题标题】:Different math calculations in different browsers不同浏览器中的不同数学计算
【发布时间】:2012-08-03 09:00:50
【问题描述】:

我为我的一位客户创建了折扣功能。无论何时,将选定的优惠券输入优惠券字段,然后它将从数据库中匹配优惠券是否处于活动状态并且它是否存在?如果是,那么它会进行一些数学计算,给用户 10% 的折扣,并向用户显示折扣金额。它在 Chrome 中运行良好,但是当我在 Firefox 中测试相同的功能时,它的行为很奇怪。它给了我大约 20%、50% 的折扣。像一些随机数学计算。

我正在使用 jquery、php、mysql 向客户实时显示结果。这个问题真的是在逗我。最初,我使用 PHP 会话来获取折扣值,但我尝试将折扣值存储在 db 中,然后再次检索它进行计算。但同样的问题也会发生。我现在很困惑。

这里是jquery代码:

<script type="text/javascript">
$(document).ready(function(){
 $("button").click(function(){
    $.post('coupapply.php', {coup:$('#coupon').val()}, function(result) {
    });
    $.post('discount.php', {disc:$('#totamt tr').find("td").eq(1).html()}, function(result) {
    $('#cpresult').html(result);
    });
 });
});
</script>
<span id='cpresult'></span>

这里是php代码:

<?

if ($_REQUEST) {
$disc = $_REQUEST['disc'];
$amt = substr($disc, 1);
$caldisc = $amt*0.1;
$total = (200-$caldisc);
echo "<spain style='font-size:14px;'>*10% discount applied* Pay ".$total." now!</span>";
}
?>

让我解释一下这段代码。我使用两个 $post 函数的原因是因为我从当前页面获得了两个值。一个是设置为“coup”的优惠券代码,一个是设置为“disc”的总计算金额。然后两个值都处理到不同的 php 页面并打印结果。 我认为问题不在于 PHP 代码。问题在于我的 jquery 代码。我尝试在 php 代码中使用一些常量值来进行 200-100 之类的计算,并且效果很好。但是'disc'变量的值正在产生影响。

问题已解决:实际发生的情况是我包含了这样的空间 200 美元

这个空间在 Firefox 浏览器中造成了所有问题。所以,我最初使用 substr() 是从位置 1 断开字符串,但现在。我更改了中断位置并将其设置为 2,现在一切都很好。顺便说一句,谢谢你们的帮助:)

【问题讨论】:

  • 如果您不发布计算结果,我们如何发表评论?
  • 对不起,我已经提供了代码。请看一下。

标签: php jquery session firefox google-chrome


【解决方案1】:

PHP 是一种服务器端语言。向服务器发送请求,服务器运行 PHP 代码。这意味着无论您使用什么浏览器,您的 PHP 代码都无法返回不同的结果。您的 MySQL 数据库也是如此。知道了这一点,我们就可以查明问题了。

问题出在您的 HTML 或 javascript (jQuery) 中。没有代码,我们不知道在哪里。


阅读您的编辑后:

我尝试将折扣值存储在 db 中,然后再次检索它 用于计算。但同样的问题也会发生。

在处理响应时听起来像是出了问题。如果您临时更改您的 PHP 代码使其始终返回静态值,而浏览器仍然给出不同的结果,您就知道是您的 javascript 错误地解释了这些值。

如果不是,我们知道浏览器发送的数据是不同的。在这两种情况下,错误很可能在您的 javascript 中。

这是您通过这些小信息可以获得的最佳答案。

【讨论】:

  • 我明白了你的意思,我通过将一些静态整数值放入 discount.php 页面进行测试,它表现正常。当我试图从 标记中获取总成本时,问题看起来像是通过 jquery 代码传递不同的值。但它在 chrome 中运行良好,但在 Firefox 中出现问题
  • 尝试将$caldisc = $amt*0.1; 替换为$caldisc = intval($amt);。让我们看看这是否有效......
猜你喜欢
相关资源
最近更新 更多
热门标签