热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

浅谈B/S客户端与服务器端交互数据(一)

浅谈Web数据交互(一)<?xml:namespaceprefixonsurn:schemas-microsoft-com:office:office>

浅谈Web数据交互(一)

追风

C/S模式和B/S各有其有点也各有其缺点,B/S模式在开发中需要考虑数据如何从客户端提交到服务器端,数据又如何返回到客户端,这些是B/S模式所特有的,在去年之前,开发B/S模式的程序,我都是利用form来交互数据,当我看到XML之后,发现XML是个好冬冬,有很多优点,有好的东西当然不能独享啦,想当年为了实现XML交互数据,几乎把网络翻了个遍。咚,一块砖头上来了。呵呵,废话少说,下面我们就进入正题。

B/S模式分为服务器端和客户端,客户端接受用户的请求,客户端向应用服务提出请求,应用服务从数据库服务中获得数据,应用服务将数据进行计算并将结果提交给客户端,客户端将结果呈现给用户。这样,我们就看到了数据从客户到服务器,经过服务器的处理再返回到客户端,由客户端软件(如IE)显示结果。

 

(以ASP教本语言为例,其它的语言一样哈。)

 

1Form方式

Form方式是最基本的向服务器提交数据的方式。

test.asp文件代码:

<%@ Language=Vbscript %>

<%

          Response.Expires=-1

          Response.CharSet="UTF-8"

          Session.CodePage="65001"

%>

<%

          dim intnumber

          dim strname

          if IsEmpty(Request("name")) then

          strname =""

          else

          strname =Request("name")

          end if

 

          if IsEmpty(Request("number")) then

          intnumber =0

          else

          intnumber =Request("number")

          end if

          Response.Write("
")

          Response.Write("You input name is:" & strname)

          Response.Write("
")

          Response.Write("Hidden number value is:" & intnumber)

%>

此段代码完成了从客户端输入数据,然后通过Form提交到服务器端,服务器页面接收到数据后将数据发送到客户端显示的过程。

下面解释一下此段代码:

此代码之间的为一个提交域,当这个form提交的时候,其中的数据都提交到服务器端。其中action为提交数据给的页面,也就是接受form数据的页面,这里为页面本身,当然也可以为其它页面。

method为提交的方式

此代码为一个输入框,

此代码为一隐藏value,不会在页面上显示,用来保存一些数据。

按钮按下去的时候,form就向服务器数据。服务器端的脚本

if IsEmpty(Request("name ")) then

strname =””

else

strname =Request("name ")

end if

Request("name ")取得提交的form中的namename的字段的值。

 

2URL方式

具体的做法就是通过URL地址栏传递数据到服务器端。

还是命名为test.asp

<%@ Language=Vbscript %>

<%

          Response.Expires=-1

          Response.CharSet="UTF-8"

          Session.CodePage="65001"

%>

Go

<%

          dim intnumber

          dim strname

          if IsEmpty(Request("name")) then

          strname =""

          else

          strname =Request("name")

          end if

 

          if IsEmpty(Request("number")) then

          intnumber =0

          else

          intnumber =Request("number")

          end if

          Response.Write("
")

          Response.Write("You input name is:" & strname)

          Response.Write("
")

          Response.Write("Hidden number value is:" & intnumber)

%>

 

Go

该超连接指向./test.asp,就是本身,当然也可以指向其它文件,?表示开始传递的参数。

参数name赋值yourname,不同参数之间通过&连接

通过该图和上图的比较,我们可以发现通过url传递数据会在浏览器的url中显示出来,这样用户就能看到我们是如何提交数据的,当然也可以直接修改url里面的值来传递参数了。

注意:通过url传递参数,url需要进行编码,否则可能得到的是乱码。

 


推荐阅读
author-avatar
能P开普票j专G票q903095933
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有