asp学习资料.docx
- 文档编号:11927003
- 上传时间:2023-04-16
- 格式:DOCX
- 页数:49
- 大小:44.17KB
asp学习资料.docx
《asp学习资料.docx》由会员分享,可在线阅读,更多相关《asp学习资料.docx(49页珍藏版)》请在冰豆网上搜索。
asp学习资料
每个ASP程序员必备的知识
数据库连接:
<%
setconn=server.createobject("adodb.connection")
conn.open"driver={microsoftaccessdriver(*.mdb)};dbq="&server.mappath("数据库名")
%>
打开数据库:
exec="select*from数据库表"
setrs=server.createobject("adodb.recordset")
rs.openexec,conn,1,1
参数1,1为读取
读取内容格式:
<%=rs("字段")%>
添加记录处理程序:
<%
setconn=server.createobject("adodb.connection")
conn.open"driver={microsoftaccessdriver(*.mdb)};dbq="&server.mappath("数据库名")
name=request.form("字段")name,tel,message为提交表单所设置的字段值
tel=request.form("字段")
message=request.form("字段")
exec="insertinto表名(字段)values(';"+字段+"';)"多个用逗号隔开
conn.executeexec使用execute提交
conn.close
setconn=nothing
%>
搜索处理程序:
<%
name=request.form("字段")name,tel为提交表单所设置的字段值
tel=request.form("字段")
setconn=server.createobject("adodb.connection")
conn.open"driver={microsoftaccessdriver(*.mdb)};dbq="&server.mappath("数据库名")
exec="select*from表wherename=';"+字段+"';andtel="+字段
setrs=server.createobject("adodb.recordset")
rs.openexec,conn,1,1
%>
';页面搜索到的内容导出来
<%
dowhilenotrs.eof
%>
<%
rs.movenext
loop
%>
删除记录处理程序:
<%
setconn=server.createobject("adodb.connection")
conn.open"driver={microsoftaccessdriver(*.mdb)};dbq="&server.mappath("数据库名")
exec="delete*from表名where编号="&request.form("id")
conn.executeexec
%>
修改记录处理程序:
<%
setconn=server.createobject("adodb.connection")
conn.open"driver={microsoftaccessdriver(*.mdb)};dbq="&server.mappath("数据库名")
exec="select*from表名where编号="&request.form("id")
setrs=server.createobject("adodb.recordset")
rs.openexec,conn,1,3';1,3为修改意思
rs("name")=request.form("字段")';name,tel,message为提交表单所设置的字段值
rs("tel")=request.form("字段")
rs("message")=request.form("字段")
rs.update
rs.close
setrs=nothing
conn.close
setconn=nothing
%>
修改记录执行程序:
输入ID号页面>>>导出相对应ID数据>>>>>>直接修改的处理程序
后台登陆处理程序例子:
<%
dimname,password
name=request.form("name")
password=request.form("password")
dimexec,conn,rs
exec="select*from表名where(name=';"&字段&"';andpassword=';"&字段&"';)"
setconn=server.createobject("adodb.connection")
conn.open"driver={microsoftaccessdriver(*.mdb)};dbq="&server.mappath("数据库名")
setrs=server.createobject("adodb.recordset")
rs.openexec,conn
ifnotrs.eofthen
rs.Close
conn.Close
session("checked")="yes"
session("check")="right"
response.Redirect"index.asp"
else
session("checked")="no"
session("check")="wrong"
response.Redirect"login.asp"
endif
%>
每个后台页面加上:
<%ifnotsession("checked")="yes"then';session里面定义一个checked字符串变量
response.Redirect"login.asp"
else
%>
简单入门ASP子程序
2009-02-1714:
20:
04来源:
作者:
佚名【大中小】评论:
0条
在ASP中,你可通过VBScript和其他方式调用子程序。
实例:
调用使用VBScript的子程序
<%
subvbproc(num1,num2)
response.write(num1*num2)
endsub
%>
您可以像这样调用一个程序:
结果:
<%callvbproc(3,4)%>
或者,像这样:
结果:
<%vbproc3,4%>
如何从ASP调用以VBScript编写的子程序。
调用使用JavaScript的子程序
<%@language="javascript"%>
<%
functionjsproc(num1,num2)
{
Response.Write(num1*num2)
}
%>
结果:
<%jsproc(3,4)%>
如何从ASP调用以JavaScript编写的子程序。
调用使用VBScript和JavaScript的子程序
<%
subvbproc(num1,num2)
Response.Write(num1*num2)
endsub
%>
functionjsproc(num1,num2)
{
Response.Write(num1*num2)
}
结果:
<%callvbproc(3,4)%>
结果:
<%calljsproc(3,4)%>
如何在一个ASP文件中调用以VBScript和JavaScript编写的子程序。
子程序
ASP源代码可包含子程序和函数:
<%
subvbproc(num1,num2)
response.write(num1*num2)
endsub
%>
Result:
<%callvbproc(3,4)%>
将<%@language="language"%>这一行写到标签的上面,就可以使用另外一种脚本语言来编写子程序或者函数:
<%@language="javascript"%>
<%
functionjsproc(num1,num2)
{
Response.Write(num1*num2)
}
%>
Result:
<%jsproc(3,4)%>
VBScript与JavaScript之间的差异
当从一个用VBScript编写的ASP文件中调用VBScript或者JavaScript子程序时,可以使用关键词"call",后面跟着子程序名称。
假如子程序需要参数,当使用关键词"call"时必须使用括号包围参数。
假如省略"call",参数则不必由括号包围。
假如子程序没有参数,那么括号则是可选项。
当从一个用JavaScript编写的ASP文件中调用VBScript或者JavaScript子程序时,必须在子程序名后使用括号。
简单入门ASP变量
2009-02-1714:
15:
08来源:
作者:
佚名【大中小】评论:
0条
变量用于存储信息。
假如在子程序之外声明变量,那么这个变量可被ASP文件中的任何脚本改变。
假如在子程序中声明变量,那么当子程序每次执行时,它才会被创建和撤销。
实例:
声明变量
以下为引用的内容:
<%
dimname
name="DonaldDuck"
response.write("Mynameis:
"&name)
%>
变量用于存储信息。
本例演示如何声明变量,为变量赋值,并在程序中使用这个变量
声明数组
以下为引用的内容:
<%
Dimfname(5),i
fname(0)="George"
fname
(1)="John"
fname
(2)="Thomas"
fname(3)="James"
fname(4)="Adrew"
fname(5)="Martin"
Fori=0to5
response.write(fname(i)&"
")
Next
%>
数组用于存储一系列相关的数据项目。
本例演示如何声明一个存储名字的数组。
循环生成HTML标题
以下为引用的内容:
<%
dimi
fori=1to6
response.write("
next
%>
如何循环生成6个不同的HTML标题。
使用Vbscript制作基于时间的问候语
以下为引用的内容:
<%
dimh
h=hour(now())
response.write("
"&now())
response.write("(BeijingTime)
")Ifh<12then
response.write("GoodMorning!
")
else
response.write("Goodday!
")
endif
%>
本例将根据服务器时间向用户显示不同的消息。
使用JavaScript制作基于时间的问候语
以下为引用的内容:
<%@language="javascript"%>
<%
vard=newDate()
varh=d.getHours()
Response.Write("
")
Response.Write(d+"(BeijingTime)")
Response.Write("
")if(h<12)
{
Response.Write("GoodMorning!
")
}
else
{
Response.Write("Goodday!
")
}
%>
本例同上,只是语法不同而已。
变量的生存期
在子程序外声明的变量可被ASP文件中的任何脚本访问和修改。
在子程序中声明的变量只有当子程序每次执行时才会被创建和撤销。
子程序外的脚本无法访问和修改该变量。
如需声明供多个ASP文件使用的变量,请将变量声明为session变量或者application变量。
Session变量
Session变量用于存储单一用户的信息,并且对一个应用程序中的所有页面均有效。
存储于session中的典型数据是姓名、id或参数。
Application变量
Application变量同样对一个应用程序中的所有页面均有效。
Application变量用于存储一个特定的应用程序中所有用户的信息。
用ASP编写图片计数器
2009-01-1909:
49:
14来源:
作者:
佚名【大中小】评论:
0条
在Internet上,用ASP编写的计数器到处都是,本人觉得再在这里谈ASP编写计数器已没有多大意义。
后来想想还是有必要谈一下,因为这不仅仅只是在谈计数器的编写,而是在向大家介绍ASP的知识与应用技巧。
程序原代码如下:
$#@60;%countlong=8
′countlong定义计数器显示位数
OnErrorResumeNext
′忽略所有的错误
count=server.mappath(″count.txt″)
setcou=server.createobject(″scripting.filesystemobject″)
setout=cou.opentextfile(count,1,false,false)
counter=out.readline
out.close
′以上代码是打开文件count.txt并读取一行,读出目前计数器的值
ifsession(″in″)$#@60;$#@62;″in″then
′判断用户是否已进入主页,以确保他按刷新或再次来到此页面时计数器不会再加1
session(″in″)=″in″
setout=cou.createtextfile(count,true,false)
application.lock
counter=counter+1
′计数器加1
out.writeline(counter)
application.unlock
out.close
′以上代码是建立一个新的文件count.txt并写入一行,写入加1后计数器的值
endif
co=cstr(counter)
′cstr函数用来把数字型变量转换成字符型
fori=1tocountlong-len(co)
response.write″″
next
′上面的循环语句是完成计数器前面的0图片的添加
′len(co)函数是得到变量co的长度,countlong-len(co)就得到前面0图片的个数
fori=1tolen(co)
response.write″″
next
′mid(co,i,1)函数是用来从变量co的第i位开始读一个字符%$#@62;
这个计数器做得比较成功的地方是使用session防止用户对计数器的多次刷新;使用了文本文件记录计数器的值,虽然代码写起来比较长,但比起用application对象要好得多,因为当服务器reboot或改动global.asa时,application对象的值就会被清空;还有就是用图片代替了字符,看起来更美观大方!
计数器的图片你可以自己设计一下,0用文件名0.gif,1用1.gif,以此类推。
ASP编程中20个非常有用的例子
2009-01-0716:
21:
23来源:
作者:
编辑整理【大中小】评论:
1条
1.如何用Asp判断你的网站的虚拟物理路径
答:
使用Mappath方法
ThePhysicalpathtothisvirtualwebsiteis:
<%=Server.MapPath("\")%>
2.我如何知道使用者所用的浏览器?
答:
使用theRequestobject方法
strBrowser=Request.ServerVariables("HTTP_USER_AGENT")
IfInstr(strBrowser,"MSIE")<>0Then
Response.redirect("ForMSIEOnly.htm")
Else
Response.redirect("ForAll.htm")
EndIf
3.如何计算每天的平均反复访问人数
答:
解决方法
<%startdate=DateDiff("d",Now,"01/01/1990")
ifstrdate<0thenstartdate=startdate*-1
avgvpd=Int((usercnt)/startdate)%>
显示结果
<%response.write(avgvpd)%>
thatisit.thispagehavebeenviewedsinceNovember10,1998
4.如何显示随机图象
<%dimp,ppic,dpic
ppic=12
randomize
p=Int((ppic*rnd)+1)
dpic="graphix/randompics/"&p&".gif"
%>
显示
5.如何回到先前的页面
答:
或用图片如:
6.如何确定对方的IP地址
答:
<%=Request.serverVariables("REMOTE_ADDR)%>
7.如何链结到一副图片上
答:
<%@Languages=vbscript%>
<%response.expires=0
strimagename="graphix/errors/erroriamge.gif"
response.redirect(strimagename)
%>
8.强迫输入密码对话框
答:
把这句话放载页面的开头
<%response.status="401notAuthorized"
response.end
%>
9.如何传递变量从一页到另一页
答:
用HIDDEN类型来传递变量
<%formmethod="post"action="mynextpage.asp">
<%foreachiteminrequest.form%>
value="<%=server.HTMLEncode(Request.form(item))%>">
<%next%>
10.为何我在asp程序内使用msgbox,程序出错说没有权限
答:
由于asp是服务器运行的,如果可以在服务器显示一个对话框,那么你只好等有人按了确定之后,你的程序才能继续执行,而一般服务器不会有人守着,所以微软不得不禁止这个函数,并胡乱告诉你(呵呵)没有权限。
但是ASP和客户端脚本结合倒可以显示一个对话框,asfollows:
11.有没有办法保护自己的源代码,不给人看到
答:
可以去下载一个微软的WindowsScriptEncoder,它可以对asp的脚本和客户端javascript/vbscript脚本进行加密。
。
。
不过客户端加密后,只有ie5才能执行,服务器端脚本加密后,只有服务器上安装有scriptengine5(装一个ie5就有了)才能执行。
12.怎样才能将querystring从一个asp文件传送到另一个?
答:
前者文件加入下句:
Response.Redirect("second.asp?
"&Request.ServerVariables("QUERY_STRING"))
13.global.asa文件总是不起作用?
答:
只有web目录设置为webapplication,global.asa才有效,并且一个webapplication的根目录下global.asa才有效。
IIS4可以使用InternetServiceManager设置applicationsetting怎样才能使得htm文件如同asp文件一样可以执行脚本代码?
14.怎样才能使得htm文件如同asp文件一样可以执行脚本代码?
答:
InternetSevicesManager->选择defaultwebsite->右鼠键->菜单属性-〉主目录->
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- asp 学习 资料