1.表单的request.form,写法:request.form("这里写入前面表单内组件的名称")
比如:文本框名称NAME,那就是request.form("NAME")
2.地址栏的request.querystring,写法同上,只是在地址栏中传递参数的时候能用的上。
Asp内建的request对象拥有五个获取客户端资料的方法(QueryString/Form/Cookies/ServerVariables/ClientCertificate)。语法:request.方法名称("参数")|request("参数")
如果采用后者,系统会自动选择相应的方法。
Form
这里再重新强调Form的一些属性:
Enctype=资料传送的MIME形态
Method=传送资料的方式Get/Post
Onrest=按下rest键调用的程序
Onsubmit=按下sumit键调用程序
Target=输出内容的frame窗口>
使用Form传送信息一般有三种方式:由html网页内的Form传信息给其他Asp;由Asp内的Form传信息给另外一个Asp;Asp内的信息传送给自身。
语法:Request.Form(参数)[(索引)]
其中参数表示Form中元素的名称,索引表示相同名称元素的顺序号。
例:
可循环读取名称为user的元素,其中Count是Form的系统属性,用于计算同名元素的个数,如果该元素不存在,则其值为零。如果没有指明要读取第几个同名元素,则系统会把全部同名元素的值都读取出来,并用“,”作间隔。
例:Request.form("user")=abc,bcd,cde
2、QueryString
语法:Request.QueryString(参数)[(索引)]
除了用Form传输资料外,还可通过在超链接后接“?”的方式传输信息,如:,这时可通过Request.QueryString("user")读取传输的信息;如果出现多个重名的参数,如:,则第一次
Resquest.QueryString("user")=abc,第二次
Resquest.QueryString("user")=bcd,第三次
Resquest.QueryString("user")=cde。
3、ServerVariables
语法:ServerVariables(参数名称)
我们知道Web/Browse的传输协议是http,http的报头会有一些客户端的信息,如
客户IP地址、浏览器的语言系统等。这时可通过Request.ServerVariables("***")获取相关信息,如Request.ServerVariables("Accept_Language")可获取客户端浏览器 的语系。其他系统参数见下表:
SERVER_NAME server的机器名称或IP地址。
SERVER_PORT server正在运行的端口号
REQUEST_METHOD 发出request的方法(GET/POST/HEAD
SCRIPT_NAME 程序被调用的路径,如:CGI-bin/a.pl。
REMOTE_HOST 发出request请求的远端机器(client)的名称。
REMOTE_ADDR 发出request请求的远端机器(client)的IP地址。
REMOTE_IDENT 发出request的使用者名称(如是拨号上网,则为用户ID),当NCSA IdentityCheck为enabled,而且client机器支持RFC 931时,该变量有效。
CONTENT_TYPE 数据的MIME类型,如:“text/html”。
HTTP_ACCEPT client可以接受的MIME类型列表。
HTTP_USER_AGENT client发出request的浏览器类型。
HTTP_REFERER 在读取CGI程序之前,client所指的文本URL。
4、Cookies
在客户端,Cookies记录了客户端浏览器很多的信息,我们可通过Request.Cookies("名称")命令获取它的值,也可通过Response.Cookies("名称")="值"在客户端记录一些信息,以便控制访问者。设置多重Cookies的方法为Response.Cookies("名称")("名称")="值"。
5、Cache
我们可以在浏览器上设置从Cache中抽取已经访问过的页面的信息,同样,在Asp程序中也可进行类似的设置。其中Response.Clear为清空客户端的内存。Response.Buffer=True设置可从Cache中读取资料(缺省时为False)。
6、ClientCertificate
ClientCertificate用于获取客户端浏览器的身份确认信息(符合X.509标准),但客户端浏览器必须支持SSL3.0或PCT1协议。这里需做两步工作,第一步:web server必须启动用户端认证选项;第二步:对客户端浏览器进行相应设置,这样,该方法才会生效,否则,传回empty值。
第一个问题:了解一下Cookies的设置方法就应该清楚了:利用Response对象的Cookies集合,设置Cookies的用法为:
Response.Cookies(CookieName)[(Key)|.Attribute]=value
参数说明:
(1)CookieName:代表表示Cookie的名字,由用户自行命名。
(2)Key:是Cookie指定关键字。通过给Cookie指定关键字,可使Cookie拥有多个值,这种Cookie称为带索引的Cookie。
(3)Attribute:此参数表示Cookies集合对象的属性,其最常用的属性主要是Expires(用于设置Cookies的过期日期)、Domain(用于设置Cookies的有效作用域名范围)。
上面中括号括起来的内容是可选的,也就是Cookies简单的用法是:
Response.Cookies(CookieName)=value
再多一个参数的Cookies可以称之为带索引的Cookie,这种形式可以为CookieName添加更多的属性.
回答第二个问题:
request.form("bookid")(i)表示你可能在提交页上有多个name为bookid的表单,后面的(i)是索引号,如果不用下标的话,request.form("bookid")取出的是用","分隔的多个表单的值(一楼说法有误).
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)