已有82人关注
自己写了一个计算器,但是里面有一个bug请教一下老师
发表在PHP答疑区 2017-08-22 悬赏:2 学分
是否精华
版块置顶:

我设定了除数不能为0的判断条件,在第一个空不填的情况下会正常显示报错,如图:

QQ截图20170822161701.png


但是,如果第一格填了数字,就不会提示“除数不能为0”,如图:

111.png

请问老师这是什么原因呢?

PHP代码如下:

  <?php

            $num1=true;

            $num2=true;

            $num3=true;

            $numa=true;

            $numb=true;

            $message="";

            if (isset($_GET["sub"])) {

            if ($_GET["num1"]=="") {

            $num1=false;

            $message.="第一栏不能为空";

            }

            if (!is_numeric($_GET["num1"])) {

            $numa=false;

            $message.="第一栏不是数字";

            }

            if ($_GET["num2"]=="") {

            $num2=false;

            $message.="第二栏不能为空";

            }

            if (!is_numeric($_GET["num2"])) {

            $numb=false;

            $message.="第二栏不是数字";

            }

            if ($_GET["ysf"]=="/"&&$_GET["num2"]==0) {

            $num3=false;

            $message.="除数不能为0";

            }


            if ($num1&&$numa&&$num2&&$numb&&$num3) {

 

             switch($_GET["ysf"]){

case "+":

                             $sum=$_GET["num1"]+$_GET["num2"];

                 

                    break;

                        case "-":

                    $sum=$_GET["num1"]-$_GET["num2"];


                    break;

                        case "x":

                    $sum=$_GET["num1"]*$_GET["num2"];

                   

                      break;

                        case "/":

                     $sum=$_GET["num1"]/$_GET["num2"];

                   

                    break;

                       case "%":

                    $sum=$_GET["num1"]%$_GET["num2"];

                     

                    break;

                                          }

                                                 }

                                             }

                                             


if(isset($_GET["sub"])){


echo '<tr><td colspan="5">';

if($num1 && $num1 && $numa && $numb){

echo "结果:".$_GET["num1"]." ".$_GET["ysf"]." ".$_GET["num2"]." = ".$sum;

}else{

echo $message;

}

echo '</td></tr>';

}


?>


分享到:
手机同步功能介绍
友情提示:以下图书配套资源能够实现手机同步功能
明日微信公众号
明日之星 明日之星编程特训营
客服热线(每日9:00-17:00)
400 675 1066
mingrisoft@mingrisoft.com
吉林省明日科技有限公司Copyright ©2007-2022,mingrisoft.com, All Rights Reserved长春市北湖科技开发区盛北大街3333号长春北湖科技园项目一期A10号楼四、五层
吉ICP备10002740号-2吉公网安备22010202000132经营性网站备案信息 营业执照