您现在的位置: 公文易 >> 免费论文 >> 计算机论文 >> 论文正文 >> 校园网站设计
归档:计算机论文 推荐度:
日期:2006-5-17 5:23:37

校园网站设计

字体大小:
校园网站设计

访问者输入E-mail地址和密码来登录,然后单击“登录”按钮。输入的数据提交后与数据库中的用户表进行匹配。
须创建一个记录来保存基于访问者登录的用户信息
set RSFindEmp = conn.Execute("select EmpID, Manager from LibEmps where " _
& "EmailAddress = '" & Request.Form("EmailAddress") & "' and " _
& "Password = '" & Request.Form("Password") & "'")
if RSFindEmp.EOF then
TheMessage = "密码或email地址不对."
else
Session("EmpID") = RSFindEmp("EmpID")
Session("Manager") = RSFindEmp("Manager")
Response.Redirect "../yk.htm"
end if
表单域EmailAddress和Password 用于Where了句中来获取一个记录。如果访问者输入了一个无效的用户名,则记录集中将不会返回匹配的记录。我们可以通过查看EOF标记来判断一个记录集是否为空。为空,则访问者将被拒绝进入该系统。不为空,则访问者的EmpID值和Manager值将从记录集中返回。写入Session 变量, 变量将在整个网站的所有网页中都是有效的。这些变量的存在与否及其取值将用于确定是否允许进入一个特定的网页,同时也用于访问者进行书目的归还和借阅操作。

图书馆菜单页面
图书馆菜单页面包含指向其他4个页面的链接:管理页面、搜索页面、图书列表页面和主页面。还有一个可显示用户所借书籍的按纽。如果访问者是图书馆管理员,则菜单界面如图所示。如果访问者不是图书馆管理员,则看到如图所示的界面。非管理员的访问者的界面上没有指向管理员菜单页面的链接。

  
  实现办法:访问者登录时在登录页面上的创建的会话变量Session 用于从数据库中获取访问者的有关信息,表示它是否是管理员。如果值为1,就表明访问者是一个管理员,则用如下代码写入一个指向管理员页面的链接:
<% If Session("Manager") = 1 then %>
<A HREF="../html/management_menu.asp">管理员菜单</A>
<% end if %>
通过按纽B1是否为空来判断要不要显示用户所借图书,利用一个记录集来获取访问者已经借出了的所有图书的列表。
if NOT isempty(Request.Form("B1")) then
set RSBooks = conn.Execute ("select BookID, Title from LibBooks where " _
& "CheckedOutTo = " & Session("EmpID"))
end if
再用循环语句将所借书以表格形式显示出来。
<table border=1 width="90%" >
<% if NOT isempty(Request.Form("B1")) then
Do Until RSBooks.EOF%>
<TR >
<TD WIDTH=40% height="20"><% Response.Write RSBooks("Title") %></td></tr>
<% RSBooks.MoveNext
loop
end if
%>
</table>
循环将遍历Rsbooks记录集中的每个记录,直到该记录集结束:
该网站中的所有ASP页面都会在访问者访问之前对其进行登录检查。这样就可以避免访问者通过输入某个页面地址然后在没有登录的情况下直接进入该页面的情况发生。此外,每个管理页面都要确认访问者是管理员。


管理菜单页面

管理菜单页面有一个HTML表单,根据选择的按钮的不同,可以进行5种不同的操作:图书的归还、图书的编辑、图书的删除、图书的添加和类别的添加。不管选择了哪一个按钮,该表单都提交人其自身进行处理。
要进行图书的归还、图书的编辑、图书的删除三种操作,须先进行搜索,找到该书后,由图书Book.asp返回一个链接:
<% If Session("Manager") = 1 then %>
<A HREF="../html/management_menu.asp?title=<% response.write RSBooks("Title") %>&BOOKID=<% response.write RSBooks("BOOKID") %>">管理员菜单</A>
<% end if %>

而管理者页面通过下列语句
<%=request.querystring("title")%>
<inputzztype=hidden name="BOOKID1"value="<%=request.querystring("BOOKID")%>>


这样就将所找到的书的书号BookID、书名Title传递管理者页面。再进行所须操作。共有3个不同的铵纽,可以进行3种操作。若单击“修改”钮:
则重定向到编辑图书页面,同时把Bookid 传递给该页面。
Response.Redirect "./edit_book.asp?BOOKID="&request("BOOKID1")
将其他的情况需要建立到数据库的连接:
set conn = server.createobject ("adodb.connection")
Conn.Open("FILEDSN=c:\Program Files\Common Files\ODBC\Data Sources\ms access database.dsn")
if NOT isempty(Request.Form("Delete")) and request("BOOKID1")<>"" then
conn.Execute "delete from LibBooks where BOOKID ="&request("BOOKID1")
end if
if (NOT isempty(Request.Form("checkin"))) and request("BOOKID1")<>"" then
conn.Execute "update LibBooks set checkedoutto= 0, status= 'Available' where BookID="&Request("BOOKID1")
end if
页面中的添加新的种类部分包含一个文本控件和一个选择控件。其中选择控件是用所有已经存在的类别列表进行填充的,包括特殊类别 Top level ,该类别表明当前类别是处于类别层次结构中的最顶层。代码如下:
先用一个记录集来填充父类别选择控件:
set RSCategories = conn.Execute("select CategoryName from LibCategories order by CategoryName")
再用下列循环语句:
<%
Do Until RSCategories.EOF
%>
<OPTION VALUE

上一页  [1] [2] [3] [4] [5] [6] 下一页




推荐文章

我得网服务大全:适时新闻 | 秘书资讯 | 专题文档 | 实用查询 | 新华字典,词典 | 成语词典 | 全唐诗 | 歇后语大全
关于我们 | 版权与隐私 | 爱心救助 | 加入会员 | 网站地图 | !报告错误 | 联系方式
公文易爱心文秘网,我得网 © 2003-2009