您所在的位置: 首页>>读书频道>>设计开发>>数据库开发>>

2.15 系统设置主要功能模块详细设计

http://book.51cto.com  2008-05-06 09:10  明日科技/盖天宇/孙明丽/天恩编著  人民邮电出版社  我要评论(0)

2.15  系统设置主要功能模块详细设计

系统设置页面主要是对操作员的信息进行添加、修改、删除的操作。主要包括添加操作员、更改操作员密码、删除操作员3部分。


删除操作员设计

用户可以通过单击菜单主导航“系统设置”→“删除操作员”超级链接,进入删除操作员页面,用户单击“删除操作员”图片链接进行操作员的删除操作。

删除操作员页面的设计效果如图2.35所示。

  
图2.35  删除操作员页面的设计效果

首先判断当前用户是否具备删除操作员的权限,完整代码如下:

 <!--********************************xtsz/delczy.asp
************************************-->
<!--#include file="../conn/conn.asp"-->
<%
set rs=server.createobject("adodb.recordset")
sql="select * from userlist where name='"&session("name")&"' and quan='a'"
rs.open sql,conn,1,3
if rs.eof then%>
<script language="javascript">
alert("对不起!您没有这个权限")       '弹出提示对话框
history.back(1)       '返回上一级页面
</script>
<%response.end()
end if
rs.close()            '关闭数据集
set rs=nothing        '将数据集在系统内存中清除
%>

A注意
在使用完数据库对象后,一定要记住把对象关闭并清除。

其次通过查询语句检索userlist数据表中的全部数据,并按照权限进行排序,检索数据库表中是否有该操作员的信息,如果没有检索到,则弹出相应的提示信息,代码如下:

<!--********************************xtsz/delczy.asp
************************************-->
<%
  set rs=server.createobject("adodb.recordset")
sql="select * from userlist order by quan"       '查询数据
rs.open sql,conn,1,3
if rs.eof then%>
<script language="javascript">
alert("暂无操作员信息!");
parent.location.href="login.asp";      '跳转到指定页面
</script>
<%response.End()
else%>
<% for i=1 to rs.recordcount%>
<tr bgcolor="#CCE3FF">
<td align="center"><%=rs("name")%></td>
<%
if rs("quan")="a" then quan="系统管理员"
if rs("quan")="c" then quan="普通管理员"
%>
<td align="center"><%=quan%></td>
        <td align="center"><a href="delczy_deal.asp?id=<%=rs
("id")%>"><img src="../images/del.gif"
width="22" height="22" border="0"></a></td>
</tr>
<%rs.movenext
next%>
<%end if%>

B代码导读
createobject:在ASP程序中,如果需要进行数据库访问或者磁盘文件的操作,仅靠脚本语言是无法实现的。“ActiveX”提供了一系列的对象模型来实现数据库连接、文件访问、广告显示和VBScript不能提供或不能简单地依靠单独使用“ActiveX”所能完成的功能。使用“createobject”方法来创建服务器组件的对象模型,其语法格式如下。


server. createobject("对象模型名称")


server.createobject是通过MTS(Microsoft Transaction Server)创建并管理对象,当对象发生错误时server.createobject不但返回一个错误而且还将错误信息记录在日志中,具有较好的安全性。


 img:为图片添加超级链接时,要注意图片的边框;有超级链接的图片,其默认的边框大小为1;如果不需要图片有边框,可设置图片标识符<img>的“border”属性为“0”。

从上面的代码中可以看出,首先利用for循环语句来判断变量quan的值,来确定当前操作员的管理权限。如果变量quan的值为a,那么权限为系统管理员;如果变量quan的值为c,那么权限为普通管理员。


为了方便用户从操作员列表中删除指定的操作员信息,在每一条记录后都添加了一个删除操作员信息的图片按钮,使用如下代码来为删除操作员图片添加超级链接。

<!--*******************************xtsz/delczy.asp
*************************************-->
<a href="delczy_deal.asp?id=<%=rs("id")%>"><img src="..
/images/del.gif" width="22" height="22" border="0"></a>
操作员信息删除主要是根据传递的参数(本例是操作员信息的ID号,参数名称为ID),将数据库中对应的数据删除,其程序代码如下:
<!--****************************xtsz/delczy_deal.asp
************************************-->
<!--#include file="../conn/conn.asp"-->
<% qID=request.QueryString("id")
if qID<>"" then
response.Write("<script language='javascript'>if(!confirm
('真的要删除该操作员吗?')){window.location.href
='delczy.asp';}</script>")     '
弹出提示对话框,单击“确定”按钮则执行程序,单击“取
消”按钮则不执行
on error resume next
sql="delete from userlist where id='"&qID&"'"   '删除指定记录
conn.execute(sql)
if err<>0 then
response.Write("<script language='javascript'>alert('
操作员信息删除失败!');window.location.href
='delczy.asp';</script>")
else
response.Write("<script language='javascript'>alert('
操作员信息删除成功!');window.location.href
='delczy.asp';</script>")
end if
else
response.Write("<script language='javascript'>window.
location.href='delczy.asp';</script>")
end if%>
删除操作员页面的运行结果如图2.36所示
  
图2.36  删除操作员页面的运行结果

【责任编辑:夏书 TEL:(010)68476606】

回书目   上一节   
深入Vista应用程序开发
让你的代码“炫”起来——WPF开发教程
初探敏捷开发
WCF开发基础
Sun以10亿美元并购开源数据库厂商MySQL
 
 验证码: (点击刷新验证码)   匿名发表
  • Visual C++ 完全自学宝典

  • 作者:强锋科技,朱洪波
  • Visual C++ 6.0是微软公司为程序人员提供的Visual Studio 6.0工具套件中的重要组成部分。本书由浅入深地介绍使用Visual C++ 6.0..
Copyright©2005-2008 51CTO.COM 版权所有