仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 417|回复: 8
打印 上一主题 下一主题

[学习教程] ASP网页设计ASP中浅易用户会见把持-1

[复制链接]
小魔女 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:09:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
减少客户内IT专业人才缺乏带来的影响。ASP的客户员工利用浏览器进入相关的应用软件,简单易用,无需专业技术支持。会见|把持  在站点的页面之间传送参数的一般办法是经由过程URL查询字符串,大概经由过程在表单中设置埋没域的办法。别的的两种盛行办法是利用cookie,大概利用ASPSession变量。在这篇文章内里,将会商怎样利用cookie和session变量来办理用户对站点页面的会见权限。

利用cookie来跟踪会见者
跟踪会见者会见页面的传统办法是利用cookies,cookie就是存储在用户一端盘算机上的一个文本文件,当用户会见响应的域时,这些文件就被送到服务器上。做为基础使用,cookie被看成用户再次会见站点时考证和辨别注册用户的手腕,而不必要他们再次输出注册信息。一样,可使用cookie保留用户上一次会见站点的一些设置。
在ASP中利用cookie十分复杂,可使用Request工具的Cookies汇合取回一切保留在客户真个cookie数值,然后利用Response工具的Cookies汇合创立大概修正cookie数值,并保留到客户端。
  象ASP中很多工具一样,一个cookie不但能够是汇合中的一员,还能够自成为汇合。创立一个单一cookie十分复杂,代码以下:
Response.Cookies("item-name")="item-value"
创立一个包括多个数值的cookie,代码是:
Response.Cookies("item-name")("sub-item-name")="sub-item-value"
设置cookie的域属性、路径属性和利用到期工夫,相干代码是:
Response.Cookies("item-name").domain="domain-url"
Response.Cookies("item-name").path="virtual-path"
Response.Cookies("item-name").expires=#date#
上面的例子在扫瞄器端创立了cookie选择,注重:必需在扫瞄器输入任何信息前创立cookie,由于它们是HTTPheaders的一部分:
〈%
Response.Cookies("SimpleCookie")="SimpleExample"
Response.Cookies("CompoundCookie")("Value1")="Value1"Response.Cookies("CompoundCookie")("Value2")="Value2"
Response.Cookies("TimedCookie")="TimedExample"
Response.Cookies("TimedCookie").path="/"applytoourentiresiteResponse.Cookies("TimedCookie").expires=#10/10/2005#
%〉
〈HTML〉
〈BODY〉
...
〈/BODY〉
〈/HTML〉
读取cookies
经由过程利用request工具并遍历cookie汇合,就能够读取一切cookie的全体内容。假如有些cookie含有多个数值,就经由过程遍历谁人cookie本身汇合来输入。
〈HTML〉
〈HEAD〉〈TITLE〉ReadingtheCookieCollection〈/TITLE〉〈/HEAD〉
〈BODY〉
〈B〉ThecontentsofyourCookiesare:〈/B〉〈P〉
〈TABLECELLPADDING=0CELLSPACING=0〉
〈%
ForEachIteminRequest.Cookies
IfRequest.Cookies(Item).HasKeysThen
useanotherFor...Eachtoiteratethiscollection
ForEachItemKeyinRequest.Cookies(Item)
Response.WriteItem&"("&ItemKey&")="_
&Request.Cookies(Item)(ItemKey)&"〈BR〉"
Next
Else
printthecompletecookiestringasnormal
Response.WriteItem&"="&Request.Cookies(Item)&"〈BR〉"
EndIf
Next
%〉〈/TABLE〉
〈/BODY〉
〈/HTML〉
下图显现了实行下面代码的了局。可是,当你如今封闭扫瞄器偏重新翻开时,再运转这些代码,除TimeCookie觉得的一切数值都消散了。这是由于只要TimeCookie设置了“利用到期工夫”,其他确当扫瞄器封闭时就主动消散了。

这里要会商利用cookie保留登录信息的成绩,而且看看在ASP页面间怎样使用cookie数值。可是请记着:cookie仅仅被送往上次会见时地点路径不异的站点,也就是说cookie在初始设置时的情况中才干失效。假如没有设置cookie的path属性,它的数值默许就是现在创立时地点的假造路径。
这里有个例子形貌保留登录信息到cookie中。因为没有设置“利用到期工夫”,以是以后用户会话停止后cookie也就不存在了。
...
Response.Cookies("User")("v1")="〈%=Request("v1")%〉"usernameResponse.Cookies("User")("v2")="〈%=Request("v2")%〉"passwordResponse.Cookies("User").path="/adminstuff"applytoadminpages
...
如今就能够在用户哀求的每个页面中寻觅这个cookie了,假如没有找到,就重定向用户到登录页面:
...
If(Request.Cookies("User")("v1")〈〉"alexhomer")_
Or(Request.Cookies("User")("v2")〈〉"secret")Then
Response.Redirect"default.asp?nogood=yes&v1="&Request.Cookies("User")("v1")
EndIf
...
利用ASPSession变量跟踪会见者
除利用cookie,我们还能够充实使用ASP中的Session变量。我们能够在用户Session变量中保留数值,只需session变量仍是激活的,这些保留的数值就能够被使用。一般,这些session变量将在用户最初一次哀求页面后坚持20分钟的工夫,除非我们利用Session.Abandon办法明白地开释这些session变量。同时,可使用ASP剧本中的Session.Timeout属性来设置这个过时工夫。
利用session变量跟踪会见者要比利用cookie更平安,由于用户的session变量的内容不会跟着页面哀求而在收集上传送。除初始登录之外,用户名与口令(大概任何数值)一向保留在服务器上。我们能够区分和认证会见者,将他们的登录信息保留在他们本人的Session工具中。当必要对会见者举行考证时,就从他们本人的Session工具中取会这些信息。举个例子,在用户登录后提交的页面中,到场以下代码:
...
Session("UserName")=Request("v1")usernamefromlogondialogform
Session("Password")=Request("v2")passwordfromlogondialogform
...
然后,当必要认证会见者时,就找到这些cookie并从中取回用户名和口令:
...
If(Session("UserName")〈〉"alexhomer")_
Or(Session("Password")〈〉"secret")Then
Response.Redirect"default.asp?nogood=yes&v1="&Session("UserName")
EndIf
...只要你想学,就没什么优缺点,上面那位大哥已经把网上的评论说了,但我认为想学哪个都一样,不然它就不可能在当今时代数字艺术方面存活到今天
柔情似水 该用户已被删除
沙发
发表于 2015-1-18 21:29:02 | 只看该作者
运用经典的例子。并且自己可以用他来实现一些简单的系统。如果可以对他进行进一步的修改,找出你觉得可以提高性能的地方,加上自己的设计,那就更上一个层次了,也就会真正地感到有所收获。
海妖 该用户已被删除
板凳
发表于 2015-1-25 11:33:15 | 只看该作者
Server:这个表示的服务器,操作服务器的一些东西使用这个,如Server.Mappath转换服务器路径,Server.CreateObject实例化一个组件
冷月葬花魂 该用户已被删除
地板
发表于 2015-2-2 22:00:42 | 只看该作者
兴趣爱好,那么你无须学编程,申请一个域名和空间,在网上下载一些免费开源的CMS系统,你不用改代码,只须熟悉它们的后台操作,像office一样简单方便,很快就能建一个站点,很多站长都是这样做的
若天明 该用户已被删除
5#
发表于 2015-2-8 08:51:39 | 只看该作者
在平时的学习过程中要注意现学现用,注重运用,在掌握了一定的基础知识后,我们可以尝试做一些网页,也许在开始的时候我们可能会遇到很多问题,比如说如何很好的构建基本框架。
只想知道 该用户已被删除
6#
发表于 2015-2-25 07:41:31 | 只看该作者
学习ASP其实应该上升到如何学习程序设计这种境界,其实学习程序设计又是接受一种编程思想。比如ASP如何学习,你也许在以前的学习中碰到过。以下我仔细给你说几点:
老尸 该用户已被删除
7#
发表于 2015-3-7 18:45:11 | 只看该作者
不是很难但是英文要有一点基础网上的教程很少有系统的详细的去买书吧,另不用专门学习vb关于vbscript脚本在asp教材都有介绍
兰色精灵 该用户已被删除
8#
发表于 2015-3-15 12:07:57 | 只看该作者
他的语法和设计思路和VB完全相同,导致很多ASP的书都留一句“相关内容请参考VB的相关教材....”更糟糕的是,相当多的ASP教程混合了Javascript,VBscript等等脚本语言,搞的初学者。
9#
发表于 2015-3-22 01:08:00 | 只看该作者
我认为比较好的方法是找一些比较经典的例子,每个例子比较集中一种编程思想而设计的。
admin 该用户已被删除
10#
发表于 2015-3-22 01:08:51 | 只看该作者
Application:这个存储服务端的数据,如果不清除,会直到web应用程序结束才清除(例如重启站点)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-24 10:45

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表