我有一个小表单,它执行一个非常基本的功能 - 用户输入任何数字,然后从1到12的下拉列表中选择以划分该数字。预设下拉默认设置为选择“1”
当表单显示/初始化时,会显示除以0的错误,但是在单击计算按钮时 - 即使没有选择任何内容或在第一个框中输入数字,错误也会消失并且表单正确计算出“零”值。
通过我的数学=没有任何内容的初始框变量应为“零”,并且选择下拉列表默认为“1”。零/ 1 = 0并且应该没有按错误划分,但是在没有定义任何值的初始状态中我得到一个。
我尝试为第一个变量“零”设置初始值,我得到相同的结果。
<?php
$value1 = $_POST['value1'];
$value2 = $_POST['value2'];
?>
<form action="tax_calculator.php" method="post">
Enter the total amount of your tax bill <br>
<input type="text" name="value1"/><br><br>
How many payments would you like to make? <br>
<select select name="value2" id="value2">
<option selected="selected">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
</select><br><br>
<input type="submit" value="Calculate My Payment"/>
</form>
Your payment amount would be: <B>$<?php echo round($value1 / $value2 ,2); ?></b>
答案 0 :(得分:0)
使用 isset 检查值是否设置,并检查值是否使用!空
$round =0;
if(isset($_POST['value1'],$_POST['value2']) && !empty($_POST['value1']) && !empty($_POST['value2']))
{
$round = round($_POST['value1']/ $_POST['value2'] ,2);
}
Your payment amount would be: <B>$<?php echo $round; ?></b>