web论文选题系统设计方案与方法解析
(activexdataobjects)完成数据库操作,最后asp生成包含有数据查询结果的html主页返回用户端显示。由于asp在服务器端运行,运行结果以html主页形式返回用户浏览器,因而asp源程序不会泄密,增加了系统的安全保密性[2]。此外,asp是面向对象的脚本环境,用户可自行增加activex组件来扩充其功能,拓展应用范围。本系统采用windows2000server构建web服务器,默认安装了iis5.0;如上所述,以access作为后台数据库,通过ado服务器组件,建立connection对象与数据库链接,并且作了容错处理,代码如下:
dimdb,conn,connstrdb="database/lwgl.mdb"connstr="provider=microsoft.jet.oledb.4.0;datasource="%26amp;server.mappath(""%26amp;admindbpath%26amp;db%26amp;"")setconn=server.createobject("adodb.connection")'========数据库链接验证==========0thenerr.clearsetconn=nothingresponse.write"数据库连接出错!"response.endelseconn.openconnstriferrthenerr.clearsetconn=nothingresponse.write"数据库连接出错!"response.endendifendif在系统中,由该“conn”连接执行sql语句。2.2用户登录本系统采用三种用户同一界面登录的方式,根据用户选择的用户类型、输入的用户名和密码等信息进入系统。根据用户类型下拉菜单(select)提交的用户类型数据,到不同的用户数据表中提取记录进行比对,比对成功即建立三个session对象进行用户类型、用户名和密码的存储,并且转到相应页面。session对象的特点是每一个成功登录的用户所拥有的session对象都是相互独立的,从建立开始到网页被关闭或者网页过期,其值才会被清空。而用户注销也就是session对象被清空的过程。利用此特性可以检测用户身份,防止未登录用户打开治理页面或者查看到其他用户的私密信息等。各个用户基本功能如图2所示:2.3系统安全本系统采用基于用户功能项的权限治理机制。由“用户治理”功能实现用户的权限分配用户权限存储在用户表中的权限字段,字段内容为权限编号的组合,以及ip段限定来完成。①为防止sql注入编写了一个sql语句过滤程序,限于篇幅,没有将源程序列出。其原理是将影响显示的26个日文片假名和一些非法字符如*,!,%26#36;等符号替换为空,使sql语句成为规范的,安全的语句。②ip段限定。首先就是ip地址的获取问题。用到了request.servervariables("http_x_forwarded_for")对象获取真实ip,考虑到获取到的可能是代理服务器的ip,而假如客户端没有通过代理服务器来访问,那么用request.servervariables("http_x_forwarded_for")取到的值将是空的[3]。因此还用到了request.servervari论文指导