比较不熟的JavaScript点滴,慢慢前行,附带简单复杂化的php小计算器一份

interface.php
<html>
<head>
<meta charset="utf-8" />
<title>这是一个简单的计算器</title>
</head>
<body>
<h4>这是一个简单复杂化的计算器</h4>
<hr/>
<form action="operation.php" method="post" name="interface">
<table>
<tr><td>请输入第一个数:</td><td><input type="text" name="num1" value="" /></td></tr>
<tr><td>请选择运算符号:</td>
<td><select name="symbol">
<option value="+">+</option>
<option value="-">-</option>
<option value="*">*</option>
<option value="/">/</option>
</select>
</td>
</tr>
<tr><td>请输入第二个数:</td><td><input type="text" name="num2" value="" /></td></tr>
<tr>
<td><input type="submit" value="计算结果"/></td>
</tr>
</table>
</form>
<?php
//empty判断接受值是否为空 isset判断接受值是否存在
if(isset($_GET['errno'])){
$erro=$_GET['errno'];
if($erro==1){
echo "<br><font size='4' color='red'>输入的不是数字或者为空,请重新输入!</font>";
}
}
//判断一个整数变量是否存在
if(isset($_GET['sum'])){
$sum=$_GET['sum'];
echo "<br><font size='3' color='red'>运算结果是".$sum."</font>";
}
//判断一个数是否存在
if(isset($_GET['dividend'])){
$dividend=0;
echo "<br><font size='3' color='red'>被除数不能为".$dividend."</font>";
}
?>
</body>
</html>
operation.php
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<?php
require_once "operation.class.php";
$num1=$_POST['num1'];
$num2=$_POST['num2'];
$symbol=$_POST['symbol'];
//把下面的运算封装成一个运算类
$oper1=new Oper();
$sum=$oper1->operation($num1,$num2,$symbol);
header("location:interface.php?sum=$sum");
?>
operation.class.php
<?php
//一个计算器运算的类
require_once "operation.php";//引用一个文件
class Oper{
function operation($num1,$num2,$symbol){
//判断是否是数字is_numeric
if( (is_numeric($num1) && is_numeric($num2)) ){
if($symbol=='+'){
$sum=$num1+$num2;
}
if($symbol=='-'){
$sum=$num1-$num2;
}
if($symbol=='*'){
$sum=$num1*$num2;
}
if($symbol=='/'){
if($num2==0){
header("location:interface.php?dividend=$num2");
exit();
}else{
$sum=$num1/$num2;
}
}
return $sum;
}else{
header("location:interface.php?errno=1");
exit();
}
}
}
?>
界面图

比较不熟的JavaScript点滴,慢慢前行,附带简单复杂化的php小计算器一份的更多相关文章
- JavaScript初学者福利!必须收藏的24条小技巧
JavaScript初学者福利!必须收藏的24条小技巧 前端小编 发布于 2013-12-15 22:52 查看数: 2343 评论数: 6 帖子模式 这篇文章将回顾JavaScript的知识 !如果 ...
- javascript javascript面向对象的理解及简单的示例
javascript面向对象的理解及简单的示例 零.本节重点: 1.封装: 2.继承: 壹.下面理解: 一. javascript面向对象概念: 为了说明 JavaScript 是一门彻底的面向对象的 ...
- JavaScript中if语句优化和部分语法糖小技巧推荐
前言 在前端日常开发过程中,if else判断语句使用的次数应该是比较频繁的了,一些较为复杂的场景,可能会用到很多判断,在某个代码块使用很多if else时,代码会显得较为冗余,阅读起来不够清晰. 除 ...
- javascript点滴积累
1. javascript中的array, set, map 均为数据容器,使用iterable内置的forEach方法 var a = ['A', 'B', 'C'];a.forEach(funct ...
- javascript常用方法(慢慢整理)
获取类型:[object object],[object function],[object Undefined]等 Object.prototype.toString.apply(obj); 获取对 ...
- jQuery学习之路(7)- 用原生JavaScript实现jQuery的某些简单功能
▓▓▓▓▓▓ 大致介绍 学习了妙味,用原生的JavaScript实现jQuery中的某些部分功能 定义自己的函数库lQuery ▓▓▓▓▓▓ $()选择器的实现 jQuery是面向对象的,所以自己编写 ...
- JavaScript中this指向的简单理解
首先必须要说的是,this的指向在函数定义的时候是确定不了的,只有函数执行的时候才能确定this到底指向谁,实际上this的最终指向的是那个调用它的对象(这句话有些问题,后面会解释为什么会有问题,虽然 ...
- JavaScript实现输入验证(简单的用户注册)
1.先写用户注册页面userrAdd.jsp <body> <center> <form name="f1" id="f1" ac ...
- Javascript将构造函数扩展为简单工厂
一般而言,在Javascript中创建对象时需要使用关键字new(按构造函数去调用),但是某些时候,开发者希望无论new关键字有没有被显式使用,构造函数都可以被正常调用,即构造函数同时还具备简单工厂的 ...
随机推荐
- Unity3D脚本使用:Time
1.Time 使用方式 使用效果 2.yield 延迟执行 嵌套延迟
- CodeForces 711D Directed Roads
计数,模拟. 首先观察一下给出的图的特点: $1.$一定存在环. $2.$可能存在多个环. 我们对每个环计算方案数,假设环$C$上包含$x$条边,那么把环$C$破坏掉的方案数有${2^x} - 2$种 ...
- hdu1028
#include<stdio.h>#include<string.h>const int MAXN=130;int dp[MAXN][MAXN];//dp[i][j]表示 i ...
- Junit4单元测试之高级用法
Junit单元测试框架是Java程序开发必备的测试利器,现在最常用的就是Junit4了,在Junit4中所有的测试用例都使用了注解的形式,这比Junit3更加灵活与方便.之前在公司的关于单元测试的培训 ...
- 图片切换效果,纯js
公司有个技术很牛x的“老腊肉”,我向他请教,他给了我个网址,上面蛮多效果的,于是乎~我决定照着效果看能不能自己敲出来,我要变大神X3,重要的事说3遍. 它完成的效果是这样的: 好吧,一步一步来,先把框 ...
- 【APP测试初体验】android测试命令----adb常用命令
--adb shell 命令adb devices 查看设备adb shell adb shell "ls -al /system/bin" >e:\a.txtsample_ ...
- JQuery笔记(三)选项卡
通过jq封装的方法,可以更简单的制作一个选项卡 <!DOCTYPE html> <html lang="en"> <head> <meta ...
- JavaScript中时间戳和时间的相互转换
时间转换成时间戳: var time = new Date(); var timestamp=Date.parse(time) //毫秒数,得到秒除以1000: 时间戳转成时间: 1.转换成 20 ...
- 【CSS】display: inline-block,内联元素
什么是内联元素? <CSS权威指南>中文字显示:任何不是块级元素的可见元素都是内联元素.其表现的特性是“行布局”形式,这里的“行布局”的意思就是说其表现形式始终以行进行显示.比如,我们设定 ...
- Gym 101102B The Little Match Girl(贪心+规律)
这个题目的做法不止一种,solve1:每个数字使用的火柴棒都在2~7之间,而且是连续的,就是2-7之前没有空着的数.这样就有一个结论,在下界为l,上界为r的情况下,假设有n个数,那么火柴棒总数一定在n ...