1Asp初学者的一些基本代码
1、ASP开始结束符语法:<%%>文件后缀。asp
2、判断语句:判断表单传来的用户名和密码是否正确,并提示
Ifrequest("username")="admin"then
Response.write"恭喜,你已经登录成功"
Else
Response.write"对不起,您输入的用户名错误,请返回重输入"
Endif
Ifrequest("name")="admin"andrequest("pass")="admin"then
Response.redirect"admin.asp"
Else
Response.redirect"login.asp"
Endif
3循环语句:循环显示6条数据库中的数据
写法1
forn=1to6
Response.writers("title")&"<br>"
ifnotrs.eofthen
exitfor
else
rs.movenext
endif
next
写法二
dowhilenotrs.eof
Response.writers("title")&"<br>"
rs.movenext
loop
Now()函数返回系统时间
Date()函数返回当前系统时间
CStr(int)函数转化一个表达式为字符串
CInt(string)将一个表达式转化为数字类型
Trim(requrst("username"))函数去掉字符串左右的空格
Lift(rs("title"),10)函数返回字符串左边第length个字符以前的字符(含第length个字符),一般限制新闻标题的显示长度的时候用
Len(string)函数返回字符串的长度
5:ACCESS
方法一:
db="mydata.mdb"'如果放在目录中,就要写明"database/mydata.mdb"
Setconn=Server.CreateObject("ADODB.Connection")
connstr="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="&
Server.MapPath(db)
conn.Openconnstr
方法二
db="mydata.mdb"'如果放在目录中,就要写明"database/mydata.mdb"
Setconn=Server.CreateObject("ADODB.Connection")
connstr="driver={MicrosoftAccessDriver(*.mdb)};dbq="&
Server.MapPath(db)
conn.Openconnstr
6:Recordset对象操作数据库语法
(1)打开sql语句指定的表中的数据,把这批数据放入rs对象中
取出news表中所有的数据放到rs中
SetRs=server.CreateObject("ADODB.RecordSet")
SqlStr="select*fromnews"
Rs.OpenSqlStr,conn1,1
取出news表中签条数据放到rs中
SetRs=Server.CreateObject("ADODB.RecordSet")
SqlStr="selecttop6*fromnews"
Rs.OpenSqlStr,conn1,1
(2)循环显示6条rs对象中存在的数据,列表显示不带连接的写法
forn=1to6
Response.writers("title")&"<br>"
ifnotrs.eofthen
exitfor
else
rs.movenext
endif
next
带连接的写法
forn=1to6
Response.write"<ahref=show.asp?id=rs("id")>"&left(rs("title"),20)&"</a><br>"
ifnotrs.eofthen
exitfor
else
rs.movenext
endif
next
(3)向数据库中添加一条数据的代码
SetRs=server.CreateObject("ADODB.RecordSet")
SqlStr="select*fromnews"
Rs.OpenSqlstr,conn,1,3'注意这里的1,3代表可以写入的打开数据表
Rs.addnew
Rs("title")=trim(request("title"))
Rs("neirong")=request("neirong")
Rs("date")=new()
rs.update'真正写入数据库
(4)修改一条记录的代码,通过(2)中的连接传递过来id数值
SetRs=server.CreateObject("ADODB.RecordSet")
SqlStr="select*fromnewswhereid="&request(id)
Rs.OpenSqlstr,conn,1,3'注意这里的1,3代表可以写入的打开数据表
Rs("title")=trim(request("title"))
Rs("neirong")=request("neirong")
Rs("date")=new()
rs.update'真正写入数据库
(5)删除数据库中的一条记录,通过连接传递过来了数据得id数值
SetRs=server.CreateObject("ADODB.RecordSet")
SqlStr="select*fromnewswhereid="&request(id)
Rs.OpenSqlStr,conn,1,3'注意这里的1,3代表可以写入的打开数据表
2Asp初学者的一些基本代码
rs.delete'删除该条数据
7:标准SQL语句写法
包括取全部记录
SetRs=server.CreateObject("ADODB.RecordSet")
SqlStr="select*fromnews"
Rs.OpenSqlStr,conn,1,1‘运行sql语句,把数据提出到rs对象中
选取几条数据
SetRs=Server.CreateObject("ADODB.RecordSet")
SqlStr="selecttop6*fromnews"
Rs.OpenSqlStr,conn1,1'运行sql语句,把6条数据提出到rs对象中选取一条指定表中id字段数值的数据
SetRs=Server.CreateObject("ADODB.RecordSet")
SqlStr="select*fromnewswhereid="&request("id")
Rs.OpenSqlStr,conn1,1'运行sql语句,把6条数据提出到rs对象中添加一条表单传过来的数据替换
SetRs=Server.CreateObject("ADODB.RecordSet")
SqlStr="insertintonews(title,neirong)values(request("title"),request("neirong"))"
修改一条指定表中id字段数值的数据,用表单传来的数据替换
SetRs=Server.CreateObject("ADODB.RecordSet")
SqlStr="updatenewssettitle='"&request("title")&"',neirong='"request("内容")&"'whereid="&request("id")"
Rs.OpenSqlStr,conn1,3'运行sql语句,把数据提出到rs对象中,删除一条指定表中id字段数值的数据
SetRs=Server.CreateObject("ADODB.RecordSet")
SqlStr="deletefromnewswhereid="&request("id")
Rs.OpenSqlStr,conn1,3'运行sql语句,把数据提出到rs对象中
8、当单击按钮时侯表单带着的数据传送到哪个文件,在那里指定?
<formmethod="post"action="addsave.asp">
<inputtype="text"name="title">
<inputtype="text"name="neirong">
<inputtype="submit"name="Submit"value="提交">
</from>
9、表单提交来的数据接受并显示到屏幕上的代码
response.writerequest("name")
response.writenow()
response.writetrim(requst("name"))
10,利用Application对象作计数器的语法
在网页的头部加入
Application.Lock
Application("counter")=Application("counter")+1
Application.UnLock
在需要显示计数内容的网页的地方,加入下面的语句
response.writeApplication("counter")
11,利用Session对象保护后台管理页面admin.asp,防止未登陆用户进入
ifsession(admin)<>"ok"then
response.redirect"login.asp"
response.end
endif
在网站后台登陆页的密码验证部分标准写法
AdmName=Request.Form("Name")
AdmName=Request.Form("Pass")
SetRs=Server.CreateObject("ADODB.RecordSet")
SqlStr="Select*fromAdminwherename='"&AdmName&"'and
pass='"&AdmPass&"'"
Rs.OpenSqlStr,conn,1,3
ifRs.EOFANDRS.BOFthen
Response.Redirect("login.asp")
response.end
else
session("admin")="ok"
Response.Redirect("admin.asp")
response.end
endif
12、分页代码
sql="select..................省略了sql语句
Setrs=Sevrer.Createobject("ADODB.RECORDSEAT")
rs.Opensqlconn1,1
ifnotrs.eofthen
pages=30'定义每页显示的记录数
rs.pageSize=page'定义每页显示的记录数
allPages=rs.pageCount'计算一共能分多少页
page=Request.QueryString("page")'通过浏览器传递的页数
’if语句属于基本的排错处理
ifisEmpty(page)orCint(page)<1then
page=1
elseifCint(page)>allpagesthen
page=mallpages
endif
rs.AbsolutePage=page
Dowhilenotrs.eofandpages>0
'这里输出你要的内容。。。。。。。。。。。。。。。
pages=pages-1
rs.MoveNext
3Asp初学者的一些基本代码
Loop
esle
Response.Write("数据库暂时无内容!")
Endif
rs.Close
Setrs=Nothing
分页页码连接和跳转页码程序
<fromAction="v3.asp"Method="GET">
<%
Ifpage<>1then
Response.Write"(AHREF=?Page=1>第一页</A>"
Response.Write"(AHREF=?Page="&(page-1)&">上一页</A>
Endif
IfPage<>rs.PageCountthen
Response.Write"(AHREF=?Page="&(page+1)&">下一页</A>
Response.Write"(AHREF=?Page="&rs.PageCount&">最后一页</A>
Endif
%>
<p>输入页数:<inputTYPE="TEXT"Name="Page"SIZE="3">页数:<fontCOLOR="Red"><%=Page%>/<%=rs.PageCount%></font>
</p>
</from>
13分行列显示图片和名称的代码(4列*3行=12个)
<%
SetRs=Server.CreateObject("ADODB.RecordSet")
SqlStr="selecttop12*frommyprduct"
Rs.OpenSqlStr,coon1,1
i=1
%>
<tablewidth="90%"border="1"cellspacing="0"sellpadding="0">
tr>
<%
dowhilenotrs.eof
%>
<tdalign="center">
<imgsrc="<%=rs("imgurl")%>"width="52"height="120"><br>
<%=rs("productname")%>
</td>
<%ifimod4=0thenresponse.write"</tr><tr>"
i=i+1
rs.movenext
loop
rs.close
%>
</tr>
</table>
十四,ASP数据库连接之ACCESS-SQLSERVER
<%
IsSq1Data定义数据库类别,0为Access数据库,1为SQL数据库
IfIsSqData=0Then
Access数据库
datapath="data/"数据库目录的相对路径
datafile="data.mdb"数据库的文件名
connstr="provider=Microsoft.jet.OLEDB.4.0;DataSource="&Server.MapPath(""&datapath&""&datafile&"")
Connstr="DBQ"="&server.mappath(""&datapath&""&datafile&"")&";DRIVER={MicosoftAccessDriver(*.dbm)};"
Esle
SQL数据库
SqlLocalName="(local)"连接IP[本地用(local)外地用IP]
SqlUsername="sa"用户名
Sqlpassword="1"
SqlDatabaseName="data"数据库名
ConnStr="Provider=Sqloledb;UserID="&SqlUsername&";Password="&SqlPassword&";InitialCatalog="&SqlDatabaseName&";DataSource="&SqlLocalName&";"
ENDIF
OnErrorResumeNext
Steconn=Server.CreateObject(ADODB.Connection)
conn.openConnStr
IfErrThen
err.Clear
SetConn=Nothing
esponse.Write"数据库连接出错,请检查连接字串。"
Response.End
EndIf
OnErrorGoTo0
%>
一.ASP的常用语句
<1>规范语句
<%
语句
……
%>
<2>定义变量dim语句
<%
dima,b
a=10
b=”ok!”
%>
注意:定义的变量可以是数值型,也可以是字符或者其他类型的
<3>简单的控制流程语句
1.If条件1then
语句1
elseif条件2then
语句2
else
语句3
endif
2.while条件
语句
wend
3.forcount=1tonstepm
语句1
exitfor
语句2
next
二.ASP数据库简单操作教程
<1>.数据库连接(用来单独编制连接文件conn.asp)
<%
Setconn=Server.CreateObject("ADODB.Connection")
conn.Open"DRIVER={MicrosoftAccessDriver(*.mdb)};DBQ="&Server.MapPath("bbsdb1user.mdb")
%>
(用来连接bbsdb1目录下的user.mdb数据库)
<2>显示数据库记录
原理:将数据库中的记录一一显示到客户端浏览器,依次读出数据库中的每一条记录
如果是从头到尾:用循环并判断指针是否到末使用:notrs.eof
如果是从尾到头:用循环并判断指针是否到开始使用:notrs.bof
<!--#includefile=conn.asp-->(包含conn.asp用来打开bbsdb1目录下的user.mdb数据库)
<%
setrs=server.CreateObject("adodb.recordset")(建立recordset对象)
sqlstr="select*frommessage"---->(message为数据库中的一个数据表,即你要显示的数据所存放的数据表)
rs.opensqlstr,conn,1,3---->(表示打开数据库的方式)
rs.movefirst---->(将指针移到第一条记录)
whilenotrs.eof---->(判断指针是否到末尾)
response.write(rs("name"))---->(显示数据表message中的name字段)
rs.movenext---->(将指针移动到下一条记录)
wend---->(循环结束)
------------------------------------------------------
rs.close
conn.close这几句是用来关闭数据库
setrs=nothing
setconn=nothing
-------------------------------------------------------
%>
其中response对象是服务器向客户端浏览器发送的信息
<3>增加数据库记录
增加数据库记录用到rs.addnew,rs.update两个函数
<!--#includefile=conn.asp-->(包含conn.asp用来打开bbsdb1目录下的user.mdb数据库)
<%
setrs=server.CreateObject("adodb.recordset")(建立recordset对象)
sqlstr="select*frommessage"---->(message为数据库中的一个数据表,即你要显示的数据所存放的数据表)
rs.opensqlstr,conn,1,3---->(表示打开数据库的方式)
rs.addnew新增加一条记录
rs("name")="xx"将xx的值传给name字段
rs.update刷新数据库
------------------------------------------------------
rs.close
conn.close这几句是用来关闭数据库
setrs=nothing
setconn=nothing
-------------------------------------------------------
%>
<4>删除一条记录
删除数据库记录主要用到rs.delete,rs.update
<!--#includefile=conn.asp-->(包含conn.asp用来打开bbsdb1目录下的user.mdb数据库)
<%
dimname
name="xx"
setrs=server.CreateObject("adodb.recordset")(建立recordset对象)
sqlstr="select*frommessage"---->(message为数据库中的一个数据表,即你要显示的数据所存放的数据表)
rs.opensqlstr,conn,1,3---->(表示打开数据库的方式)
-------------------------------------------------------
whilenotrs.eof
ifrs.("name")=namethen
rs.delete
rs.update查询数据表中的name字段的值是否等于变量name的值"xx",如果符合就执行删除,
else否则继续查询,直到指针到末尾为止
rs.movenext
emdif
wend
------------------------------------------------------
------------------------------------------------------
rs.close
conn.close这几句是用来关闭数据库
setrs=nothing
setconn=nothing
-------------------------------------------------------
%>
<5>关于数据库的查询
(a)查询字段为字符型
<%
dimuser,pass,qq,mail,message
user=request.form("user")
pass=request.form("pass")
qq=request.form("qq")
mail=request.form("mail")
message=request.form("message")
iftrim(user)&"x"="x"ortrim(pass)&"x"="x"then(检测user值和pass值是否为空,可以检测到空格)
response.write("注册信息不能为空")
else
setrs=server.CreateObject("adodb.recordset")
sqlstr="select*fromuserwhereuser='"&user&"'"(查询user数据表中的user字段其中user字段为字符型)
rs.opensqlstr,conn,1,3
ifrs.eofthen
rs.addnew
rs("user")=user
rs("pass")=pass
rs("qq")=qq
rs("mail")=mail
rs("message")=message
rs.update
rs.close
conn.close
setrs=nothing
setconn=nothing
response.write("注册成功")
endif
rs.close
conn.close
setrs=nothing
setconn=nothing
response.write("注册重名")
%>
(b)查询字段为数字型
<%
dimnum
num=request.form("num")
setrs=server.CreateObject("adodb.recordset")
sqlstr="select*frommessagewhereid="&num(查询message数据表中id字段的值是否与num相等,其中id为数字型)
rs.opensqlstr,conn,1,3
ifnotrs.eofthen
rs.delete
rs.update
rs.close
conn.close
setrs=nothing
setconn=nothing
response.write("删除成功")
endif
rs.close
conn.close
setrs=nothing
setconn=nothing
response.write("删除失败")
%>
<6>几个简单的asp对象的讲解
response对象:服务器端向客户端发送的信息对象,包括直接发送信息给浏览器,重新定向URL,或设置cookie值
request对象:客户端向服务器提出的请求
session对象:作为一个全局变量,在整个站点都生效
server对象:提供对服务器上方法和属性的访问
(a)response对象的一般使用方法
比如:
<%
resposne.write("hello,welcometoasp!")
%>
在客户端浏览器就会看到hello,welcometoasp!这一段文字
<%
response.Redirect("www.sohu.com")
%>
如果执行这一段,则浏览器就会自动连接到“搜狐”的网址
关于response对象的用法还有很多,大家可以研究研究
request对象的一般使用方法
比如客户端向服务器提出的请求就是通过request对象来传递的
列如:你在申请邮箱的所填写的个人信息就是通过该对象来将
你所填写的信息传递给服务器的
比如:这是一段表单的代码,这是提供给客户填写信息的,填写完了按
“提交”传递给request.asp文件处理后再存入服务器数据库
<formname="form1"method="post"action="request.asp">
<p>
<inputtype="text"name="user">
</p>
<p>
<inputtype="text"name="pass">
</p>
<p>
<inputtype="submit"name="Submit"value="提交">
</p>
</form>
那么request.asp该如何将其中的信息读入,在写入数据库,在这里就要用到
request对象了,下面我们就来分析request.asp的写法
<%
dimname,password(定义user和password两个变量)
name=request.form(“user”)(将表单中的user信息传给变量name)
password=request.form(“pass”)(将表单中的pass信息传给变量password)
%>
通过以上的几句代码我们就将表单中的数据读进来了,接下来我们要做的就是将
信息写入数据库了,写入数据库的方法上面都介绍了,这里就不一一复述了。
(通过上面的学习大家完全可以自己做一个留言版了)