又是一周-AJAX(三)

  hi

我又食言了,但我还是厚颜无耻的回来了。。。

1、AJAX(三)

三、AJAX的简单的例子

3.1 简介

完成:查询员工信息,通过输入员工编号查询员工的基本信息+新建员工的信息,包含员工姓名,编号,性别,职位;

实现:纯html页面+PHP页面,用来实现查询员工和新建员工的后台接口;

3.2 服务器端实现

我这里用的是wamp集合端,很多东西都不用变。

然后编写程序在adobe dreamwaverCs6

--DW

安装,网上有。

建立站点先,放在www文件夹下,然后服务器什么的也要自己整一下。

具体就是,站点就是个文件夹,在apache文件夹下就行,然后服务器地址记得写写清楚。最后保存之前,要把远程取消,勾选上测试。懒得放图片了,基本步骤很简单的。

其他就是php的内容了。

 --php代码

不再一步一步给出,直接给出。

<?php
//设置页面内容是html编码格式是utf-8
header("Content-Type: text/plain;charset=utf-8");
//header("Content-Type: application/json;charset=utf-8");
//header("Content-Type: text/xml;charset=utf-8");
//header("Content-Type: text/html;charset=utf-8");
//header("Content-Type: application/javascript;charset=utf-8");

//定义一个多维数组,包含员工的信息,每条员工信息为一个数组
$staff = array
(
array("name" => "洪七", "number" => "101", "sex" => "男", "job" => "总经理"),
array("name" => "郭靖", "number" => "102", "sex" => "男", "job" => "开发工程师"),
array("name" => "黄蓉", "number" => "103", "sex" => "女", "job" => "产品经理")
);

//判断如果是get请求,则进行搜索;如果是POST请求,则进行新建
//$_SERVER是一个超全局变量,在一个脚本的全部作用域中都可用,不用使用global关键字
//$_SERVER["REQUEST_METHOD"]返回访问页面使用的请求方法
if ($_SERVER["REQUEST_METHOD"] == "GET") {
search();
} elseif ($_SERVER["REQUEST_METHOD"] == "POST"){
create();
}

//通过员工编号搜索员工
function search(){
//检查是否有员工编号的参数
//isset检测变量是否设置;empty判断值为否为空
//超全局变量 $_GET 和 $_POST 用于收集表单数据
if (!isset($_GET["number"]) || empty($_GET["number"])) {
echo "参数错误";
return;
}
//函数之外声明的变量拥有 Global 作用域,只能在函数以外进行访问。
//global 关键词用于访问函数内的全局变量
global $staff;
//获取number参数
$number = $_GET["number"];
$result = "没有找到员工。";

//遍历$staff多维数组,查找key值为number的员工是否存在,如果存在,则修改返回结果
foreach ($staff as $value) {
if ($value["number"] == $number) {
$result = "找到员工:员工编号:" . $value["number"] . ",员工姓名:" . $value["name"] .
",员工性别:" . $value["sex"] . ",员工职位:" . $value["job"];
break;
}
}
echo $result;
}

//创建员工
function create(){
//判断信息是否填写完全
if (!isset($_POST["name"]) || empty($_POST["name"])
|| !isset($_POST["number"]) || empty($_POST["number"])
|| !isset($_POST["sex"]) || empty($_POST["sex"])
|| !isset($_POST["job"]) || empty($_POST["job"])) {
echo "参数错误,员工信息填写不全";
return;
}
//TODO: 获取POST表单数据并保存到数据库

//提示保存成功
echo "员工:" . $_POST["name"] . " 信息保存成功!";
}

--服务器端测试

通过工具实现——fiddler。

在fiddler主页面,右边有一个composer的标签页;

然后选择GET方式,写上我们文件的地址——localhost/AjaxDemo/server.php,点击执行/execute;

返回时参数错误,因为我们没有get什么数据;在地址后面跟上?number=101,再次执行,应该可以看到,101的详细信息,文件正确;

然后再次选择POST方式;则地址一栏就可以不填写参数,但再下面要写上Content-Type: application/x-www-form-urlencoded,告诉服务器要怎么做。在最下方写上数据,执行,就得到成功保存。

测试完毕,如果哪里有问题就去哪里改就是了。

这里的经验教训就是在web开发中,后台开发的测试,不要依赖前台的开发,独立完成先。

3.3 客户端的实现

明天说吧。。(又跑神去回忆幻世录了。。。。)

时间: 2024-08-26 23:51:08

又是一周-AJAX(三)的相关文章

组队开发最后冲刺周第三次会议

会议时间:组队开发最后冲刺周第三次会议   星期日   时间晚上7:00-10:30 会议地点:学一食堂 二楼 到会人员:李志岩  王亚蕊 安帅 薛禄坤 张新宇 孙存良 会议概要: 1.检查今天的任务完成情况: 2.对大家的开发内容进行最后整合: 会议详细内容:   内容一:检查今天的任务完成情况 每个同学基本完成了各自的任务 李志岩 王亚蕊 实现划屏功能 每个组员都向好友推荐了我们的成品,增加用户量 孙存良 实现数据库的最后完善 安帅 薛禄坤 实现时间提醒功能 张新宇 发表博客 发展用户 查询

5月15日----疯狂猜成语-----三周第三次站立会议 参会人员:杨霏,袁雪,胡潇丹,郭林林,尹亚男,赵静娜

疯狂猜成语-----三周第三次站立会议 参会人员:杨霏,袁雪,胡潇丹,郭林林,尹亚男,赵静娜 会议内容:总结自己的工作任务,验收自己的任务成果,领取明日任务.并且在会议上讨论我们的最后作品要求以及离最终效果的距离. 已经完成任务: 小组成员 已完成的任务 尹亚男    袁雪 数据资料收集完毕 郭林林 高级游戏代码基本成型,正在进行测试 胡潇丹 高级游戏的数据库基本建成 杨霏 后台代码连接完成 赵静娜 记录会议内容,总结会议 明日任务: 小组成员 计划任务 尹亚男 优化游戏界面,实现图片图标的转换

十一周 项目三 点类

#include<iostream> #include<Cmath> using namespace std; class Point //定义坐标点类 { public: Point():x(0),y(0) {}; Point(double x0, double y0):x(x0),y(y0){}; void PrintPoint(); //输出点的信息 double getx() { return x; } double gety() { return y; } protect

OneZero第二周第三次站立会议(2016.3.30)

会议时间:2016年3月30日  13:00~13:20 会议成员:冉华,张敏,王巍,夏一鸣. 会议目的:汇报前一天工作,全体成员评论,确定会后修改内容或分配下一步任务. 会议内容: 1.前端,完成功能点为“将获取信息转化为中端所需格式”,“发送获取的信息给中端”.以下是代码部分 1 package com.onezero.account; 2 3 import java.text.ParseException; 4 import java.text.SimpleDateFormat; 5 im

三周第三次课(12月27日) 3.7 su命令 3.8 sudo命令 3.9 限制root远程登录

三周第三次课(12月27日)3.7 su命令3.8 sudo命令3.9 限制root远程登录 su命令: 用户和工作组管理: su命令用于切换当前用户身份到其他用户身份, 变更时须输入所要变更的用户帐号与密码. 语法: su(选项)(参数) 选项: -c<指令>或--command=<指令>:执行完指定的指令后,即恢复原来的身份: -f或--fast:适用于csh与tsch,使shell不用去读取启动文件: -l或--login:改变身份时,也同时变更工作目录,以及HOME,SHE

五周第三次课(1月10日) 8.1 shell介绍 8.2 命令历史 8.3 命令补全和别名 8.4 通配符 8.5 输入输出重定向

五周第三次课(1月10日)8.1 shell介绍8.2 命令历史8.3 命令补全和别名8.4 通配符8.5 输入输出重定向 history命令: 用于显示指定数目的指令命令,读取历史命令文件中的目录到历史命令缓冲区和将历史命令缓冲区中的目录写入命令文件. 该命令单独使用时,仅显示历史命令,在命令行中,可以使用符号!执行指定序号的历史命令.例如,要执行第2个历史命令,则输入!2. 历史命令是被保存在内存中的,当退出或者登录shell时,会自动保存或读取.在内存中,历史命令仅能够存储1000条历史命

六周第三次课(1月17日) 9.6/9.7 awk

六周第三次课(1月17日)9.6/9.7awk ==================================================================================================================================================================================================================================

六周第三次课(1月17日)

六周第三次课(1月17日)9.6/9.7 awk awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大.简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理.awk有3个不同版本: awk.nawk和gawk,未作特别说明,一般指gawk,gawk 是 AWK 的 GNU 版本.awk其名称得自于它的创始人 Alfred Aho .Peter Weinberger 和 Brian Kernig

linux五周第三次课(3月7日)笔记

五周第三次课(3月7日)8.1 shell介绍8.2 命令历史8.3 命令补全和别名8.4 通配符8.5 输入输出重定向 搜索看一下有没有这两个shell,不安装. 8.2 命令历史 用过的命令,在/root/.bash_history存着 用cat命令查看一下/root/.bash_history 可以用命令history查看一下之前使用过的命令 history -c 修改了/etc/profile 配置文件,运行source命令,使其生效. 指定什么时候运行. 变量变了. 历史命令. 想要生