PHP警告:除数为零 [英] PHP Warning: Division by zero
问题描述
我正在学习php,并建立了一个实验性的基于表单的计算器(也使用html& POST方法),该计算器将值返回到表中.输入值并单击提交"时,计算器将起作用,但是在我第一次运行代码时,在最后一行仍然出现两个被零除"错误.在此处或通过Google搜索时,似乎似乎找不到合乎逻辑的解决方案或解释.您可以提供给newb的任何解释将不胜感激.
I'm learning php and built an experimental form-based calculator (also using html & POST method) that returns values to a table. The calculator is functional when I enter my values and click submit, but I keep getting two "Division by zero" errors on the last line when I first run the code. I can't seem seem to find a logical solution or explanations when searching here or via Google. Any explanation you can provide to a newb will be appreciated.
<?php
error_reporting(E_ALL ^ E_NOTICE);
//calculate the difference in price
$itemQty = $_POST['num1'];
$itemCost = $_POST['num2'];
$itemSale = $_POST['num3'];
$shipMat = $_POST['num4'];
$diffPrice = $itemSale - $itemCost;
$actual = ($diffPrice - $shipMat) * $itemQty;
$diffPricePercent = (($actual * 100) / $itemCost) / $itemQty ;
?>
推荐答案
您需要将表单处理代码包装在条件代码中,这样在您第一次打开页面时它就不会运行.像这样:
You need to wrap your form processing code in a conditional so it doesn't run when you first open the page. Something like so:
if($_POST['num1'] > 0 && $_POST['num2'] > 0 && $_POST['num3'] > 0 && $_POST['num4'] > 0){
$itemQty = $_POST['num1'];
$itemCost = $_POST['num2'];
$itemSale = $_POST['num3'];
$shipMat = $_POST['num4'];
$diffPrice = $itemSale - $itemCost;
$actual = ($diffPrice - $shipMat) * $itemQty;
$diffPricePercent = (($actual * 100) / $itemCost) / $itemQty ;
}
这篇关于PHP警告:除数为零的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!