资源预览内容
第1页 / 共52页
第2页 / 共52页
第3页 / 共52页
第4页 / 共52页
第5页 / 共52页
第6页 / 共52页
第7页 / 共52页
第8页 / 共52页
第9页 / 共52页
第10页 / 共52页
亲,该文档总共52页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第四章 Session和Application对象, Session对象记载某一特定的客户信息,不同的客户用不同的Session对象来记载 Application对象记载所有访问该应用程序的客户信息,4.1 利用Session对象记载特定客户信息, Session对象记载某一特定的客户信息,不同的客户用不同的Session对象来记载 Session对象有效期:默认为20分钟,可设定 Session工作原理:在应用程序中,当客户端启动一个Session时,ASP会自动生成一个SessionID,并将该SessionID回送客户端浏览器,而浏览器则将该SessionID保存在Cookies中。当客户端再次向服务器发出HTTP请求时。ASP检查申请表头的该SessionID,并回应相应该SessionID的该Session信息。,4.1.1 Session对象简介, Session对象的属性 SessionID:存储用户的SessionID Timeout: Session的有效期长度 Session对象的方法 Abandon:清除Session对象 Session对象的事件 Session_OnStart:该Session“开始前”所执行的程序 Session_OnEnd: 该Session“结束后”所执行的程序,4.1.2 利用Session存储信息, 格式: Session(“名字”)=变量/字符串 例如: ,4.1.3 Session用法示例,单击显示用户名“ %, 5-2.asp “ Response.Write “您的年龄是“ & Session(“Age“) % ,4.1.4 利用Session存储数组信息, Session存储数组与存储单个变量的方法基本上一样的,但Session将传入的数组视为一个整体,只能对整个数组进行整体存取,而不能对数组元素分别进行存取。 例如: 是不可以的。,4.1.4 Session存储数组示例,单击显示数组信息“ %,4.1.4 Session存储数组示例,“ Response.Write user_name(1) & “您好,欢迎您“ %,4.1.5 Timeout属性, 格式: Session.Timeout= 例如: 如设定值小于默认值20分钟,则仍以默认值为准。,4.1.6 Abandon属性, 格式: Session. Abandon 例如: ,4.2 利用Application对象记载所有客户信息,Session对象记载特定客户信息,而Application对象记载所有的客户信息。通过Application对象,所有的客户可以相互交流信息,典型的如聊天室,大家的发言均放在同一个Application对象中。这样一来,彼此就可以看到发言内容。,4.2.1 Application对象简介, Application对象是所有客户一起使用的。通过该对象,所有客户均可存取Application定义的同一名称的参数。 Application对象的有效期没有限制,直到应用程序停止。 Application对象的方法与事件,4.2.1 Application对象简介, Application对象的方法与事件 Lock:锁定Application对象 Unlock:解除锁定 Application_OnStart:该Application “开始前”所执行 的程序 Application_OnEnd:该Application “结束后”所执行 的程序,4.2.2 利用Application存储信息, 格式: Application(“名字”)=变量/字符串 例如: ,4.2.2 Application用法示例, 请发言: “ Then Application.Lock Application(“show“)= request(“pronunciation“) & “ & Application(“show“) Application.Unlock End if Response.Write Application(“show“) %,4.2.2 Application用法示例,4.2.2 Application用法示例,计数器 ,4.2.3 利用Application存储 数组信息, 与利用Session存储数组类似,Application存储数组信息时也同样要将数组作为一个进行存取,而且要在存储前后使用Lock和Unlock。 读取: ” %,4.2.3 利用Application存储 数组信息(续), 存储: ,4.3 Global.asa文件, Global.asa文件的功能是定义Session、Application对象事件所对应的程序。当Session或Application第一次被调用或结束时,将运行该文件中对应的程序。 注意 文件必须文本文件,文件名必须是Global.asa,且必须存放在应用程序的根目录下。 在Global.asa中,不能写成格式。 在Global.asa中,不能包含任何输出语句。,Global.asa文件格式 Sub Application_OnStart 子程序 End Sub Sub Application_ OnEnd 子程序 End Sub Sub Session_OnStart 子程序 End Sub Sub Session_ OnEnd 子程序 End Sub ,Global.asa示例: Sub Application_OnStart Application.Lock Application(“user_online“)=0 Application.Unlock End Sub Sub Session_OnStart Application.Lock Application(“user_online“)= Application(“user_online“)+1 Application.Unlock end sub Sub Session_OnEnd Application.Lock Application(“user_online“)= Application(“user_online“)-1 Application.Unlock End Sub ,5-7.asp 显示网站在线人数 我的个人主页 当前共有“ & Application(“user_online“) & “人在线“ % ,4.3.2 Global.asa示例,第五章 ASP存取数据库,本章重点: ASP与数据库连接的基本方法 ASP对数据库的在线操作方法,5.1 数据库预备知识,SQL Server Oracle Access 由于使用标准SQL语言,存取Access数据库与存取SQL Server/Oracle数据库基本上是一样的,后台数据库的变化对ASP源程序没有什么影响,只需相应改变数据库的连接语句就可以了。,5.1.1 建立Access数据库,在Access数据库系统中示范,5.1.2 设置数据源,在Windows系统中示范,5.2 利用数据源存取组件存取数据库,ODBC,Open DataBase Connection ADO,ActiveX Data Objects, 提供Web页面与数据库结合的数据库技术,可以将传统的数据库后台管理模式放到前台的Web页面上来进行,是得数据库的存取更新简单、方便。 Connection、Command和Recordset 三个对象,5.2.1 数据库连接方法,% 注意:第三句打开的是数据源WWWlink,不是数据库WWWlink.bdb,数据源与数据库可以同名,也可以不同名。,5.2.1 数据库连接方法(续),%,5.2.2 利用Select语句查询记录,Select 字段列表 From 数据表列表 Where 条件Order By 字段 例: Select name,URL,intro From link Select * From link Select * From link Where name=“新浪” Select * From link Order By link_id,5.2.2 利用Select语句查询记录例,5.2.2 利用Select语句查询记录例, “target=“new“_ “删除 “修改 ,5.2.2 利用Select语句查询记录例,5.2.3 利用Insert语句添加记录,Insert Into 表名(字段1,字段2,) Values(字段值1,字段值2,) 例如: Insert Into link(name,URL,intro) Values(“中国教科网”,www.edu.cn,”中国教科网站”), 网站名字 网站网址 网站简介 ,“ and Request(“URL“)“ and Request(“intro“)“ Then dim db set db=Server.Createobject(“ADODB.Connection“) db.Open “DBQ=“ Dim strSql,varName,varURL,varIntro varName=Request(“name“) varURL=Request(“URL“) varIntro=Request(“intro“) StrSql=“insert into link(name,URL, intro,submit_date) values(“ &varName & “,“ & varURL & “,“ & varIntro & “,“ & Date() & “)“ % ,带有查错功能: Dim strSql,varName,varURL,varIntro varName=Request(“name“) varURL=Request(“URL“) varIntro=Request(“intro“) StrSql=“insert into link(name” sValues= “values(“ &varName & “” If varURL” then strSql=strSql&”,URL” sValues= sValues& “,“ & varURL & “” End If ,5.2.4 利用Delete语句删除记录,Delete From 表名 Where 条件 例如: Delete From link Where name=“网易”,5.2.4 利用Delete语句删除记录例,dim db set db=Server.Createobject(“ADODB.Connection“) db.Open “DBQ=“ 以下删除记录,注意这里是由6-1.asp传过来的要删除的记录的记录编号 Dim varLink_id,strSql varLink_id=Request.QueryString(“link_id“) strSql=“delete from link where link_id=“ & varLink_id db.Execute(strSql) 这里利用Execute方法,删除记录 Response.Redirect “6-1.asp“ 删除完毕,返回首页6-1.asp,5.2.5 利用Update语句修改记录,Update 数据库表名 Set 字段1=值1,字段2=值2, Where 条件 例如: Update link Set intro=“赢利网站” Where name=“新浪”, 网站名字“ , 网站网址“ 网站简介 ,“ AND Request(“URL“)“ AND Request(“intro“)“ Then 以下修改记录 Dim
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号