实例学习Dreamweaver MX ASP编程基础2
来源:互联网 发布:nxt编程 编辑:程序博客网 时间:2024/05/15 00:38
按“F12”试试效果。
注:常用的时间函数:
now() 获取当前系统日期和时间,ASP输出可以这样写:<%=now()%>
Year(now()) 获取年份, ASP输出:<%=Year(now())%>
Month(now()) 获取当前月份,ASP输出:<%=Month(now())%>
day(now()) 获取当天数,ASP输出:<%=day(now())%>
Minute(now()) 获取分钟数,ASP输出:<%=Minute(now())%>
Second(now()) 获取秒钟数,ASP输出:<%=Second(now())%>
date() 获取当前系统日期,格式为:2004-2-28
time() 获取当前系统时间,格式为:22:24:59
用response.write方法输出字符串信息时,“()”集合内必须在英文方式下的一对“""”双引号。如果是函数和数字类数据就不用了,如:
文本字符串输出:<% response.write ("输出文本信息")%>
函数输出:<% response.write (now())%>
数字输出:<% response.write (1142568147)%>
还可用“&”来正确区分数字或函数和文本混合输出:
<% yy="这里输出变量的值了"'赋值给变量“yy”,如果是文本加“""”
response.write ( now()&" 这儿输出文本"&" "&yy ) %>
2、response.redirect方法——链接到新网址
如果希望用户能在浏览器链接到另外一个网址的话,response.redirect方法可实现此功能。也许有些朋友会想到用js代码也能实现这个功能呀!不过,我们是在服务器端执行的,不受客户端浏览器版本影响。
在<html>标签上方输入以下代码:
<% select case request.QueryString("url")
case "1"
response.Redirect("http://www.163.com")
case "2"
response.Redirect("http://www.sina.com")
case "3"
response.Redirect("http://www.sohu.com")
case "4"
response.Redirect("http://www.6to23.com")
end select
%>
完整的代码以下:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<% select case request.QueryString("url")
case "1"
response.Redirect("http://www.163.com")
case "2"
response.Redirect("http://www.sina.com")
case "3"
response.Redirect("http://www.sohu.com")
case "4"
response.Redirect("http://www.6to23.com")
end select
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>无标题文档</title>
</head>
<body>
<form action="Untitled-6.asp" method="get" name="form1" target="_blank">
<select name="url" id="url">
<option value="1">网易</option>
<option value="2">新浪</option>
<option value="3">搜狐</option>
<option value="4">中国学生网</option>
</select>
<input type="submit" name="Submit" value="提交">
</form>
</body>
</html>
3、使response.write方法实现循环输出
这里要涉及到一个VBScript脚本语言,很简单的,却很有用,以后我们要做记录集分页的时候,要用到它。
for...next循环语句结构:
for 变量=起始值 to 终值 step 步长值
循环体
next
下面做一个小例子:
实例五、循环输出字符数
<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>无标题文档</title>
</head>
<body>
<% for y=1 to 50%>
<%response.Write("字") %>
<%next%>
</body>
</html>
可见,它把一个字重复50次后输出,如果没有设置步长值,将按默认值(为1)处理。设置步长值:
<% for y=1 to 50 step 2%>
<%response.write(y)%>
<%next%>
执行结果如下:
可见,输出是以“2”为步进的。
还可以改:
<%response.Write("字") %>
为:
<%response.write(y)%>
看看执行结果以下:
它把从“1”开始循环以1为步进值输出直至“50”终始。
我们就只先学这个循环语句。还有其它的do...loop、do while...loop、do until...loop、while...wend循环结构这里就不讲了,也许我们暂时会用不到手工接触这些东西。
4、response对象属性
response对象有下属性:
- buffer 服务器缓冲。
- charset 将字符集合名称附加到response对象中的content-type标题的后面。
- contenttype 指定服务器响应的HTTP内容类型。
- expires 指定在浏览器上缓冲存储页面过期时间。
- expiresabsolute 指定在浏览器上缓冲存储页面的确切到期时间。
response对象方法:
- write 向客户端直接输出信息。
- redirect 转向地址。
- end 停止程序执行。
- flush 用于立即发送服务器缓冲区中的输出,必须设置response.buffer=true,否则报错。
- clear清除服务器缓冲区中的所有HTML输出。
response集合:
- cookies 用于设置cookie的值。
response.cookies集合语法格式:
response.cookies(变量名称)[(key)|属性]=等于写入的信息
“变量名称”则是指定cookies的名称,以便页面可以读取不同的cookies里的数据。
三、session对象——服务器特定用户会话
“session”对象在DW MX的帮助文档中称为“阶段变量”,当我们在页面插入“登陆用户”和“限制对页的访问”服务器行为后,它就是利用session对象来识别用户是否登陆。当创建该会话后,服务器对该页面进行跟踪,并分配内存存储session会话信息。session会话信息只有创建它的用户才能看到。
实例一、使用request.form方法将信息存储在session会话中
新建ASP页,在<HTML>标签上方输入这句代码:
<%session("MM")=request.Form("y")%>
在<body>和</body>间输入以下代码:
<form action="Untitled-6.asp" method="post" name="form1">
<select name="y" id="y">
<option value="网易">网易</option>
<option value="新浪">新浪</option>
<option value="搜狐">搜狐</option>
<option value="中国学生网">中国学生网</option>
</select>
<input type="submit" name="Submit" value="提交">
</form>
<p><%= Session("MM") %></p>
其中,<%= Session("MM") %>为读取session变量的值显示在页面上。
按“F12”键预览执行结果。
如果用request.QueryString方法数数据存储于session对象中的话,将<%session("MM")=request.Form("y")%>
改为:
<%session("MM")=request.QueryString("y")%>
即可。
1、session.adandon方法
session对象只有一个方法,即abandon方法,它的作用是删除所有存储在session对象的数据,并释访这些资源。如果未明确地调用adandon方法,当会话超时(IIS服务器默认超时时间为900秒,这由空间服务器商决定),服务器将删除这些会话,以释放资源。
语法以下:
<%session.adandon%>
DW MX的“注销用户”代码剖析
<%
' *** Logout the current user.
MM_logoutRedirectPage = "index.asp"
Session.Contents.Remove("MM_Username")
Session.Contents.Remove("MM_UserAuthorization")
If (MM_logoutRedirectPage <> "") Then Response.Redirect(MM_logoutRedirectPage)
%>
这段代码中就使用到的是Session.Contents.Remove属性来指定要删除的某个session变量,如果不指定“Contents.Remove”而使用“adandon”的话,它会把该页面创建的所有会话删除,但有时我们只需要删除其中一个或几个会话,而保留其它的会话状态。
删除多个会话:
Session.Contents.Remove("MM_Username")
Session.Contents.Remove("MM_UserAuthorization")
...
下面是DW MX的“限制对页的访问”服务器行为生成的代码:
<%
' *** Restrict Access To Page: Grant or deny access to this page
MM_authorizedUsers=""
MM_authFailedURL="yesno.asp"
MM_grantAccess=false
If Session("MM_Username") <> "" Then
If (true Or CStr(Session("MM_UserAuthorization"))="") Or _
(InStr(1,MM_authorizedUsers,Session("MM_UserAuthorization"))>=1) Then
MM_grantAccess = true
End If
End If
If Not MM_grantAccess Then
MM_qsChar = "?"
If (InStr(1,MM_authFailedURL,"?") >= 1) Then MM_qsChar = "&"
MM_referrer = Request.ServerVariables("URL")
if (Len(Request.QueryString()) > 0) Then MM_referrer = MM_referrer & "?" & Request.QueryString()
MM_authFailedURL = MM_authFailedURL & MM_qsChar & "accessdenied=" & Server.URLEncode(MM_referrer)
Response.Redirect(MM_authFailedURL)
End If
%>
其中这句“If Session("MM_Username") <> "" Then”就是用来判断“MM_Username”会话变量是否有值,否则由“Response.Redirect(MM_authFailedURL)”转向出错页。
其实我们可以写个更简单的:
<% if session("MM_Uesrname")="" then
response.Redirect("出错页.asp")
response.end
end if
%>
该段代码判断“MM_Uesrname”session变量是否为空,是的话,用response.Redirect("出错页.asp")方法将用户带到“出错页.asp”,并用response.end方法来停上所有脚本处理,所以这段代码最好放在页面头部。
也可以把
response.Redirect("index.asp")
改为:
response.write("对不起!请登陆!")
这样直接在同一个页面完成错误提示,不用那么的页转来转去,以便于站点文件管理。
好了,如果能熟练地使用以上三个ASP内建的基本对象,就可以对DW MX的服务器行为进行修改,达到我们的目的。还有其它的一些对象这里就不讲了,因为DW MX的服务器行为能为我们生成这些代码,不必你从头到尾把ASP学个底朝天一样可以编出不一般的程序来。
上一页
关键词:
【推荐给好友】【关闭】【收藏本文】最新五条评论
查看全部评论
评论总数 0 条- 实例学习Dreamweaver MX ASP编程基础2
- Dreamweaver MX 2004做ASP程序
- ASP.NET Web Development with Macromedia Dreamweaver MX 2004
- asp.net编程中的数组基础实例学习
- Asp.net编程中的数组基础实例学习
- Asp.net编程中的数组基础实例学习
- Databases in Dreamweaver MX
- dreamweaver MX 注册码
- Dreamweaver MX 笔记
- Dreamweaver MX 2004 Bible
- Dreamweaver MX Extensions
- Mastering Dreamweaver MX Databases
- Dreamweaver MX Bible
- Dreamweaver MX / Fireworks MX Savvy with
- Dreamweaver之HTML基础学习
- Dreamweaver MX 2004 空格问题
- Dreamweaver MX认证考试(样题)
- Dreamweaver MX 2004一句话技巧
- 从VC6.0平台级到VS2008平台(之三)
- JAVA@多态
- 从VC6.0平台级到VS2008平台(之四)
- javascript控制服务器控件——实例:为DropdownList动态添加删除选项
- 特性分支开发与持续集成
- 实例学习Dreamweaver MX ASP编程基础2
- Installing PHP APC on GNU/Linux Centos 5
- Vista下文件夹收藏的实现
- printStackTrace()方法的意思是:在命令行打印异常信息在程序中出错的位置及原因
- oracle jdbc 连接
- Request.Referer的乱码终极解决方法+获得用户是用什么关键字通过搜索引擎进来的
- MTD原始设备与FLASH硬件驱动的对话-续
- IE8不兼容eWebeditor问题的解决方法
- jdk绿色版 tomcat5.5绿色版 部署