电子商务平台建设
DESCRIPTION
电子商务平台建设. 任务六 网站后台系统管理操作页设计. 一、站点信息配置页 Sys_Config.asp. 作用:修改站点基本信息 作为通用网站 , 网站名称、标题、关键字、备案号等信息必须通过数据库保存,然后通过读取数据库记录信息再显示,这样一般用户可以使用时对站点的配置就比较方便,不需要修改网页。 作为为企业专门设计的网页,则相关信息直接写入网页,这样减少数据库的读写,提高网站的访问速度。因此,将一个通用网站改为企业具体的网站时,有些信息可以直接写到网页中(当然也可以不改). 子任务一 网站配置信息修改. - PowerPoint PPT PresentationTRANSCRIPT
电子商务平台建设
任务六 网站后台系统管理操作页设计
一、站点信息配置页 Sys_Config.asp
• 作用:修改站点基本信息• 作为通用网站 , 网站名称、标题、关键字、备案号
等信息必须通过数据库保存,然后通过读取数据库记录信息再显示,这样一般用户可以使用时对站点的配置就比较方便,不需要修改网页。
• 作为为企业专门设计的网页,则相关信息直接写入网页,这样减少数据库的读写,提高网站的访问速度。因此,将一个通用网站改为企业具体的网站时,有些信息可以直接写到网页中(当然也可以不改)
子任务一 网站配置信息修改
• 1. 进入示例网站后台,点击“站点信息配置”,运行Sys_Config.asp
• 2. 进入自己的网站后台,点击“站点信息配置”,运行Sys_Config.asp
• 3. 根据示例网站配置信息配置自己的网站,注意老师的信息改成自己的信息。
Sys_Config.asp 原理• 网站基本信息存放在数据库中的 Ok3w_SiteConfig 表中;• 网站运行时,站点信息从数据库中读入,存储在 Application
中(见 Conn.asp )• Sys_Config.asp 首先通过表单显示记录中的信息,供管理员
修改;• 管理员修改后,将数据发送回网页;• 网页接收数据后,根据 action 项的值,若是“ edit” 则将表
单的信息重新写回到数据库中。修改配置信息的程序SiteConfig.Edit() 在 Ok3w_SiteConfig.asp (基本配置类页)页中。
• 相关知识:– 表单项中可设置初始值,例:<input name=“SiteName” type=“text” value=“值” size="50" />
值可以是一个具体的数值,也可以是 ASP 程序。示例页中 <input name=“SiteName” type=“text” value=“<
%=Application(SiteID & "_Ok3w_SiteName")%> " size="50" />
<%=Application(SiteID & “_Ok3w_SiteName”)%> 为显示Application 中存储的信息
二、管理员管理页( Sys_admin.asp )• 作用:
– 增加站点管理员– 修改管理员密码及权限– 锁定与解锁管理员– 删除管理员
• 说明:– 一个网站根据功能,通常会设置若干个管理员,各管理员设置
不同的权限,其中一个管理员(超级管理员)则具有所有权限。– 管理员信息存储在数据库 Ok3w_Admin 表中,包括管理员用
户名、密码及权限 (Groupid) 、锁定标记( Adminlock )。
– 当管理员的 Adminlock 值为 0 则允许登陆,为 -1 则为锁定,不允许登陆(判断在 ad_login.asp 页,调用clsAdmin_Info.asp 页中的 Admin_Info 类的Admin.AdminLogin 函数)。
– ad_login.asp 中若用户被锁定则继续显示 ad_login.asp 页,否则跳转到 ad_index.html
子任务二:用户的操作
• 1. 增加一管理员,用户名” new”, 密码为” 123456”, 权限只有”新闻编辑”功能,允许登录。
• 2. 退出系统,重新以管理员 new 登陆,查看后台功能。• 3. 退出系统,以超级管理员身份登陆,将管理员 new 设
置为锁定是,再用管理员 new 登陆,看结果。• 4. 以超级管理员身份登陆,修改管理员 new 的密码,并
设置设置锁定为否,重新验证管理员 new 登陆。• 5. 以超级管理员身份登陆,删除管理员 new 。
程序说明
• <!--#include file=“chk.asp”--> 插入 chk.asp ,进行登陆验证;
• Call CheckAdminFlag(1) ,调用 chk.asp 中的 CheckAdminFlag 验证用户权限,无权限则显示 ad_right.asp 页,否则继续。
• 网页显示增加表单及各管理员表单• 若管理员在添加表单输入信息后按添加按钮,则表单除返回项数据外,还
返回隐藏项 action 为“ add” ,网页调用 Add() 程序将表单信息存入管理员表 Ok3w_Admin 。
• 若管理员按某管理员表单中的“修改”按钮,则 action 为“ edit” ,调用 Edit() 程序,将表单信息写回原记录中
• 若管理员按某管理员表单中的“删除”按钮,则运行 javascript 语句:– onClick=“javascript:if(!confirm(‘真的要删除吗?’ )) return false;formsubmit(this.form,‘del’);“
• 若管理员选“是”,则表单返回 action 为“ del”, 调用 del() 程序删除记录。
判断主程序• Select Case Trim(Request.Form("action"))• Case "add"• Call Add()• Call SaveAdminLog(" 添加管理员: " & AdminName)• Call CloseConn()• Call ActionOk("Sys_admin.asp")• Case "edit"• Call Edit()• Call SaveAdminLog(" 修改管理员 (ID=" & AdminId &
") 为: " & AdminName)• Call CloseConn()• Call ActionOk("Sys_admin.asp")• Case "del"• Call Del()• Call SaveAdminLog(" 删除管理员 (ID=" & AdminId &
")")• Call CloseConn()• Call ActionOk("Sys_admin.asp")• End Select
读取表单程序
• Private Sub GetFormData()• AdminId = Trim(Request.Form("AdminId"))• AdminName =
Trim(Request.Form("AdminName"))• AdminPwd = Trim(Request.Form("AdminPwd"))• GroupId = "," & Replace(Request.Form("GroupId")," ","") &
","
• AdminLock = Trim(Request.Form("AdminLock"))• End Sub
将数据写入数据库
• Private Sub UpdateRs(ByRef Rs,action)• Rs("AdminName") = AdminName• If action="edit" And AdminPwd="" Then• Else• Rs("AdminPwd") = MD5(AdminPwd)• End If• Rs("GroupId") = GroupId• Rs("AdminLock") = AdminLock• End Sub
管理员增加子程序 Add()
• Private Sub Add()• Call GetFormData() //读取表单数据• Sql = "select count(*) from Ok3w_Admin where
AdminName='" & AdminName & "'"• If Conn.Execute(Sql)(0)<>0 Then //直接运行查询• Call CloseConn()• Session("ErrMsg") = " 相同的管理员已经存在,请
不要重复添加。 "• Call ActionOk("Sys_admin.asp")• End If• sql = "select * from Ok3w_Admin where 1=2"• Rs.open sql,conn,1,3• Rs.addnew• Call UpdateRs(Rs,"add")• Rs.update• Rs.close• End Sub
管理员修改子程序 Edit()• Private Sub Edit()• Call GetFormData() // 读表单数据• sql="select count(*) from Ok3w_Admin where
AdminName='" & AdminName & "' and AdminId<>" & AdminId
• If Conn.Execute(sql)(0)<>0 Then• Call CloseConn()• Session("ErrMsg") = " 相同的管理员已经存在,该
修改无效。 "• Call ActionOk("Sys_admin.asp")• End If• sql = "select * from Ok3w_Admin where AdminId=" &
AdminId• Rs.Open Sql,Conn,1,3• Call UpdateRs(Rs,"edit")• Rs.Update• Rs.Close• End Sub
管理员删除子程序 Del()
• Private Sub Del()• Call GetFormData() // 读表单数据• sql = "delete from Ok3w_Admin where
AdminId=" & AdminId• Conn.Execute sql• End Sub
相关知识• 常规的数据库操作通过记录集的如下操作进行:
– 记录增加( addnew )– 记录修改( update )– 记录指针后移( movenext )– 记录指针前移( MovePrevious )– 记录指针移到第一记录( MoveFirst ) – 记录指针移到最后一记录( MoveLast )– 记录删除( delete )
• 数据库操作也可通过数据连接对象执行标准的 SQL 语句实现:– Conn.Execute(Sql)Execute 可执行的 SQL 包括 select( 查询 )、 inserte( 插入 )、
delete( 删除 )、 update( 修改 )等。
三、友情链接管理 Sys_link.asp
• 作用:– 添加网站友情链接信息– 修改友情链接信息– 删除友情链接信息
• 说明:– 一般网站均有友情链接区,用以链接相关网站,属于网络营销的一种手段。
– 友情链接信息存储在表 Ok3w_Link 表中,包括链接名( Lname )、链接图像地址( Lpic )、链接网页地址( Lurl )、链接类型( Ltype )等字段。
– 链接分为文字链接( Ltype =0 )和图像链接( Ltype =1 )
子任务三 设置网站友情链接• 添加嘉兴职业技术学院的图片链接:
– 图片地址: http://www.jxveg.org/upfiles/jxvtc.gif– 链接地址: http://www.jxvtc.net
• 添加中国太阳能网的图片链接:– 图片地址: http://kc.jxvtc.net/dspt/demo/images/zgtyn.jpg
– 链接地址: http://www.etaiyang.com• 添加嘉兴经济贸易委员会网图片链接:
– 图片地址: http://kc.jxvtc.net/dspt/demo/images/jxjm. jpg
– 链接地址: http://www.jxet.gov.cn• 添加嘉兴中小企业服务网图片链接:
– 图片地址: http://www.jxet.gov.cn/images/qxwd/jxsme.jpg
– 链接地址: http://www.jxsme.com.cn• 添加嘉兴网交会图片链接:
– 图片地址: http://www.jxet.gov.cn/images/qxwd/314000.jpg– 链接地址: http://www.314000.com
从表单中取数据存入内存变量
• Private Sub GetFormData()• Lid = Trim(Request.Form("Lid"))• Lname = Trim(Request.Form("Lname"))• Lpic = Trim(Request.Form("Lpic"))• Lurl = Trim(Request.Form("Lurl"))• Lnote = Trim(Request.Form("Lnote"))• Lorder = Trim(Request.Form("Lorder"))• Ltype = Trim(Request.Form("Ltype"))• If Ltype="" Then Ltype = 0• Ctype = Trim(Request.Form("Ctype"))• If Ctype="" Then Ltype = 1• End Sub
UpdateRs 将链接内存变量存入记录
• Private Sub UpdateRs(ByRef clsRs)• 'clsRs("Lid") = Lid• clsRs("Lname") = Lname• clsRs("Lpic") = Lpic• clsRs("Lurl") = Lurl• clsRs("Lnote") = Lnote• clsRs("Lorder") = Lorder• clsRs("Ltype") = Ltype• clsRs("Ctype") = Ctype• End Sub
从记录中取出链接信息存储内存变量
• Public Sub GetRs(ByRef clsRs)• Lid = clsRs("Lid")• Lname = clsRs("Lname")• Lpic = clsRs("Lpic")• Lurl = clsRs("Lurl")• Lnote = clsRs("Lnote")• Lorder = clsRs("Lorder")• Ltype = clsRs("Ltype")• Ctype = clsRs("Ctype")• End Sub
链接信息增加子程序
• Public Sub Add()• Call GetFormData()• Set clsRs = Server.CreateObject("Adodb.RecordSet")
• Sql = "select * from Ok3w_Link where 1=2"• clsRs.Open Sql,Conn,1,3• clsRs.AddNew()• Call UpdateRs(clsRs)• clsRs.Update()• clsRs.Close()• Set clsRs = Nothing• End Sub
链接信息修改子程序
• Public Sub Edit()• Call GetFormData()• Set clsRs = Server.CreateObject("Adodb.RecordSet")
• Sql = "select * from Ok3w_Link where Lid=" & Lid
• clsRs.Open Sql,Conn,1,3• Call UpdateRs(clsRs)• clsRs.Update• clsRs.Close• Set clsRs = Nothing• End Sub
链接信息删除子程序
• Public Sub Del()• Call GetFormData()• sql = "delete from Ok3w_Link where Lid=" &
Lid
• Conn.Execute sql• End Sub
四、后台日志 ad_weblog.asp 页
• 作用:– 查看管理员登陆及操作情况– 删除管理员操作日志
• 说明:– 管理员操作日志存储在 Ok3w_Adlog 表中,包括管理员帐户名
( logUser )、登陆 IP地址( logIp )、登陆时间( LogTime )、操作内容( LogInfo )、操作类型( LogType , 0 为新闻频道, 1 为软件频道)
代码说明
• action = Trim(Request.Form("action"))• Select Case action• Case "del"• Call Del()• Case "clear"• Call clearLog()• End Select
• Private Sub Del()• logId = Trim(Request.Form("logId"))• If logId<>"" Then• sql="delete from Ok3w_Adlog where
logId in(" & logId & ")"• Conn.Execute sql• Call SaveAdminLog(" 删除后台日志, ID=" & logId)
• Call ActionOk("ad_weblog.asp")• End If• End Sub
• Private Sub clearLog()• Sql = "delete from Ok3w_Adlog where
DateDiff('d',LogTime,Date())>=7"• Conn.Execute Sql• Call SaveAdminLog("清空后台日志 ")• Call ActionOk("ad_weblog.asp")• End Sub