第二节 Web客户端基本技术
来源:互联网 发布:ps淘宝修图教程视频 编辑:程序博客网 时间:2024/05/29 14:51
1.数据传递
(1)客户端向服务器传递数据的方法:POST和GET
浏览器向服务器进行数据传送,若使用FORM,常用的传送数据的方法是GET和POST。
①GET方法通过URL请求来传递用户的输入,形式:URL?var_name1=value1&var_name2=value2,即将表单内各字段名称与其内容,以成对的字符串连接,置于表单ACTION 属性所指的URL 后,如http://211.64.32.2/login.php?name=abc&password=123,数据都会直接显示在 URL上,就像用户点击一个链接一样;POST 方法通过 HTTP POST 机制,将表单内各字段名称与其内容放置在 HTML 表头(header)内一起传送给服务器端交由ACTION 属性能所指的程序处理,该程序会通过标准输入(stdin)方式,将表单的数据读出并加以处理。
②通过GET方法提交数据,可能会带来安全性的问题。比如一个登陆页面,当通过GET方法提交数据时,用户名和密码将出现在URL上。如果登陆页面可以被浏览器缓存或其他人可以访问客户的这台机器。那么,别人就可以从浏览器的历史记录中,读取到此客户的账号和密码。所以,在某些情况下,GET方法会带来严重的安全性问题。
③GET方式传输的数据量非常小,一般限制在 2 KB 左右,但是执行效率却比 POST 方法好;而POST 方式传递的数据量相对较大,它是等待服务器来读取数据,不过也有字节限制,这是为了避免对服务器用大量数据进行恶意攻击。使用PHP,默认的POST_MAX_SIZE是2M(通过配置php.ini实现),如果你想利用POST方式上传软件,就需要更改这个值了(我设置为20M仍然能够正确上传文件),但是倘若试图使用GET方式,就没有可能实现这种功能。
建议在FORM中,使用POST方法。
下列情况表明传递数据使用的是GET方法:
在地址栏中进行GET请求
在地址栏中使用请求形式:URL?var_name1=value1&var_name2=value2……。
如http://nc.dzu.edu.cn/article/show.php?id=139(其中URL为http://nc.dzu.edu.cn/article/show.php),
作用:向URL所指向的程序文件show.php传递一个变量,变量名为id,变量值为139,该程序将从数据库中取出有关id为139的那条新闻的信息,表示成HTML代码后返回给请求者的浏览器。
在地址栏中进行GET请求的情况
单击了一个链接。
【例2-4】通过链接传递数据的HTML标记
2-4.htm源代码:
<A href="http://nc.dzu.edu.cn/article/show.php?id=139" >ASP,PHP,JSP之比较</A>
对FORM的METHOD属性,使用GET属性值
(2)小结
从PHP的角度看,浏览器向服务器传递数据:
使用表单对象时,$表单对象名=表单变量。
使用URL?参数名=参数值时,$参数名=查询字符串(querystring)变量。
如【例2-3】中,用户在文本字段textfield中输入的数据,发送到FORM的ACTION指向的服务器程序2-3.php后,2-3.php将接收到表单变量$textfield和该变量内的值。
当在超链接地址或地址栏采用URL?var_name1=value1&var_name2=value2……形式时,var_name1、var_name2等是查询字符串变量。
另外,一个服务器程序,也称页,对接收到的表单变量或查询字符串变量,都作为页内局部变量处理,本页程序执行完毕,这些变量统统自动释放,所以不能将这些变量传递到另外一个PHP程序中去,即不能跨页传递。就像接力棒比赛中,不能跨人传棒。
既然默认情况下,不能将x.php中的$a传到y.php,要想将x.php中的局部变量$a传到程序y.php,可借助于隐藏域:在x.php中用表单中的隐藏域,临时存储$a的值,然后提交表单到y.php,即可实现向y.php发送数据的目的。
具体做法一般是这样:
x.php:
…
<form action=”y.php” method=”post”>
<input type=”hidden” name=”a” value=”<? echo $a;?>”>
<input type=”submit” value=”提交”>
<input type=”reset” value=”重置”>
</form>
…
这时,从请求服务的角度来看,x.php就是客户端程序,y.php就是服务器程序了。
2.JavaScript嵌入HTML的方式
与C语言非常相似,但去掉了C语言中有关指针等容易产生的错误,并提供了功能强大的类库。对于已经具备C语言的人来说,学习JavaScript脚本语言是一件非常轻松愉快的事。
JavaScript的脚本包括在HTML中,它成为HTML文档的一部分。与HTML标识相结合,构成了一个功能强大的Internet网上编程语言。
(1)JavaScript嵌入HTML的方法
1)块嵌入:显式的JavaScript脚本块嵌入的方法
JavaScript块:
<Script Language ="JavaScript">
JavaScript语句1;
JavaScript语句2;
……
</Script>
说明: 通过脚本语言开始标记<Script>和脚本语言结束标记</Script>指明JavaScript脚本源代码块。
通过属性Language ="JavaScript"说明标记中是使用的何种语言,这里是JavaScript语言, 表示在JavaScript中使用的语言。
嵌入的地方:
嵌入<head>…</Head>中:在主页和其余部分代码之前装载,从而可使代码的功能更强大;
嵌入<Body>…</Body>中:以实现某些部分动态地创建文档。
下面是将JavaScript脚本块加入Web文档中的例子:
【例2-5】将JavaScript脚本块加入Web文档
2-5.htm源代码:
<HTML>
<Head>
<Script Language ="JavaScript">
document.write("hello,world");
//document.close();注释方式同C和PHP
</Script>
</Head>
</HTML>
在浏览器的窗口中调用2-5.htm,则显示“hello,world”字串。见图所示。
传智播客php培训,提供相关php教程
- 第二节 Web客户端基本技术
- 第二章 Web客户端技术
- 第二章 Web客户端技术
- 客户端的web技术
- 下一代web富客户端技术
- WEB 基本网页开发技术
- 第二部分 基本的函数技术
- 第二章 Hibernate基本技术(一)
- web技术概论第二周作业
- Web客户端编程技术的选择
- 第二节 mvc 客户端验证
- 【Web探索之旅】第二部分第一课:客户端语言
- Web探索之旅 | 第二部分第一课:客户端语言
- 响应式WEB设计 - 基本技术要素
- python开发技术详解---第二章:python的基本语法
- 【简记】大规模Web开发技术(第二章)
- SparkWeb-基于Web ajax技术的XMPP客户端
- 一起谈.NET技术,Silverlight面向客户端,HTML5面向Web
- 关于Intel IPP的基本使用方法
- 如何让图片在div里左右居中,上下居中
- Ubuntu 12.04 LTS server版忘记用户密码的解决办法
- android dialog去除边框
- GCC原子操作(Atomic Builtins)
- 第二节 Web客户端基本技术
- 全面理解javascript的caller,callee,call,apply概念
- 鼠标经过地方图片变亮,其他图片变暗效果 ,jq or css
- 薄荷花开
- TM、ETM+数据介绍.doc
- ubuntu 下安装 jags 及 R2jags
- 彩色转黑白公式
- 不同浏览器不同分辨率,调用不同的css文件
- Android中Bitmap和Drawable