我的PHP代码,写一个简易的计算器,BUG很多,应该怎么改?

<?php$num1='';$num2='';$sum='';if(!empty($_POST['num1'])&&!empty($_POST)){if(@(is_num... <?php
$num1='';
$num2='';
$sum='';
if(!empty($_POST['num1'])&&!empty($_POST)){
if(@(is_numeric($_POST['num1'])&&is_numeric($_POST['num2']))){
if(@$_POST['add']){
$num1=$_POST['num1'];
$num2=$_POST['num2'];
$sum=$num1+$num2;
}elseif (@$_POST['sub']){
$num1=$_POST['num1'];
$num2=$_POST['num2'];
$sum=$num1-$num2;
}elseif (@$_POST['mul']){
$num1=$_POST['num1'];
$num2=$_POST['num2'];
$sum=$num1*$num2;
}else{
$num1=$_POST['num1'];
$num2=$_POST['num2'];
$sum=$num1/$num2;
}

}else{
echo "只能输入数字且除数不能为0";
}
}else{
echo "请输入数值!";
}

?>

<form method="post" action="">
计算器<br>
数值1:<input type="text" name="num1" value="<?php echo $num1;?>"><br>
数值2:<input type="text" name="num2" value="<?php echo $num2;?>"><br>
<input type="submit" name="add" value="+">
<input type="submit" name="sub" value="-">
<input type="submit" name="mul" value="*">
<input type="submit" name="div" value="/"><br>
结果:<input type="text" name="sum" value="<?php echo $sum;?>">
</form>
测试问题是:当我没有输入第一个数字时,抛出错误,而不是给出我写的提示“请输入数值!”;当我写了第一个数值没有写第二个数值的时候,它虽然没有抛出错误,却也没给我要的提示,而且在除法运算时抛出除数不能为0的错误,而不是给出我给的提示
展开
 我来答
百度网友dde64d5e7
2014-09-14 · TA获得超过2310个赞
知道小有建树答主
回答量:1430
采纳率:66%
帮助的人:1411万
展开全部
<?php
    $sum="";
    $num1=$_POST['num1'];
    $num2=$_POST['num2'];

if(is_numeric($num1) && is_numeric($num2)){
   if(isset($_POST['div'])){
    if($num2 ===0){
        echo "除数不能为0";
    }else{
        $sum=$num1/$num2;
    }
   }
   if(isset($_POST['add'])){
    $sum=$num1+$num2;
   }
   if(isset($_POST['sub'])){
    $sum=$num1-$num2;
   }
   if(isset($_POST['mul'])){
    $sum=$num1*$num2;
   }
}else{
    echo "请输入有效数值";
}
?>


简单点

追问

运行得都挺好的,就是刚开始会提示错误怎么办

AiPPT
2024-09-19 广告
随着AI技术的飞速发展,如今市面上涌现了许多实用易操作的AI生成工具1、简介:AiPPT: 这款AI工具智能理解用户输入的主题,提供“AI智能生成”和“导入本地大纲”的选项,生成的PPT内容丰富多样,可自由编辑和添加元素,图表类型包括柱状图... 点击进入详情页
本回答由AiPPT提供
匿名用户
2014-09-14
展开全部
不要使用@屏蔽错误提示信息,宁可使用isset()函数判断一下。
追问
好神奇,我只是按你说的改了一下isset,问题就全解决了,谁能解释一下这是什么道理
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式