我这个php计算器程序为什么无法使用?

代码如下:我这段php代码有什么问题?<html><head><title>php计算器</title></head><body><?$mess="";//存放错误信息i... 代码如下:
我这段php代码有什么问题?
<html><head><title>php计算器</title></head><body><?$mess=""; //存放错误信息if (isset($_post["sub"])) //判断是否提交{ if($_post["numl"]=="") //第一个数是否为空 $mess.="第一个数不能为空!<br>";else {if(!is_numeric($_post["num1"])) //第一个是否是数字 $mess.="第一个数字必须是数字!<br>";}
if($_post["num2"]=="") //第二个数是否为空$mess.="第二个数不能为空!<br>";else {if (!is_numeric($_post["num2"])) //第二个数是否是数字 $mess.="第二个数字必须是数字!<br>";else {if($post_["opt"]=="/"&& $_post["num2"]==0)//第二个数是否为0 $mess.="除数不能为0";}}}
?><table border="1" align="center" width="400"><form action="" method="post"><caption><h1>计算器</h1></caption><tr><td><input type="text" size="4" name="num1" value="<? echo $_post["num1"]?>"/></td><td><select name="opt"><option value="+" <? echo $_post["opt"]=="+"?"selected": ""?>>+</option><option value="-" <? echo $_post["opt"]=="-"?"selected": ""?>>-</option><option value="*" <? echo $_post["opt"]=="*"?"selected": ""?>>*</option><option value="/" <? echo $_post["opt"]=="/"?"selected": ""?>>/</option><option value="%" <? echo $_post["opt"]=="%"?"selected": ""?>>%</option></select></td><td><input type="text" size="4" name="num2" value="<? echo $_post["num2"]?>"/></td>
<td><input type="submit" size="sub" value="计算"/></td></tr></form><?if(isset($_post["sub"])) //表单是否提交{echo '<tr><td colspan="4">'; if(!$mess) //如果没有错误{$sum=0;switch($_post["opt"]) //判断计算操作 {case "+":$sum=$_post["num1"]+$_post["num2"];break;case "-":$sum=$_post["num1"]-$_post["num2"];break;case "*":$sum=$_post["num1"]*$_post["num2"];break;case "/":$sum=$_post["num1"]/$_post["num2"];break;case "%":$sum=$_post["num1"]%$_post["num2"];break;}echo "结果:{$_post['num1']} {$_post['opt']} {$_post['num2']}={$sum}";}else echo $mess; //输出错误提示echo '</td></tr>';}?></table></body></html>
展开
 我来答
s524797336
推荐于2016-10-01 · TA获得超过180个赞
知道小有建树答主
回答量:126
采纳率:100%
帮助的人:187万
展开全部
<html>
<head>
<title>php计算器</title>
</head>
<body>
<?
$mess="";                              //存放错误信息
if (isset($_POST["sub"]))              //判断是否提交
{
 if($_POST["num1"]=="")             //第一个数是否为空
 $mess.="第一个数不能为空!<br>";
else
 {if(!is_numeric($_POST["num1"]))   //第一个是否是数字
 $mess.="第一个数字必须是数字!<br>";}

if($_POST["num2"]=="")                //第二个数是否为空
$mess.="第二个数不能为空!<br>";
else
 {if (!is_numeric($_POST["num2"])) //第二个数是否是数字
 $mess.="第二个数字必须是数字!<br>";
else
  {if($_POST["opt"]=="/"&& $_POST["num2"]==0)//第二个数是否为0
 $mess.="除数不能为0";}}
}
?>
<table border="1" align="center" width="400">
<form action="" method="post">
<caption><h1>计算器</h1></caption>
<tr>
<td>
<input type="text" size="4" name="num1" value="<? echo @$_POST["num1"]?>"/>
</td>
<td>
<select name="opt">
<option value="+" <? echo @$_POST["opt"]=="+"?"selected": ""?>>+</option>
<option value="-" <? echo @$_POST["opt"]=="-"?"selected": ""?>>-</option>
<option value="*" <? echo @$_POST["opt"]=="*"?"selected": ""?>>*</option>
<option value="/" <? echo @$_POST["opt"]=="/"?"selected": ""?>>/</option>
<option value="%" <? echo @$_POST["opt"]=="%"?"selected": ""?>>%</option>
</select>
</td>
<td>
<input type="text" size="4" name="num2" value="<? echo @$_POST["num2"]?>"/>
</td>
<td>
<input type="submit" name="sub" value="计算"/>
</td>
</tr>
</form>
<?
if(isset($_POST["sub"]))   //表单是否提交
{echo '<tr><td colspan="4">'; 
if(!$mess)                //如果没有错误
{
$sum=0;
switch($_POST["opt"])   //判断计算操作
 {
case  "+":
$sum=$_POST["num1"]+$_POST["num2"];break;
case "-":
$sum=$_POST["num1"]-$_POST["num2"];break;
case "*":
$sum=$_POST["num1"]*$_POST["num2"];break;
case "/":
$sum=$_POST["num1"]/$_POST["num2"];break;
case "%":
$sum=$_POST["num1"]%$_POST["num2"];break;
}
echo "结果:{$_POST['num1']} {$_POST['opt']} {$_POST['num2']}={$sum}";
}
else echo $mess;     //输出错误提示
echo '</td></tr>';}
?>
</table>
</body>
</html>
易汇商城
2014-07-29 · TA获得超过531个赞
知道小有建树答主
回答量:496
采纳率:100%
帮助的人:293万
展开全部
不知道,你的计算器为什么写的那么乱!首先$_POST需要大写,不知道你的PHP版本是什么居然还有短标记!
追问
我碰到一新的问题,麻烦帮忙看一下。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
千年446
2014-07-29 · 超过36用户采纳过TA的回答
知道小有建树答主
回答量:121
采纳率:0%
帮助的人:76万
展开全部
一堆问题
随便说几条
1,$_POST 要大写
2,<? 写成<?php 不然没开短标记不识别
3,<input type="submit" size="sub" value="计算"/>
这里明显是name=“sub" 这是你的笔误吧

还有你的num1 有的地方写成了numl(L) 骚年好好检查吧 这不是技术问题,是细心的问题

其他好好检查吧
更多追问追答
追问
短标记已开,确实笔误很多,多谢指正了。
追答
你要的不是正确的代码,而是一种排错思路和过程
不然一个计算器代码哪里搞不到

其实哥的答案才最合适......

算了 骚年加油
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
影翼视觉lyl
2014-07-29 · TA获得超过630个赞
知道小有建树答主
回答量:1279
采纳率:50%
帮助的人:676万
展开全部
你这什么报错,哪里报错了。不过看你代码问题很大
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式