老尸 发表于 2015-1-16 23:17:49

ASP网页设计ASP中Cookie利用指南(转)

SQLServer是基于服务器端的中型的数据库,可以适合大容量数据的应用,在功能上管理上也要比Access要强得多。在处理海量数据的效率,后台开发的灵活性,可扩展性等方面强大。cookie甘冀平翻译的<ASP中Cookie利用指南>


  实践上,在web开辟中,cookie仅仅是一个文本文件,当用户会见站点时,它就被存储在用户利用的盘算机上,个中,保留了
一些信息,当用户往后再次会见这个站点时,web能够将这些信息提掏出来。

  只管如今听起来cookie没有甚么冲动民气的,但实践上使用它,你能完成很多成心义的功效!好比说:你能够在站点上安排
一个查询拜访问答表,扣问会见者最喜好的色彩和字体,然后依据这些定制用户的web界面。而且,你还能够保留会见者的登录暗码,这
样,当会见者再次会见这个站点时,不必再输出暗码举行登录。

  固然,cookie也有一些不敷。起首,因为使用cookie的功效能够编程完成一些不良妄图,以是年夜多半的扫瞄器中都有平安设
定,个中能够设置是不是同意大概承受cookie,因而这就不克不及包管随时能利用cookie。再者,会见者大概成心大概偶然地删除
cookie。当会见者的呆板碰到“蓝屏”逝世机时,大概从头格局化硬盘、安装体系后,本来保留的cookie将全体丧失。最初一点,有
一些最后始的扫瞄器其实不能撑持cookie。

  使用cooklie能做甚么?

  有2种利用cookie的基础体例:
1、将cookie写进会见者的盘算机(利用RESPONSE命令)
2、从会见者的盘算机中取回cookie(利用REQUEST命令)

  创立cookie的基础语法

  Response.Cookies("CookieName")=value

  实行上面的代码将会在会见者的盘算机中创立一个cookie,名字=VisitorName,值=Ken
Response.Cookies("VisitorName")="Ken"

  实行上面的代码将会在会见者的盘算机中创立一个cookie,名字=VisitorName,值=表单中UserName的值
Response.Cookies("VisitorName")=Request.Form("UserName")

  读取cookie的基础语法

  Request.Cookies("CookieName")

  能够将Request值看成一个变量对待,实行上面的代码,将取回名字为KensCookie的cookie值,并存进变量MyVar:
MyVar=Request.Cookies("KensCookie")

  实行上面的代码,将判别名字为KensCookie的cookie值是不是为“Yes”:
IfRequest.Cookies("KensCookie")="Yes"then

  功效丰厚的cookie

  你能够扩大下面的代码成为Cookie子关头值(CookieSubName),代码以下:
Response.Cookies("VisitorName")("FirstName")="Ken"
Response.Cookies("VisitorName")("LastName")="Baumbach"

  解说例子前,最初会商2个观点:命令商定和利用到期工夫。

  定名商定

  同其他变量的定名一样,符合地、共同地定名cookie,有益于在程序中前后联贯地利用它。你可使用上面的1个大概2个
cookie属性举行cookie变量的定名:

  域属性(Domain):域属性标明cookie由哪一个网站发生大概读取,默许情形下,cookie的域属性设置为发生它的网站,但你
也能够依据必要改动它。相干代码以下:Response.Cookies("CookieName").Domain="www.mydomain.com"

  路径属性(Path):路径属性能够完成更多的平安请求,经由过程设置网站上准确的路径,就可以限定cookie的利用局限。比方:
Response.Cookies("CookieName").Path="/maindir/subdir/path"

  利用到期工夫

  一般情形下,当扫瞄器封闭时,一个cookie就不存在了。可是在很多时分,好比上面将要会商的web站点例子,我们但愿能更
长工夫地在会见者的盘算机上保留cookie。很侥幸,有如许的完成办法。上面的代码,就能够设置cookie的利用到期工夫为2010年
1月1日:
Response.Cookies("CookieName").Expires=#January01,2010#

  实行上面的代码,将设定cookie的过时工夫为“cookie的创立工夫+365日”:
Response.Cookies("CookieName")=Date+365

  利用cookie的实践例子(十分出色)

  如今入手下手会商实践的例子。假定:你想做一个查询拜访,每一个人初度会见时必要填写好信息,可是当往后再会见时,就不必要再那
么做。使用cookie,就能够十分美满地办理这个成绩,而年夜可不用用到数据库。

<%@LANGUAGE="VBSCRIPT"%>
<%
Survey=Request.Cookies("KensSurvey")
IfSurvey=""then
Response.Cookies("KensSurvey")="x"
Response.Cookies("KensSurvey").Expires=#January01,2010#
Response.Redirect"survey.asp"
Else
restofthepage
Endif
%>
  好,上面入手下手重新会商下面的代码。

  起首,初始设置页面,并读取名字为KensSurvey的cookie值:


<%@LANGUAGE="VBSCRIPT"%>
<%
Survey=Request.Cookies("KensSurvey")
  然后,判别是不是已存在cookie值:

IfSurvey=""then
  假如不存在,就创立并设置cookie,并转到页面survey.asp。当下一次会见时,由于存在cookie值,就不会再转到
survey.asp页面。

Response.Cookies("KensSurvey")="x"
Response.Cookies("KensSurvey").Expires=#January01,2010#
Response.Redirect"survey.asp"
  假如cookie已存在,那末会见者将实行页面中残剩的代码:

restofthepage

Endif
%>
  例子2

  这里有别的一个复杂的例子:当会见者第1次扫瞄某个站点时,向他们显现接待信息。代码以下:

<%@LANGUAGE="VBSCRIPT"%>
<%
RequestName=Request.Form("Name")
RequestLeaveMeAlone=Request.Form("LeaveMeAlone")
IfRequestName""orRequestLeaveMeAlone""then
Response.Cookies("MySiteVisitorName")=RequestName
Response.Cookies("MySiteVisitorName").Expires=#January01,2010#
Response.Cookies("MySiteLeaveMeAlone")=RequestLeaveMeAlone
Response.Cookies("MySiteLeaveMeAlone").Expires=#January01,2010#
Endif
VisitorName=request.cookies("MySiteVisitorName")
LeaveMeAlone=request.cookies("MySiteLeaveMeAlone")

</p>asp可以轻松地实现对页面内容的动态控制,根据不同的浏览者,显示不同的页面内容。而浏览者一点觉察不出来,就像为他专门制作的页面一样。使用各种各样的组件,asp可以完成无比强大的功能。

灵魂腐蚀 发表于 2015-1-20 09:13:32

封装性使得代码逻辑清晰,易于管理,并且应用到ASP.Net上就可以使业务逻辑和Html页面分离,这样无论页面原型如何改变,业务逻辑代码都不必做任何改动;继承性和多态性使得代码的可重用性大大提高。

兰色精灵 发表于 2015-1-29 06:21:45

完全不知道到底自己学的是什么。最后,除了教程里面说的几个例子,还是什么都不会。

简单生活 发表于 2015-2-5 22:31:43

它可通过内置的组件实现更强大的功能,如使用A-DO可以轻松地访问数据库。

乐观 发表于 2015-2-13 23:20:20

ASP.Net和ASP的最大区别在于编程思维的转换,而不仅仅在于功能的增强。ASP使用VBS/JS这样的脚本语言混合html来编程,而那些脚本语言属于弱类型、面向结构的编程语言,而非面向对象,这就明显产生以下几个问题:

第二个灵魂 发表于 2015-3-4 03:01:54

虽然ASP也有很多网络教程。但是这些都不系统。都是半路出家,只是从一个例子告诉你怎么用。不会深入讨论,更不会将没有出现在例子里的方法都一一列举出来。

小魔女 发表于 2015-3-11 15:39:40

跟学别的语言一样,先掌握变量,流程控制语句(就是ifwhileselect)等,函数/过程,数组

愤怒的大鸟 发表于 2015-3-19 00:31:07

如何学好ASP,以前也有人问过,把回答给你转过来看看能否对你有帮助:

山那边是海 发表于 2015-3-26 19:57:17

Response:从字面上讲是“响应”,因此这个是服务端向客户端发送东西的,例如Response.Write
页: [1]
查看完整版本: ASP网页设计ASP中Cookie利用指南(转)