老师请检查
<html>
<head>
<title>慕课网</title>
<meta charset="utf8"/>
</head>
<body>
<form action="#" method="post">
数值1<input type="text" name="num1" id="" value=""/>
<select name="op">
<option value="+" selected="selected">+</option>
<option value="-">-</option>
<option value="*">*</option>
<option value="/">/</option>
<option value="%">%</option>
</select>
数值2<input type="text" name="num2" id="" value="" />
<input type="submit" name="ret" id="" value="计算"/>
</form>
</body>
</html>
<?php
$ret=$_POST['ret'];
$num1=$_POST['num1'];
$op=$_POST['op'];
$num2=$_POST['num2'];
if($ret){
if(is_numeric($num1)&&is_numeric($num2)) {
if ($op == '+') {
$res = $num1 + $num2;
} elseif ($op == '-') {
$res = $num1 - $num2;
} elseif ($op == '*') {
$res = $num1 * $num2;
} elseif ($op == '/') {
if($num2!=0){
$res = $num1 / $num2;
}else{
echo exit('除数不能为0');
}
} else {
$res = $num1 % $num2;
}
}else{
echo exit('非法字符数');
}
echo "{$num1}{$op}{$num2}={$res}";
}
?>
正在回答
同学你好,运行时会报Notice错误。如图所示:

同学可以先判断是否是post传值然后再使用post接收数据。代码可参考‘不爱吃胡萝卜的小兔子’老师提供的。祝学习愉快!
您好,运行时会报Notice错误。

先判断是否有post数据,存在post数据再赋值给变量。
<?php
if($_POST){
$ret=$_POST['ret'];
$num1=$_POST['num1'];
$op=$_POST['op'];
$num2=$_POST['num2'];
if($ret){
if(is_numeric($num1)&&is_numeric($num2)) {
if ($op == '+') {
$res = $num1 + $num2;
} elseif ($op == '-') {
$res = $num1 - $num2;
} elseif ($op == '*') {
$res = $num1 * $num2;
} elseif ($op == '/') {
if($num2!=0){
$res = $num1 / $num2;
}else{
echo exit('除数不能为0');
}
} else {
$res = $num1 % $num2;
}
}else{
echo exit('非法字符数');
}
echo "{$num1}{$op}{$num2}={$res}";
}
}
?>祝学习愉快!
- 参与学习 人
- 提交作业 626 份
- 解答问题 4928 个
想要学好Web后端开发的中流砥柱语言,本阶段为你轻松铺就扎实的基础,从前端网页布局的搭建到后台PHP开发,助你从零基础到掌握主流开发语言。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星