网页计算器,(类,隐藏域,style=display:block等)
第一个文件:表单文件
<html> <head><meta http-equiv="content-type" content="text/html;charset=gb2312"> <script> function selType(val){ //window.alert('你点中了'+val); if(val=="jisuan"){ //显示计算界面,同时隐藏面积界面。 table1.style.display="block"; table2.style.display="none"; }else if(val=="area"){ //显示面积界面,同时隐藏计算界面。 table1.style.display="none"; table2.style.display="block"; } } </script> </head> <form action="2.php" method="post"> <input type="radio" name="sel" value="aa" onclick="selType('jisuan')">四则运算 <input type="radio" name="sel" value="bb" onclick="selType('area')">计算面积 </form> <form action="2.php" method="post"> <input type='hidden' name='doing' value='jisuan'> <table id="table1" style="display:block"> <tr><td>第一个数</td><td><input type='text' name='num1'></td></tr> <tr><td>第二个数</td><td><input type='text' name='num2'></td></tr> <tr><td>请选择运算符</td><td> <select name='oper'> <option value='+'>+</option> <option value='-'>-</option> <option value='*'>*</option> <option value='/'>/</option> </select> </td></tr> <tr><td colspan="2"><input type="submit" value="开始计算"/></td></tr> </table> </form> <form action="2.php" method="post"> <input type='hidden' name='doing' value='area'> <table id="table2" style="display:none"> <tr><td>请输入半径</td><td><input type="text" name="radius"></td></tr> <tr><td colspan="2"><input type="submit" value="计算面积"/></td></tr> </table> </form> </html>
第二个文件:接受执行文件
<?php require_once "3.class.php"; $cat1=new Cat(); //首先接受doing 值。 $doing=$_REQUEST['doing']; if($doing=='jisuan'){ $num1=$_REQUEST['num1']; $num2=$_REQUEST['num2']; $oper=$_REQUEST['oper']; echo "计算结果是:".$cat1->jisuan($num1,$num2,$oper); } if($doing=='area'){ $radius=$_REQUEST['radius']; echo "计算结果是:".$cat1->circle($radius); } ?> <br/><br/><a href="4.php">返回主界面</a>
第三个文件:类文件, (3.class.php)
<?php class Cat{ public function circle($radius){ return 3.14*$radius*$radius; } public function jisuan($num1,$num2,$oper){ switch($oper){ case '+': return $num1+$num2; break; case '-': return $num1-$num2; break; case '*': return $num1*$num2; break; case '/': return $num1/$num2; break; } } } ?>