<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%> 江西信息应用职业技术学院网络学苑
 
本站建设中
| | | | | |
 
asp常用代码库
 
连接数据库

方法一:直接给出数据库类型、位置、文件名,一般虚拟主机采用这种方式

<%
set db=Server.Createobject("ADODB.Connection")
db.Open "DBQ="&Server.Mappath("路径表示/数据库名.mdb")&";DRIVER={Microsoft Access Driver (*.mdb)};"
%>

方法二

服务器设置数据源方式,安全,也方便移植,但需要有服务器管理权以设置ODBC数据源

<%
set db=Server.Createobject("ADODB.Connection")
db.Open "数据源名"
%>

可以采用包含文件方式连接数据库

<!--#include file="conn.asp"-->

conn.asp包含以上连接数据库代码

-------------------------------------------------------------
从表单获取信息并发送数据库存储

<%
dim t1,t2
t1=Request("t1")
t2=Request("t2")
t3=Request("REMOTE_ADDR")
db.Execute "insert into 学生基本信息(姓名,学号,ip地址,发送时间) values ('"& t1 &"','" & t2 & "','" & t3 & "','" & now() & "')"
db.close
response.write"成功发送"
或者(response.redirect "http://.....")
%>

-------------------------------------------------------------
在页面输出显示数据库信息

显示数据库表中全部信息

<%
set rs=db.execute("select * from 学生基本信息")
%>
<%do while not rs.eof%>
姓名<%=rs("姓名")%><br>
学号<%=rs("学号")%><br>
<%
rs.movenext
loop
%>

按条件查询数据库表中信息

<%
If Trim(Request("sname"))<>"" and Trim(Request("sid"))<>"" Then
sname=Trim(Request("sname"))
sid=Trim(Request("sid"))
Set rs=Server.CreateObject("ADODB.Recordset")
strSql="Select * From 学生成绩表 Where 姓名='"&sname&"' and 学号='"&sid&"'"
Else
Response.Write "信息不全"
end if
If Not rs.Bof And Not rs.Eof Then
Response.Write "信息如下:"
%>
姓名:<%=rs("姓名")%>:
得分:<%=rS("测试总分")%> <br />
<%
Else
Response.Write "对不起,没有找到相关信息"
end if
%>

显示正文

<%
id=request("id")
sql="select * from 留言 where id =" & id
set rs=db.execute(sql)
%>

<%=RS("标题")%><br>
<%=RS("正文")%><br>

管理登录

<%
strSql ="Select * From 管理员 where 用户名='" & Request.Form("Username") & "' And 密码='" & Request.Form("Password") & "'"
Set rs=db.Execute(strSql)
If Not rs.Bof And Not rs.Eof Then
Session("用户名") = RS("用户名")
Response.Redirect "ok.asp"
else
Response.Redirect "err.asp"
End If
%>

页面验证是否正常登录

<%
if isempty(Session("用户名")) then
Response.Redirect "login.htm"
end if
%>

您好,<%=Session("用户名")%>

数据库信息管理列表

<%
sql="select * from 留言"
set rs=db.execute(sql)
%>
<%do while not rs.eof%>
<a href="body.asp?id=<%=rs("ID")%>"><%=RS("标题")%></a><a href="del.asp?id=<%=rs("id")%>">删除</a><a href="update.asp?id=<%=rs("id")%>">更新</a><br>
<%
rs.movenext
loop
%>

删除

<%
id=request.querystring("id")
sql="delete from 信息 where id =" & id
db.Execute(sql)
db.close
Response.Redirect "infolistadmin.asp"
%>

更新

<%

id=Request("id")

Sql ="Select * From 信息 where id=" & id
Set rs=db.Execute(Sql)
%>

<form id="form1" name="form1" method="post" action="">
标题
<input name="t1" type="text" value="<%=rs("标题")%>"/>
正文
<td><textarea name="t2" cols="40" rows="6"><%=rs("正文")%></textarea>
<input type="submit" name="Submit" value="提交" />
</form>


<%
If Request("t1")<>"" Then
t1=Request("t1")
t2=Request("t2")

sql="update 信息 set 标题='" & t1 & "',正文='" & t2 & "' where id=" & id
db.execute(sql)

Response.Redirect "infolistadmin.asp"
Else
Response.Write ""
End If
%>

点击率变化

<%
id=request.QueryString("id")
sql="update 信息 set 点击率=点击率+1 where id=" & id
db.execute(sql)
%>

判断内外网并跳转

<%
ti=Left(Request.servervariables("REMOTE_ADDR"),3)
if ti="10." then
response.redirect "http://.../"
else
response.redirect "http://.../"
end if
%>

控制显示标题字符数,超则带...

<%
text=rs("title")
i=22
if len(text)>i then
text=left(text,i)
response.write (text&"...")
else
response.write (text)
end if
%>

带条件查询并显示最新几条记录

sql="select top 6 * from zb4 where t='jxc' and pas='1' order by id desc"

带条件查询遇到复杂条件and or

where (课程日期节数='" & course1 & "' and t10='" & Request("f") & "') or (课程日期节数='" & course2 & "' and t10='" & Request("f") & "')

关闭记录录和数据库连接

<%
rs.close
set rs=nothing
%>
<%
db.close
set db=nothing
%>

信息检索,并显示检索到的记录数

<%
if ss="内容" Then
strSql="Select * From zb Where t1='组处' and bod Like '%" & Trim(Request("word")) & "%' order by submit_date desc,id desc"

set rs=Server.CreateObject("ADODB.Recordset")

rs.Open strSql,db,1

If rs.RecordCount<=0 Then
Response.Write "对不起,没有找到相关信息"
Else
Response.Write "共找到" & rs.RecordCount & "条相关信息"

do while not rs.eof
%>
<a href="body.asp?id=<%=rs("id")%>"><%=RS("title")%></a> 

<%
rs.movenext
loop
End If
End If
%>

分页显示的管理列表中,执行删除或更新操作后,又回到该页面数页面

对某条信息进行处理,除传递ID号,还要传递该信息所处分页页面的页号,例如del.asp?id=<%=rs("id")%>&page_no=<%=page_no%>

在del.asp页,返回时,

page_no=request.querystring("page_no")

Response.Redirect "list.asp?page_no=" & page_no

模糊查询

Like '%" & Trim(Request("word")) & "%'
为空

isnull(RS("t7"))

RS("t7")=""

分页显示

<%
sql="select * from 活动安排 order by t11 desc"
set rs=Server.CreateObject("ADODB.Recordset")
rs.Open sql,db,1
if not rs.bof and not rs.eof then
dim page_size
dim page_no
dim page_total
page_size=50
if Request("page_no")="" then
page_no=1
else
page_no=cint(Request("page_no"))
end if
session("page_no")=page_no
rs.pagesize=page_size
page_total=rs.pagecount
rs.absolutepage=page_no
dim i,j
i=0
j=page_size %>
<%do while not rs.eof and j>0
i=i+1
j=j-1
%>

<%=rs("t5")%>
<%
rs.movenext
loop
end if
%>

[本页是第<%=page_no%>/<%=page_total%>页]
[<a href="activityarrange.asp?page_no=1">首页</a>]
<% if int(page_no)>1 then %>
[<a href="activityarrange.asp?page_no=<%=cstr(int(page_no)-1)%>">上一页</a>]
<% end if%>
<% if int(page_no)<int(page_total) then %>
[<a href="activityarrange.asp?page_no=<%=cstr(int(page_no)+1)%>">下一页</a>]
<%end if%>
[<a href="activityarrange.asp?page_no=<%=cstr(int(page_total))%>">末页</a>]

进入页面权限判断,不符合由页面报错

<%
if Session("Name")="张三" then

%>

。。。。。。

<%
else
Response.Write "出错了"
end if
%>