ASP编程:ASP教程:深切熟悉进修ASP内置工具Requ...
无法实现跨操作系统的应用。当然这也是微软的理由之一,只有这样才能发挥ASP最佳的能力。可是我却认为正是Windows限制了ASP,ASP的概念本就是为一个能让系统运行于一个大的多样化环境而设计的;request|工具|教程|内置工具体系进修ASP,就是先从ASP的几年夜内置工具入手下手的.一样平常称五年夜工具:Request、Response、Server、Session、Application。明天先来看看Request工具。固然一向还没有提到的就是,ASP究竟是甚么样?我看代码怎样晓得是ASP代码?很复杂,当看到“<%”和“%>”就标明是ASP,而且二者之间的就是ASP源码。
那为何要学工具,工具的感化又是怎样的?
实在ASP所供应的这些可在剧本中利用的内建工具,利用户更简单搜集经由过程扫瞄器哀求发送的信息、呼应扫瞄器和存储用户信息,从而使工具开辟者挣脱了良多啰嗦的事情。
而Request工具的次要感化就是:在服务器端承受并失掉从客户端扫瞄器提交或上传的信息。Request工具能够会见任何基于HTTP哀求传送的一切信息,包含从Form表单用POST办法或GET办法传送的参数、cookie等。
一,Request.form("name")
这是承受上一页的信息时,常会用到的一种承受体例。Request是ASP工具,form则是Request工具所包括的工具汇合(这要有区分与HTML页中的form表单,是纷歧样的),name也就是上一页表单中的某个文本框、暗码框,大概埋没域等的称号。而且另有一点十分主要:上一页Form表单的递交办法必定要为Post办法。
说不如做,看上面两个页面程序。
1,test1.html(本页是HTML的,次要供应输出信息的平台,以将信息提交到再上面的ASP页举行承受处置)
<formaction="submit1.asp"method="post">
yourname:<inputtpye="text"name="yourname"><br>
yourpwd:<inputtype="password"name="yourpwd"><br>
<inputtype="submit"value="submit">
</form>
注重method就是post,且提交的页面action为submit1.asp。
2,submit1.asp(ASP页面,举行从test1.html承受name="yourname"和name="yourpwd"的两个值)
yournameis:<%=request.form("yourname")%><br>
yourpwdis:<%=request.form("yourpwd")%>
经由过程IIS举行HTTP协定的页面调试,你会发明两个页面举行了联系关系:test1.html中静态输出的name和pwd,在submit1.asp也则举行响应的静态显现。
这就是吸收、提取并显现信息的全历程。
3,改善的submit1.asp
<%foreachiinrequest.form%>
<%=i%>:
<%=request.form(i)%>
<br>
<%next%>
接纳了for轮回语句,将上页一切的form标签信息举行承受、并显现。这在上表单页有良多项目时,十分快速地出来了局。
起首仍旧是request.form,只是前面的("yourname")或("yourpwd")酿成了变量i
经由过程for轮回对该form汇合举行遍历提取,这是一种分歧于机器地“有几个就提取几个”的编程头脑,注重把握。
二,Request.querystring("name")
此时由Request.form变成Request.querystring,最次要的仍是上页表单递交时,接纳的甚么办法。当接纳post就用Request.form,不然当接纳get时就接纳Request.querystring了。
那Request.querystring最年夜特征在那里呢?Request.querystring能检索并承受HTTP查询字符串中变量的值,而HTTP查询字符串则是由问号(?)后的值指定的。说了泰半天,持续看一个程序。
1,test2.html(本页同是HTML的,次要供应输出信息的平台,以将信息提交到再上面的ASP页举行承受处置,注重提交办法是get)
<formaction="submit2.asp"method="get">
yourname:<inputtpye="text"name="yourname"><br>
yourpwd:<inputtype="password"name="yourpwd"><br>
<inputtype="submit"value="submit">
</form>
和test1.html最年夜区分也就是method="get"
2,submit2.asp(ASP页面,举行从test1.html承受name="yourname"和name="yourpwd"的两个值)
yournameis:<%=request.querystring("yourname")%><br>
yourpwdis:<%=request.querystring("yourpwd")%>
注重此时的扫瞄器地点栏,文件前面多出了?号,?号前面附有变量名及所被赋的值,固然多个变量名之间是用&号举行毗连的。
而Request.querystring最年夜的功效就是能将?号前面的这些变量名分隔,而且所对应的值也逐一掏出。
方才说到分歧的变量名之间是用&号举行毗连,但假如是不异的变量名时,request.querystring究竟是提取前一个?后一个?仍是两个一同?
用例子措辞。
3,query.asp(称号是query.asp,由于在该页程序中是反应给本人。)
<ahref="query.asp?bookname=《asp教程》">《asp教程》</a><br>
<ahref="query.asp?bookname=《jsp教程》">《jsp教程》</a><br>
<ahref="query.asp?bookname=《xsp教程》&bookname=《xml》">《xsp教程》</a><br>
youchosed<%=request.querystring("bookname")%>
很分明当点《xsp教程》时,显现的是“《xsp教程》,《xml》”,两头主动加了“,”号。
最初仍必要申明的是:request.querystring在分页程序内里是常常用到的。
三,Request.ServerVariables("xxx")
个中ServerVariables就是服务器的情况变量了,该变量包括的内容对照多,我们一样先接纳for轮回举行遍历检察下。
1,server1.asp
<%foreachiinrequest.servervariables%>
<%=i%>:
<%=request.servervariables(i)%>
<hr>
<%Next%>
能够看到一年夜堆情况变量,个中另有没有值的,上面摘取几个对照经常使用的。
http_user_agent(客户端呆板的相干情况):<%=request.servervariables("http_user_agent")%><br>
http_accept_language(扫瞄言语):<%=request.servervariables("http_accept_language")%><br>
CONTENT_LENGTH(客户端收回内容的长度):<%=request.servervariables("CONTENT_LENGTH")%><br>
CONTENT_TYPE(内容的数据范例。如“text/html”。同附加信息的查询一同利用,如HTTP查询GET、POST和PUT):<%=request.servervariables("CONTENT_TYPE")%><br>
LOCAL_ADDR(前往承受哀求的服务器地点。假如在绑定多个IP地点的多宿主呆板上查找哀求所利用的地点时,这条变量十分主要):<%=request.servervariables("LOCAL_ADDR")%><br>
REMOTE_ADDR(收回哀求的远程主机client的IP地点):<%=request.servervariables("REMOTE_ADDR")%><br>
SERVER_NAME(呈现在自援用URL中的服务器主机名、DNS假名或IP地点):<%=request.servervariables("SERVER_NAME")%><br>
SCRIPT_NAME(主机名前面的假造地点):<%=request.servervariables("SCRIPT_NAME")%><br>
LOGON_USER(用户登录WindowsNT的帐号):<%=request.servervariables("LOGON_USER")%><br>
SERVER_PORT(发送哀求的端标语):<%=request.servervariables("SERVER_PORT")%>
依据以上的SERVER_NAME是提取的服务器主机名,SCRIPT_NAME是提取的假造地点,则二者的分离再加上http://是否是就是个完全的网址呢。
2,server2.asp
<%a=request.servervariables("server_name")%>
<%b=request.servervariables("script_name")%>
<%="http://"&a&b%>
个中http://用引号引发,暗示是一字符串,a和b分离是对应了详细值的变量,在ASP中举行如许的毗连就是接纳&号。
依据这个了局,我们是否是就能够随时提取静态的URL地点了。
再来看看query.asp,请求必定要保留为query.asp的,由于假如不是该文件名,程序指向就会堕落。
但如今的这个文件就任意你保留为何文件,都一样实行。
3,xxx.asp(任意你保留成甚么文件)
<%filepath=request.servervariables("script_name")%>
<ahref="<%=filepath%>?bookname=《asp教程》">《asp教程》</a><br>
<ahref="<%=filepath%>?bookname=《jsp教程》">《jsp教程》</a><br>
<ahref="<%=filepath%>?bookname=《xsp教程》&bookname=《xml》">《xsp教程》</a><br>
youchosed<%=request.querystring("bookname")%>
先将以后文件的地点掏出并赋值给变量filepath,然后一切的链接地点开首都只需间接援用该变量就OK了。是否是很有效,有点全能的感到。
四,Request.Cookies("name")
不必我说,Cookie是个很主要的器材,事实怎样,等我们学完了上面的工具Response后。
以上四则使用,属于Request工具的所包括的四个工具汇合:form、querystring、servervarivables、cookies。固然另有个ClientCertificate就不说啦
一个ASP内置工具除工具汇合外另有工具属性、工具办法
Request工具的工具属性只要一个就是TotalBytes(承受的字节数),你可将
<%=request.totalbytes%>
该语句到场就任何一个承受数据的ASP页面中举行显现了。
Request工具的工具办法也仍是一个:BinaryRead。
说假话,这东东不经常使用,我也没用过,呵呵。
OK~!有关Request工具的进修就差未几了,最次要是先好好了解三个工具汇合,cookies不发急,下节进修工具Response。
ASP最大的缺点在于网络的安全性和可靠性,企业将经营数据放在开放的平台上,最大的担忧就是如何保证这些数据不被其他人破坏。 运用ASP可将VBscript、javascript等脚本语言嵌入到HTML中,便可快速完成网站的应用程序,无需编译,可在服务器端直接执行。容易编写,使用普通的文本编辑器编写,如记事本就可以完成。由脚本在服务器上而不是客户端运行,ASP所使用的脚本语言都在服务端上运行。 多看多学多思。多看一些关于ASP的书籍,一方面可以扩展知识面一方面可以鉴借别人是如何掌握、运用ASP的;多学善于关注别人,向同学老师多多学习,不论知识的大小;多思则是要将学到的知识灵活运用。 从事这个行业,那么你可以学ASP语言,简单快速上手,熟练dreamweav排版,写asp代码,熟练photoshop处理图片,打好基础就行了 哪些内置对象是可以跳过的,或者哪些属性和方法是用不到的? 接下来就不能纸上谈兵了,最好的方法其实是实践。实践,只能算是让你掌握语言特性用的。而提倡做实际的Project也不是太好,因为你还没有熟练的能力去综合各种技术,这样只能使你自己越来越迷糊。 掌握asp的特性而且一定要知道为什么。 虽然ASP也有很多网络教程。但是这些都不系统。都是半路出家,只是从一个例子告诉你怎么用。不会深入讨论,更不会将没有出现在例子里的方法都一一列举出来。 我就感觉到ASP和一些常用的数据库编程以及软件工程方面的思想是非常重要的。我现在也在尝试自己做网页,这其中就用到了ASP,我想它的作用是可想而知的。 还有如何才能在最短的时间内学完?我每天可以有效学习2小时,双休日4小时。
页:
[1]