跟我学做留言本(三)

80酷酷网    80kuku.com

  上二篇里,我们已经把留言本的功能、数据库、文件、CSS等都设计好
了,现在我们要来完成代码部份。
一、包含函数库
<!--#include file="operation$db.asp" -->

在文件第一行加上包含语句
二、根据action 参数来判断
<%
action=request("action")
select case action
case "logout"
logout '退出登录子程序
case "login"
login '登录子程序
case "replay"
replay '回贴子程序
case "delete" '表示删除贴子
if session("lybmanage")="" then '如果还没有登录,
response.redirect "index.asp?action=manage" '就显示登录界面
else
delete '否则,去删除贴子
end if
case "addrec" '增加新贴子
addrec() '加入新贴
response.redirect "index.asp" '然后转到初始页
case "modify" '表示修改留言本信息
if session("lybmanage")="" then '如果还没有登录,
response.redirect "index.asp?action=manage" '就显示登录界面
else
modify '否则,修改信息
response.redirect "index.asp" '然后,回初始页面
end if
end select
%>


三、根据上面的action,要有以下几个子程序
<%
'退出登录子程序
sub logout()
'删除session变量lybmanage
session.contents.remove "lybmanage"
'转到初始页面
response.redirect "index.asp"
end sub

'登录子程序
sub login()
'取得登录参数
user=request.form("user")
pwd=request.form("pwd")
if user<>"" and pwd<>"" then '参数都不为空时才检查
opendb my '打开数据库连接
'定义SQL查询,寻找用户名相等的记录
sql="select * from admin where admin_user='"&user&"'"
'查询表用于读
searchtable my,sql,rs
if not rs.eof then '如果有这样的用户
if pwd=rs("admin_pass") then '判断密码是否相等
session("lybmanage")=user '相等,就记录到session变量里
end if
end if
end if
response.redirect "index.asp" '不管登录与否,都回到初始页面
end sub

'修改留言本信息子程序
sub modify()
'取得密码
pwd=request.form("pwd")
if pwd="" then exit sub '没有密码不修改
newpwd=request.form("newpwd")'取得新密码
opendb my '打开数据库连接
'定义SQL查询语句
sql="select * from admin where admin_user='"&session("lybmanage")&"'"
'打开表用于读
changetable my,sql,rs
if not rs.eof then
'下面修改信息
if pwd=rs("admin_pass") then
if newpwd<>"" then
rs("admin_pass")=newpwd
end if
rs("admin_nick")=request.form("nick")
rs("admin_name")=request.form("name")
rs("admin_homepage")=request.form("homepage")
rs("admin_perpage")=request.form("perpage")
rs.update
end if
end if
'关闭表和数据库连接
closetable rs
closedb my
'完成后转到初始页面
response.redirect "index.asp"
end sub

'回复子程序
sub replay()
'如果没有登录,直接退出
if session("lybmanage")="" then exit sub
'取得表单内容
rep=pro(request.form("rep"))
id=request.form("id")
'打开数据库连接
opendb my
'定义SQL查询
sql="select * from main where user_id =" & id
'打开表用于写
changetable my,sql,rs
'写入
rs("user_replay")=true
rs("user_rep")=rep
rs("user_reptime")=now()
rs.update
'关闭表和数据库连接
closetable rs
closedb my
'转到初始页
response.redirect "index.asp"
end sub


'删除贴子程序
sub delete()
'如果没登录,直接退出
if session("lybmanage")="" then exit sub
'取得删除的贴子的ID
id=request("id")
'打开数据库连接
opendb my
'定义SQL查询
sql="select * from main where user_id =" & id
'打开表用于写
changetable my,sql,rs
'删除贴
rs.delete
rs.update
'关闭表和数据库连接
closetable rs
closedb my
'转到初始页面
response.redirect "index.asp"
end sub

'加新贴子程序
sub addrec()
'打开数据库连接
opendb my
'定义SQL查询
sql="select * from main where user_id is null"
'打开
changetable my,sql,rs
'加入新记录
rs.addnew
rs("user_ip")=request.servervariables("remote_addr")
rs("user_name")=request.form("name")
rs("user_email")=request.form("email")
rs("user_oicq")=request.form("oicq")
rs(&qu

分享到
  • 微信分享
  • 新浪微博
  • QQ好友
  • QQ空间
点击: