存档

‘ASP学习’ 分类的存档

ASP操作XML

2009年1月2日 admin 3 条评论

前边说到新版很实用网志,这两天在空余时间对页面进行了扩展。特别是新加了RSS订阅源(XML)。

其实增加这个对别人来说意义不大,对我来说就不同了,因为之前学习ASP的时候,从来没有使用ASP操作过XML。这次是个尝试。对ASP的学习和理解也是个“温故”的过程。

使用ASP操作XML有几种方法,大致分为动态生成和静态生成两种。网上提供了一些实例,但是比较简单——真正应用起来会比这个麻烦很多,花费的时间也会大了很多。

这次两种ASP生成XML的方式我都尝试了,动态生成的很快就做好了,可以看这里的样式。中间遇到了一点问题,不过很快解决掉了。——然而静态生成的XML文件在Firefox下面浏览没有任何问题,然而在“万恶的IE”这里被当关了,调试了几次没有成功。先这样吧,动态的源先挂出来,静态的等日后有心情了再调试。

程序就不挂出来了,同样想玩玩的可以找我索取。

分类: ASP学习 标签: , ,

ASP生成静态页面并控制编码方式的方法

2008年5月4日 admin 1 条评论

前边介绍了ASP生成静态页面的简单方法,其实还有另外一个思路,就是首先构造一个页面——这里称之为模板页,比如命名为xx.htm,然后利用介绍的方法利用Repalce函数将数据库中的内容替换掉模板中的某些代码块,生成即可。

但是,这样生成的页面面临一个问题,就是编码方式的问题不能解决。因为按照这种方法生成的页面为默认的ANSI格式。那么,在需要对生成文件(页面)的编码方式进行有效控制的时候(比如要生成UTF-8),就必须考虑生成页面的编码方式了。

经过查证,若想实现该功能Scripting.FileSystemObject对象就不能使用了,只能采用其他方式。

下面给出一种方案。

<%

‘===========函数开始===========

Public Function CreatedTextFiles(FileName,ByVal body)

On Error Resume Next

If InStr(FileName, ":") = 0 Then FileName = Server.MapPath(FileName)

Dim oStream

Set oStream = CreateObject("ADODB.Stream")

oStream.Type = 2 ‘设置为可读可写

oStream.Mode = 3 ‘设置内容为文本

oStream.Charset = "UTF-8"’此处可控制编码方式

oStream.Open

oStream.Position = oStream.Size

oStream.WriteText body

oStream.SaveToFile FileName, 2

oStream.Close

Set oStream = Nothing

If Err.Number <> 0 Then Err.Clear

 End Function

‘===========函数结束===========

FilePath="xx.htm"’设置生成文件名称和路径

content="…"’此处提取据库中的数据并构造字符串,请自行编写

CreatedTextFiles filePath,content’调用函数,生成文件

%>

分类: ASP学习 标签: , ,

ASP生成静态页面的方法

2008年5月4日 admin 2 条评论

前边想利用ASP技术生成静态页面。网上关于ASP的文章铺天盖地,没想到关于这个方面的具体案例却是没有的。后来经过本人综合好些人的思路,终于完成了这个工作。

下面给出实现的代码以及简单说明。

<%

sub makefile()

fname= "xx.htm"’指定生成文件的名称,可自行设置为其他格式

filepath="..\yy\"’指定生成文件存放路径,可自行修改

content="…"’此处筛选数据库中的数据并构造字符串,请自行编写

Set fso = Server.CreateObject("Scripting.FileSystemObject")

Set fout = fso.CreateTextFile(server.mappath(filePath& "\" & fname))

fout.WriteLine content

fout.close

end sub

%>

最后,在需要的地方调用即可:

<%call makefile()%> 

分类: ASP学习 标签: , ,

ASP时间函数DateDiff应用的细节

2008年4月25日 admin 1 条评论

前边转发了文章《ASP时间函数全解》,里面有很多不错的解析。

这几天在使用ASP时间函数datediff中发现了一个问题:在使用这个函数DateDiff(interval, date1, date2)的时候获得的小时数是采用类似于四舍五入的方式进行的,那么引发一个问题,在有些需要精确统计的时候产生的时间将会引起比较大的误差。 

举个简单的例子,前边在首页做了个简单的显示最新消息的东东,消息列表在这里查看,我就用了时间差的显示方式(显示过去X小时X分钟),结果一度出现了负的时间值!当时的代码是这样子的:
m_time=datediff("n",noticebuilt,now())
h_time=datediff("h",noticebuilt,now())
m_time=m_time-h_time*60

后来把上面的代码修改成以下这样子:
m_time=datediff("n",noticebuilt,now())
h_time=int(m_time/60)
m_time=int(m_time mod 60)

这样就显示正常了!

分类: ASP学习 标签:

ASP基本知识及IIS安装和配置方法

2008年3月26日 admin 3 条评论

(一)ASP即Active Server Page(动态网页)的缩写。它是一种包含了使用VB Script或Jscript脚本程序代码的网页。

当浏览器浏览ASP网页时, Web服务器就会根据请求生成相应的HTML代码然后再返回给浏览器,这样浏览器端看到的就是动态生成的网页。ASP是微软公司开发的代替CGI脚本程序的一种应用,它可以与数据库和其它程序进行交互。是一种简单、方便的编程工具。在了解了VBSCRIPT的基本语法后,只需要清楚各个组件的用途、属性、方法,就可以轻松编写出自己的ASP系统。

ASP的网页文件的格式是以“.ASP”作为后缀。

ASP编辑器有很多种,比较流行的有FrontPage和Dreamweaver等。

Asp的运行需要Windows操作系统。若想在本地运行ASP页面,需要安装Internet 信息服务(简称IIS)。IIS有几个版本,相对应的分别为Windows2000默认安装的是IIS5.0(internet information server),而windows xp默认安装的是IIS5.1,windows 2003默认安装的IIS6.0。

编写ASP页面使用的数据库access数据库或SQL Server数据库。

ASP网页具有以下特点:

  • (1)利用ASP可以实现突破静态网页的一些功能限制,实现动态网页技术;
  • (2)ASP文件是包含在HTML代码所组成的文件中的,易于修改和测试;
  • (3)服务器上的ASP解释程序会在服务器端制定ASP程序,并将结果以HTML格式传送到客户端浏览器上,因此使用各种浏览器都可以正常浏览ASP所产生的网页;
  • (4)ASP提供了一些内置对象,使用这些对象可以使服务器端脚本功能更强。例如可以从web浏览器中获取用户通过HTML表单提交的信息,并在脚本中对这些信息进行处理,然后向web浏览器发送信息;
  • (5)ASP可以使用服务器端ActiveX组件来执行各种各样的任务,例如存取数据库、发现哦那个Email或访问文件系统等。
  • (6)由于服务器是将ASP程序执行的结果以HTML格式传回客户端浏览器,因此使用者不会看到ASP所编写的原始程序代码,可防止ASP程序代码被窃取。

     

    (二)ASP在本地运行需要配置安装IIS(Internet 信息服务),这里说一下配置IIS中需要注意的地方。

    首先,简单说明安装IIS的步骤如下:

    • 将安装盘放入光驱;
    • 单击“开始”,单击“控制面板”,双击“添加或删除程序”启动“添加或删除程序”应用程序;
    • 在“添加或删除程序”对话框左侧的列中,单击“添加/删除 Windows 组件”;
    • 出现“Windows 组件向导”后,单击“下一步”;
    • 在“Windows 组件”列表中选中“Internet 信息服务”;
    • 单击“下一步”,然后根据指导进行操作。

    如果使用的是下载的IIS安装文件,其安装方法基本一样,只是每次在弹出对话框时需要找到相关组件,然后执行“下一步”操作直到完成。

    IIS文件默认的网页文件应该放置在“C:\Inetpub\wwwroot”这个根目录下,创建好网页文件(比如ASP文件)后,就可以用“http://localhost/文件名”的方式运行了。

    打开IIS方法大致有两种,分别为:

    第一种方法

    1. 从“开始”菜单,选择“设置”,然后选择“控制面板”。
    2. 打开“管理工具”。
    3. 打开“Internet 服务管理器”。

    第二种方法

    1. 在桌面上,用鼠标右键单击“我的电脑”,再单击“管理”。
    2. 在“服务和应用程序”下面,选择“Internet 信息服务”。

    最后需要说明的是,创建的文件首页默认的为Default.htm 或 Default.asp等,自己还可以创建和设置其他形式,比如index.asp。设置方法是打开IIS后,点击“默认网站”——右键打开“属性”——“文档”——“添加”——输入“index.asp”——确定即可。

    另外需要注意的是,默认的ASP文件是不具备“写入”权限的,这当然也是为了安全方面的考虑。但是为了创建和调试文件,尤其在试图写入数据的时候就需要“写入”功能了,方法是点击“默认网站”——右键打开“属性”——“主目录”——勾选“写入”。

    这样,IIS就基本配置完毕了。当然,为了使其更加贴近自己的使用习惯,还可以进行相应的其他设置。

  • 分类: ASP学习 标签: ,

    增加新栏目:ASP学习

    2008年3月20日 admin 7 条评论

    这两天给国际学院做网站改版。

    院长给我提出的要求是,网站要大气,并且现有的栏目的内容不能修改今后的要给我更多的权限我要随时更改。

    听起来比较容易,其实这所谓“改版”等于是说要你重新给我做一个新的网站。我呢也无所谓,把它当成一次不错的练手机会。

    经过这几天的努力,现在把后台今本上搭建成功了,内容扩建了不少,功能增强了很多,权限放到了最大。

    剩下的时间就是美化了。说实话这个方面我还不在行。虽然学过PS等,但是对于美工方面的只是以及色彩搭配等只是还是相当欠缺全然凭感觉走。只希望这次自己的感觉好一点就行了。

     

    其实我学的跟网页相关的编程技术是ASP.NET,但是学校的服务器支持的是ASP,当前使用的文件也都是ASP编辑的。这就是说我还得猛力加强一下自己对这方面知识的掌握,还要学习一些VB语言。在这个过程中,发现了一些问题,同时也总结了一些经验。总的来说收获还是蛮大的。

    我准备把自己对ASP的理解和掌握不定时发表出来,形成一个系列,把以前的跟ASP相关的内容归类到一块,这个栏目暂时就叫“ASP学习”好了。

    分类: ASP学习 标签: ,

    ASP函数集

    2008年3月19日 admin 1 条评论

    1.函数array() 
    功能:创建一个数组变量 
    格式:array(list) 
    参数:list 为数组变量中的每个数值列,中间用逗号间隔 
    例子: 
    <% i = array (“1”,”2”,”3”) %> 
    结果: i 被赋予为数组

    2.函数Cint() 
    功能:将一表达式/其它类型的变量转换成整数类型(int) 
    格式:Cint(expression) 
    参数:expression 是任何有效的表达式/其它类型的变量 
    例子: 
    <% 
    f = ”234” 
    response.write cINT(f) + 2 
    %> 
    结果: 236 
    函数Cint()将字符”234”转换 成整数234.如果表达式为空, 或者无效时,返回值为0;

    3.函数:Creatobject() 
    功能:创建及返回一个ActiveX对象. 
    格式:Creatobject(obname) 
    参数bname 是对象的名称 
    例子: 
    <% 
    Set con = Server.CreateObject(“ADODB.Connection”) 
    %> 
    结果: 

    4.函数Cstr() 
    功能:将一表达式/其它类型的变量转换成字符类型(string) 
    格式:Cstr(expression) 
    参数:expression是任何有效的表达式/其它类型的变量 
    例子: 
    <% 
    s = 3 + 2 
    response.write ”The result is: ” & cStr(s) 
    %> 
    结果:函数Cstr()将整数 5 转换 成字符”5”. 

    5.函数Date() 
    功能:返回当前系统(server端)的日期 
    格式: Date() 
    参数:无 
    例子<% date () %> 
    结果:05/10/00 

    5.1 Instr()
    函数返回字符或字符串在另一个字符串中第一次出现的位置.
    表达式 Instr([start, ] strToBeSearched, strSearchFor [, compare])
    允许数据类型: Start为搜索的起始值,strToBeSearched接受搜索的字符串 strSearchFor要搜索的字符.compare比较方式(详细见ASP常数)
    实例: <%strText = "This is a test!!"
    pos = Instr(strText, "a")
    response.write pos%>
    返回结果: 9

    6.函数Dateadd() 
    功能:计算某个指定的时间和 
    格式: dateadd(timeinterval,number,date) 
    参数:timeinterval是时间单位(月,日..); number是时间间隔值,date是时间始点. 
    例子: 
    <% 
    currentDate = #8/4/99# 
    newDate = DateAdd(“m”,3,currentDate) 
    response.write newDate 
    %> <% 
    currentDate = #12:34:45 PM# 
    newDate = DateAdd(“h”,3,currentDate) 
    response.write newDate 
    %> 
    结果: 
    11/4/99 
    3:34:45 PM 
    其中 
    “m” = ”month”; 
    “d” = ”day”; 
    如果是currentDate 格式,则, 
    “h” = ”hour”; 
    “s” = ”second”; 

    7.函数Datediff() 
    功能:计算某量个指定的时间差 
    格式: datediff(timeinterval,date1,date2[,firstdayofweek[,firstdayofyear]]) 
    参数: timeinterval 是时间单位; date1,date2是有效的日期表达式,firstdayofweek,firstdayofyear 是任意选项. 
    例子: 
    <% 
    fromDate = #8/4/99# 
    toDate = #1/1/2000# 
    response.write ”There are ” & _ 
    DateDiff(“d”,fromDate,toDate) & _ 
    “ days to millenium from 8/4/99.” 
    %> 
    结果:There are 150 days to millenium from 8/4/99. 

    8.函数day() 
    功能:返回一个整数值,对应于某月的某日 
    格式: day(date) 
    参数: date是一个有效的日期表达式; 
    例子<% =date(#8/4/99#) %> 
    结果:4 

    9.函数formatcurrency() 
    功能:转换成货币格式 
    格式: formatcurrency(expression [,digit[,leadingdigit[,paren[,groupdigit]]]]) 
    参数: expression 是有效的数字表达式;digit表示小数点后的位数;leadingdigit,paren,groupdigit是任意选项. 
    例子<%=FormatCurrency(34.3456)%> 
    结果34.35 

    10.函数Formatdatetime() 
    功能:格式化日期表达式/变量 
    格式: formatdatetime(date[,nameformat]) 
    参数: date为有效的日期表达式/变量;nameformat是指定的日期格式常量名称. 
    例子<% =formatdatetime(“08/04/99”,vblongdate) %> 
    结果:Wednesday,August 04,1999 
    说明: 
    描述
    返回表达式,此表达式已被格式化为日期或时间。 
    语法
    FormatDateTime(Date[, NamedFormat])
    FormatDateTime 函数的语法有以下参数:
    参数 描述 
    Date 必选项。要被格式化的日期表达式。 
    NamedFormat 可选项。指示所使用的日期/时间格式的数值,如果省略,则使用 vbGeneralDate。 
    设置
    NamedFormat 参数可以有以下值:
    常数 值 描述 
    vbGeneralDate 0 显示日期和/或时间。如果有日期部分,则将该部分显示为短日期格式。如果有时间部分,则将该部分显示为长时间格式。如果都存在,则显示所有部分。 
    vbLongDate 1 使用计算机区域设置中指定的长日期格式显示日期。 
    vbShortDate 2 使用计算机区域设置中指定的短日期格式显示日期。 
    vbLongTime 3 使用计算机区域设置中指定的时间格式显示时间。 
    vbShortTime 4 使用 24 小时格式 (hh:mm) 显示时间。 
    说明
    下面例子利用 FormatDateTime 函数把表达式格式化为长日期型并且把它赋给 MyDateTime: 
    Function GetCurrentDate 
    “FormatDateTime 把日期型格式化为长日期型。
    GetCurrentDate = FormatDateTime(Date, 1) 
    End Function

    11.函数Isnumeric() 
    功能:返回一个布尔值,判断变量是否为数字变量,或者是可以转换成数字的其它变量. 
    格式:isnumeric(expression) 
    参数:expression 是任意的变量. 
    例子: 
    <% 
    i=“234” 
    response.write isnumeric(i) 
    %> 
    结果: true. 

    12.函数Isobject() 
    功能:返回一个布尔值,判断变量是否为对象的变量, 
    格式: isobject(expression) 
    参数: expression 是任意的变量. 
    例子: 
    <% 
    set con =server.creatobject(“adodb.connection”) 
    response.write isobject(con) 
    %> 
    结果: true 

    13.函数:Lbound() 
    功能:返回一个数组的下界. 
    格式:Lbound(arrayname[,dimension]) 
    参数:arrayname 是数组变量,dimension 是任意项 
    例子: 
    <% 
    i = array(“1”,”2”,”3”) 
    response.write lbound(i) 
    %> 
    结果:0

    14.函数Lcase() 
    功能:将一字符类型变量的字符全部变换小写字符. 
    格式:Lcase(string) 
    参数:string是字符串变量 
    例子: 
    <% 
    str=“THIS is Lcase!” 
    response.write Lcase(str) 
    %> 
    结果:this is lcase! 

    15.函数left() 
    功能:截取一个字符串的前部分; 
    格式:left(string,length) 
    参数:string字符串,length截取的长度. 
    例子: <% =left(“this is a test!”,6) %> 
    结果:this i 

    16.函数len() 
    功能:返回字符串长度或者变量的字节长度 
    格式:len(string *varname) 
    参数:string字符串;varname任意的变量名称 
    例子: 
    <% 
    strtest=“this is a test!” 
    response.write left(strtest) 
    %> 
    结果:15 

    17.函

    分类: ASP学习 标签:

    ASP时间函数全解

    2007年9月25日 admin 没有评论

    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

    以2005-5-2 22:37:30星期一为例:

    2005-5-2:<%=date()%>
    2005:<%=year(date())%>
    5:<%=month(date())%>
    2:<%=day(date())%>

    22:<%=hour(now())%>
    37:<%=minute(now())%>
    30:<%=second(now())%>

    星期一:<%=weekdayname(weekday(now)) %>

    ASP时间函数详解
    Date 函数
    描述:返回当前系统日期。
    语法:Date

    DateAdd 函数
    描述:返回已添加指定时间间隔的日期。
    语法:DateAdd(interval, number, date)
    interval: 必选。字符串表达式,表示要添加的时间间隔。有关数值,请参阅“设置”部分。
    number: 必选。数值表达式,表示要添加的时间间隔的个数。数值表达式可以是正数(得到未来的日期)或负数(得到过去的日期)。
    date: 必选。Variant 或要添加 interval 的表示日期的文字。
    interval 参数可以有以下值:
    yyyy (年) 、q (季度) 、m (月) 、y (一年的日数) 、d (日) 、w (一周的日数) 、ww (周) 、h (小时) 、n (分钟) 、s (秒)
    说明:可用 DateAdd 函数从日期中添加或减去指定时间间隔。例如可以使用 DateAdd 从当天算起 30 天以后的日期或从现在算起 45 分钟以后的时间。要向 date 添加以“日”为单位的时间间隔,可以使用“一年的日数”(“y”)、“日”(“d”)或“一周的日数”(“w”)。
    DateAdd 函数不会返回无效日期。如下示例将 95 年 1 月 31 日加上一个月:
    NewDate = DateAdd("m", 1, "31-Jan-95")
    在这个例子中,DateAdd 返回 95 年 2 月 28 日,而不是 95 年 2 月 31 日。如果 date 为 96 年 1 月 31 日,则返回 96 年 2 月 29 日,这是因为 1996 是闰年。
    如果计算的日期是在公元 100 年之前则会产生错误。
    如果 number 不是 Long 型值,则在计算前四舍五入为最接近的整数。

    DateDiff 函数
    描述:返回两个日期之间的时间间隔。
    语法:DateDiff(interval, date1, date2 [,firstdayofweek[, firstweekofyear>)
    interval: 必选。字符串表达式,表示用于计算 date1 和 date2 之间的时间间隔。有关数值,请参阅“设置”部分。
    date1, date2: 必选。日期表达式。用于计算的两个日期。
    firstdayofweek: 可选。指定星期中第一天的常数。如果没有指定,则默认为星期日。有关数值,请参阅“设置”部分。
    firstweekofyear: 可选。指定一年中第一周的常数。如果没有指定,则默认为 1 月 1 日所在的星期。有关数值,请参阅“设置”部分。
    interval 参数可以有以下值:
    yyyy (年) 、q (季度) 、m (月) 、y (一年的日数) 、d (日) 、w (一周的日数) 、ww (周) 、h (小时) 、n (分钟) 、s (秒)
    firstdayofweek 参数可以有以下值:
    (以下分别为:常数 值 描述)
    vbUseSystem 0 使用区域语言支持 (NLS) API 设置。
    vbSunday 1 星期日(默认)
    vbMonday 2 星期一
    vbTuesday 3 星期二
    vbWednesday 4 星期三
    vbThursday 5 星期四
    vbFriday 6 星期五
    vbSaturday 7 星期六
    firstweekofyear 参数可以有以下值:
    (以下分别为:常数 值 描述)
    vbUseSystem 0 使用区域语言支持 (NLS) API 设置。
    vbFirstJan1 1 由 1 月 1 日所在的星期开始(默认)。
    vbFirstFourDays 2 由在新年中至少有四天的第一周开始。
    vbFirstFullWeek 3 由在新的一年中第一个完整的周开始。
    说明:DateDiff 函数用于判断在两个日期之间存在的指定时间间隔的数目。例如可以使用 DateDiff 计算两个日期相差的天数,或者当天到当年最后一天之间的星期数。
    要计算 date1 和 date2 相差的天数,可以使用“一年的日数”(“y”)或“日”(“d”)。当 interval 为“一周的日数”(“w”)时,DateDiff 返回两个日期之间的星期数。如果 date1 是星期一,则 DateDiff 计算到 date2 之前星期一的数目。此结果包含 date2 而不包含 date1。如果 interval 是“周”(“ww”),则 DateDiff 函数返回日历表中两个日期之间的星期数。函数计算 date1 和 date2 之间星期日的数目。如果 date2 是星期日,DateDiff 将计算 date2,但即使 date1 是星期日,也不会计算 date1。
    如果 date1 晚于 date2,则 DateDiff 函数返回负数。
    firstdayofweek 参数会对使用“w”和“ww”间隔符号的计算产生影响。
    如果 date1 或 date2 是日期文字,则指定的年度会成为日期的固定部分。但是如果 date1 或 date2 被包括在引号 (" ") 中并且省略年份,则在代码中每次计算 date1 或 date2 表达式时,将插入当前年份。这样就可以编写适用于不同年份的程序代码。
    在 interval 为“年”(“yyyy”)时,比较 12 月 31 日和来年的 1 月 1 日,虽然实际上只相差一天,DateDiff 返回 1 表示相差一个年份。

    DatePart 函数
    描述:返回给定日期的指定部分。
    语法:DatePart(interval, date[, firstdayofweek[, firstweekofyear>)
    DatePart: 函数的语法有以下参数:
    interval: 必选。字符串表达式,表示要返回的时间间隔。有关数值,请参阅“设置”部分。
    date: 必选。要计算的日期表达式。
    firstdayof week: 可选。指定星期中的第一天的常数。如果没有指定,则默认为星期日。有关数值,请参阅“设置”部分。
    firstweekofyear: 可选。指定一年中第一周的常数。如果没有指定,则默认为 1 月 1 日所在的星期。有关数值,请参阅“设置”部分。
    interval 参数可以有以下值:
    yyyy (年) 、q (季度) 、m (月) 、y (一年的日数) 、d (日) 、w (一周的日数) 、ww (周) 、h (小时) 、n (分钟) 、s (秒)
    firstdayofweek 参数可以有以下值:
    (以下分别为:常数 值 描述)
    vbUseSystem 0 使用区域语言支持 (NLS) API 设置。
    vbSunday 1 星期日(默认)
    vbMonday 2 星期一
    vbTuesday 3 星期二
    vbWednesday 4 星期三
    vbThursday 5 星期四
    vbFriday 6 星期五
    vbSaturday 7 星期六
    firstweekofyear 参数可以有以下值:
    (以下分别为:常数 值 描述)
    vbUseSystem 0 使用区域语言支持 (NLS) API 设置。
    vbFirstJan1 1 由 1 月 1 日所在的星期开始(默认)。
    vbFirstFourDays 2 由在新年中至少有四天的第一周开始。
    vbFirstFullWeek 3 由在新的一年中第一个完整的周(不跨年度)开始。
    说明:DatePart 函数用于计算日期并返回指定的时间间隔。例如使用 DatePart 计算某一天是星期几或当前的时间。
    firstdayofweek 参数会影响使用“w”和“ww”间隔符号的计算。
    如果 date 是日期文字,则指定的年度会成为日期的固定部分。但是如果 date 被包含在引号 (" ") 中,并且省

    分类: ASP学习 标签:

    ASP的19个基本技巧

    2007年3月8日 admin 评论已被关闭

    1. 现在的日期时间命令是
    <%=now%> 即可

    2.ASP取得表格(from)数据输入的方法,是使用一个内置的对象(object)—Requect,
    它以get,post而异。

    3.若要自己用VB或其它语言编写,.dll文件供ASP使用需将DLL文件注册方可:DOS下
    输入 regsbr32 *.dll

    4.显示五个重复的句子,字体越来越大
    <% for i=1 to 5 %>
    <font size=<% =i %> color=#00ffff>
    快速ASP
    </font>
    <br>
    <% next %>

    5.传送字符串到用户端
    response.write string
    如:<% response.write "Welcome" %>

    6.链接到指定的URL地址
    response.redirect url
    如:
    <% response.redirect "homepage.asp"
    %>

    *但是如果此.ASP的文件内容已经传送到用户断,则再用redirect时会发生错误。

    7.其他语言与ASP的结合:
    如:早上显示早安,下午显示你好
    <%
    if time>+#12:00:00 AM# and time<#12:00:00 PM #
    then
    greeting="早安!"
    else
    greeting="你好!"
    end if
    %>
    <%=greeting %>

    8.<script>标记在ASP中的应用
    例:

    <html>
    <body>
    <% call function1 %>
    </body>
    </html>
    <script runat=server language=javascript>
    function function1()
    {

    }
    </script>

    9.#include 包括其它文件
    <!–#include virtual|file="filename"–>
    virtual指虚拟的文件地址。
    file 代表绝对的文件地址。
    如:
    <!–#include virtual="/booksamp/test.asp"–>
    <!–#include file="/test/test.asp"–>

    而且可以层层嵌套。另外#include 不能在<%–%>之内

    10.ASP取得表格输入数据的方法
    :GET POST
    一.get:用户端将数据加到URL后,格式为”?字段1=输入数据1&字段2=输入数据2&…",
    再将其送到服务器。
    如: action为www.abc.com, 字段Name输入数据为jack,字段age的数据为15,则用get方法为
    http://www.abc.com?Name=jack&Age=15

    二.post:用户端用http信息数据传送到服务器
    ASP中:
    get:使用“输入数据= Request.QueryString("字段名")",将附加于URL的数据取出。
    post:使用“输入数据=Request.Forml"(字段名")",读取HTTP信息数据字段。
    * Request.QueryString范例
    如:〈A hery="aspform.asp?Name=jack&Age=15">
    按此〈/A〉〈p〉
    Name:<%=request.QueryString("Name")%)
    Age:<%=request.QeueryString("Age")%)
    * get 范例
    ·aspturm.asp:
    <form action="asp1b.asp" method="get">
    姓名: <input type=text name="input1" value="Your name">
    <p>
    特征: <select name="input2">
    <option>cool!
    <option>handsome
    <option>warmhearted
    </select>
    <input type=submit value="ok">
    </form>
    asp1b.asp的内容
    <html><body>
    <% =request.querystring("input1") %> hi, your character is
    <%= request.querystring("input2") %>
    </body></html>
    11.request.From
    语法: request.From(name)[(index)|.count]
    name:字段名
    index:当同一字段输入多个值时,指针值index指定要读取同一字段的那一个值,范围由1到
    request.From(name).count
    count:由request.From(name).count可知name字段输入几个值,若无此name字段,count为0

    如下例:
    <%
    forI=1 to request.fron("input1").count
    response.write request.From("input1")(I)&"<br>"
    next
    %>
    若input1有两个值则都显示出
    *若未采用index指定读取哪个.可用
    〈%
    for each item request.From("input"))
    repomse.write item &"<br>"
    next
    %>
    也可用" for each x in tewuest.From"重复取得所有字段的输入值。

    <% for each x in request.Form %>
    request.From (<%=x%)=<%=request.Form
    (x)%> <br>
    <% next %>

    12.获取客户端TCP/IP端口的方法:
    如: tcp/ip port is <%=request("server_port")%>
    使用server_port可以得到接收HTTP request的连接port信息

    13.通过HTTP_ACCEPT_LANGUAGE的HTTP表头信息,可以得到用户端的使用语言
    环境.
    以下例子判断用户端的语言环境,给出不同的页面.
    <% language=request.servervariables("HTTP_ACCEPT_LANGUAGE")
    if language="en" then %>
    <!–#include file="english.asp">
    <% else %>
    <!–#include file="china.asp">
    <% end if%>

    14.主页保留的期限
    如果用户端浏览器在一个主页保留的期限内,再度浏览此主页,则原在用
    户端硬盘上的主页内容将被显示.
    response.expires[=number]
    其中NUMBER为记录数据盒(PAGE BOX)的保留期限,单位是分钟.
    或:
    response.expiresabsolute[=[date][time]]
    如:设定一个主页保留期到某个日子.

    15.连接到指定的URL地址
    如:你希望确认用户已经看过INDEX.HTM,则可以检查是否已经看过,如
    尚未确认,则自动连接到首页
    <%
    if not session("BEEN_to_home_page") then
    response.redirect "index.asp"
    end if
    %>

    16.判断是回到本页还是第一次进入
    <%
    if user_has_been_here_before then
    response.write "<h3 align=center> Welcome Back
    again"
    else
    response.write "Welcome!"
    end if
    %>

    17.显示数据库中的图片与超级连接

    <%
    set conn=server.creatobject("ADODB.connection")
    conn.open "myaddress"
    set rs=conn.execute("select name,tel,url,image from
    myaddress")
    %>

    <p>
    <tabel>
    <tr>
    <% for i=0 to rs.fields.count-1 %>
    <td>
    <b>
    <%=rs(i).name %>
    </b>
    </td>
    <% next %>
    </tr>
    <% do while not rs.eof %>
    <tr>
    <% for i=0 to rs.fields.count-1 %>
    <td valign =top>
    <%
    if rs(i).name="image" then
    response.write "<img src="""&rs(i)&""" >"
    else
    if rs(i).name="url" then
    response.write "<a href="""&rs(i)&""">"&rs(i)&"</a>"
    else
    response.write rs(i)
    end if
    end if
    %>
    </td>
    <%next%>
    </tr>
    <% rs.movenext
    loop
    rs.close
    conn.close
    %>
    </html>

    18. 用ASP取得浏览器信息
    <%
    set a=server.creatobject("MSWC.BROWSERTYPE")
    msg="您使用的浏览器是:"+a.browser+"version"+a.version
    %>
    <%=msg%>

    19. asp访问cookies的方式(使用response和request)
    如下:
    写入cookies:
    response.cookies("待写入的coookies名称")
    ="待写入数据“
    读取cookies:
    读取数据=request.cookies("待读的cookies名称")

    * 写入时注意
    @ 写入cookies的response.cookies程序段必须放在<html>标记
    之前。而且不可以有任何的其他html代码
    @ COOKIES中必须使用expires设定有效期, COOKIES才能真正的
    写入客户端硬盘中。如:
    response.cookies("待写入的名称“).expires=#july 1,1998#
    或response.cookies("名称").expi
    res=DATE+365

    分类: ASP学习 标签: ,