莫相离 发表于 2015-1-16 22:47:34

ASP编程:一些Asp技能和有用办理办法

强大的可扩展性。ASP具有强大的扩展性,可以实现与多种网络、硬件设备的连接:通过专用的通讯线路远程接入企业;通过远程拨号服务器为远程拨号客户提供服务;通过WAP为移动电话互联网客户服务。技能|办理随机数:
<%randomize%>
<%=(int(rnd()*n)+1)%>
查询数据时失掉的纪录关头字用白色显现:
<%=replace(RS("字段X"),searchname,"<fontcolor=#FF0000>"&searchname&"</font>")%>
经由过程asp的手腕来反省来访者是不是用了代办署理
<%ifRequest.ServerVariables("HTTP_X_FORWARDED_FOR")""then
response.write"<fontcolor=#FF0000>您经由过程了代办署理服务器,"&_
"实在的IP为"&Request.ServerVariables("HTTP_X_FORWARDED_FOR")
endif
%>
判别上一页的来历
request.servervariables("HTTP_REFERER")
JavaScript:document.referrer
扫除缓存,从头加载页面
<%response.expires=0
response.expiresabsolute=now()-1
response.addHeader"pragma","no-cache"
response.addHeader"cache-control","private"
Response.cachecontrol="no-cache"
%>
鄙人拉菜单中显现年和月
<selectname="select">
<%
DimM_Year
DimM_Month
DimM_MonthJ
DimM_TheMonth
DimM_YM
ForM_Year=2000ToYear(Date)
M_Month=12
IfM_Year=Year(Date)Then
M_Month=Month(Date)
EndIf
ForM_MonthJ=1ToM_Month
IfM_MonthJ<10Then
M_TheMonth="0"&M_MonthJ
Else
M_TheMonth=M_MonthJ
EndIf
M_YM=M_Year&"-"&M_TheMonth%>
<optionvalue="<%=M_YM%>"><%=M_YM%></option>
<%
Next
Next%>
</select>
检索并删除数据库里的反复纪录
conn.execute("deletefromtablewhereidnotin(selectdistinctfromtable)")在做一个在线交换的网站时,有个成绩很令我头疼,就是关于及时统计在线用户的成绩,客户请求:统计以后在耳目数、旅客人数、会员人数、在线用户列表,包含旅客、会员和办理员(假如是旅客,则主动天生旅客的ID,假如是会员,则显现会员姓名)。由于它请求有及时性,则起首我将用global.asa办理的设法pass失落。
成绩的关头是怎样判别用户已分开,和当用户分开时怎样实行一个文件或一个函数。
经由和网上一些伴侣的切磋,终究办理了这个成绩。
办理的道理为:编写一个通用页面,所谓的通用页面,就是使用里的每一个页面都包括这个页面,比方:header.ASP,在这个页面里,用XMLHTTP写一段代码,这段代码的感化是每隔10秒或20秒就向服务器发送一个哀求,目标是更新以后用户的在线工夫并删除在线工夫凌驾必定工夫的用户,使数据库中的在线用户纪录坚持必定的及时性。
次要完成办法为:
新建一数据库,字段称号分离为:id(字符),name(字符),user(数字)tt(日期),admin(权限代码,0-一般用户,1-办理员)
表名:online
header.asp↓
============================================================
<%
......
ifsession("s_in")1andsession("s_name")=""then’假如用户是第一次上岸
rs.open"select*fromonline",conn,3,3
rs.addnew
rs("id")=session.sessionID
rs("name")="旅客"&session.sessionID
rs("user")=0’0暗示用户未上岸,是旅客身份
rs("tt")=now
rs.update
rs.close
session("s_in")=1’设置用户的材料已存进数据库,暗示已在线
endif
ifsession("s_name")""then’假如用户已经由过程登录框登录
rs.open"select*fromonlinewhereid=’"&session.sessionID&"’",conn,3,3
rs("name")=session("s_name")
rs("admin")=session("s_admin")’将用户的姓名更新为会员称号
rs("user")=1’暗示用户已上岸,是会员身份
rs("tt")=now’将以后体系工夫设置为用户的上岸工夫
rs.update
rs.close
endif
......
%>
......
<head>
......
<scriptlanguage=JavaScript>
functionTest()
{
varxmlhttp=newActiveXObject("MSXML2.XMLHTTP");
xmlhttp.open("POST","onceonline.asp",false);//向onceonline.asp发送更新哀求
xmlhttp.setRequestHeader("CONTENT-TYPE","application/x-www-form-urlencoded");
xmlhttp.send();
}
setInterval("Test();",10);//10秒钟发送一次更新哀求
</script>
......
</head>
......
==========================================================
onceonline.asp
<%
rs.open"selectttfromonlinewhereid=’"&session.sessionID&"’",conn,3,3
rs("tt")=now()’更新以后在线用户的在线工夫
rs.update
rs.close
rs.open"deletefromonlinewheredatediff(’s’,tt,now())>60",conn,3,1’删除超时用户
%>
==============================================================
如许,基础包管了数据库顶用户列表的及时性,偏差取决于更新工夫和删除工夫的差值巨细和服务器的处置速率,倡议不要将删除超时用户的工夫距离取的过于小,那样有大概会招致在线用
ASP.NET和ASP的比较,技术上比较已经没什么可说的了.新一代在大部分程度来说当然是比旧一代好了.关键看你对所做软件的理解了.因人而定.会写的话也可能比ASP.NET写得更有效率和更方便重用

深爱那片海 发表于 2015-1-19 23:43:47

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

海妖 发表于 2015-1-28 15:32:26

没有坚实的理论做基础,那么我们连踏入社会第一步的资本都没有,特别对于计算机专业的学生学好专业知识是置关重要的。在这里我侧重讲一下如何学习ASP,从平时的学习过程中。

老尸 发表于 2015-2-5 20:54:24

从事这个行业,那么你可以学ASP语言,简单快速上手,熟练dreamweav排版,写asp代码,熟练photoshop处理图片,打好基础就行了

再现理想 发表于 2015-2-13 13:07:00

你可以通过继承已有的对象最大限度保护你以前的投资。并且C#和C++、Java一样提供了完善的调试/纠错体系。

第二个灵魂 发表于 2015-3-3 21:35:09

不能只是将它停留在纸上谈兵的程度上。

仓酷云 发表于 2015-3-11 13:52:00

运用经典的例子。并且自己可以用他来实现一些简单的系统。如果可以对他进行进一步的修改,找出你觉得可以提高性能的地方,加上自己的设计,那就更上一个层次了,也就会真正地感到有所收获。

谁可相欹 发表于 2015-3-26 01:52:45

下载一个源代码,然后再下载一个VBScript帮助,在源代码中遇到不认识的函数或是其他什么程序,都可以查帮助进行解决,这样学习效率很高。
页: [1]
查看完整版本: ASP编程:一些Asp技能和有用办理办法