【问题标题】:Calculate based on user input of quantity根据用户输入的数量计算
【发布时间】:2016-01-05 17:56:55
【问题描述】:

我想根据用户输入来计算制作产品的生产成本。我有这个输入字段供用户输入他们想要的数量。

Quantity: <input type="number" name="quantity" min="1" max="100" required>

我有这个代码来反映总材料成本。

<p align="left">Total Material Cost: <u>$<?php echo $row['SUM(material_price*quantity)']; ?> </u> </p>

如何将基于用户输入的数量与材料成本联系起来?

如果用户输入 3,我想要总材料成本 * 3


这是我的材料数据库

material_master_id |material_name |数量
1 |桌面 | 1
2 |桌腿| 4

我想分别回显 id 1 和 2 的数量。

这是我的代码 &lt;p align="left"&gt;Total quantity of Table Tops: &lt;?php echo $row['quantity']; $material_master_id=="1" ;?&gt;&lt;/p&gt;

但它显示未定义索引:数量。我该如何解决?

【问题讨论】:

  • 请使用jQuery ajax获取动态数量计算。
  • 可以用PHP代码做吗?我不知道 jQuery ajax 是如何工作的。
  • 您是想在表单发布上使用 php 执行此操作,还是在客户端使用 javascript 在客户端更改 quantity 时动态执行此操作?
  • @Janice 是的,可以提交表单。我们可以刷新页面吗?

标签: php jquery


【解决方案1】:

尝试如下:

<input type="number" name="quantity" id="quantity" min="1" max="100" required />
<input type="hidden" name="material_price" id="material_price" value="<?php echo $row['material_price'] ?>" />
<p align="left" class="calculate_result"></p>

<script type="text/javascript">
    $(document).ready(function(){
        $("#quantity").focusout(function() {
            var calculate_result = parseInt($(this).val())*parseInt($("#material_price").val());
            $(".calculate_result").html(calculate_result);
        });
    });
</script>

如果你不想使用 jQuery,下面的代码很有用:

<?php if($_POST['submit_me']!="") { 
//use query to get the $row (for getting material_price)
?>
<p align="left">Total Material Cost: <u>$<?php echo row['material_price']*$_POST['quantity']; ?> </u> </p>
<?php } ?>

<form action="" method="post">
<input type="number" name="quantity" id="quantity" min="1" max="100" required />
<input type="submit" name="submit_me" value="submit" />
</form>

【讨论】:

  • 由于 OP 没有标记 jQuery,甚至声明了 I do not know how jQuery ajax works,因此描述/展示如何包含 jQuery 库可能会有所帮助。
  • @Sean He/She 在我提交答案后添加了该评论.....所以我没有表明...
  • 评论可能是在您发布之后发表的,但在 OP 的问题中他们没有提到 javascript/jQuery。建议使用 jQuery 是可以的,但您的答案应该不仅仅是 Try like below:,因为您需要解释为什么使用此代码可以满足 OP 想要做的事情。
  • 谢谢,它有效。我有另一个问题。我想分别呼应桌面和腿的数量。现在这是我的代码,它只回显数字 1。&lt;p align="left"&gt;Total quantity of Table Tops: &lt;?php echo $quantity; ?&gt;&lt;/p&gt; &lt;p align="left"&gt;Total quantity of Table Legs: &lt;?php echo $quantity; ?&gt;&lt;/p&gt; 我如何回显桌面应该是 1,腿应该是 4? View Table
  • @Janice 没有得到你的确切信息,你能在最后编辑你的查询吗......
【解决方案2】:

请使用 Jquery 计算数据。并通过 Jquery 显示结果。

【讨论】:

  • 如果您想提出建议,请写在评论中
猜你喜欢
  • 2015-02-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-05-05
  • 2019-09-04
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多