ASP+ACCESS多功能论坛程序设计

摘 要

随着计算机的广泛应用,人们已经对网络不再感到陌生。在科技飞速发展的今天,电脑信息技术与各行各业进行了有效的结合。人们在网上可以进行网上购物,网上交友,电子商务,网络营效等等。面对强大的网络功能,必须在某方面要有一个健全的系统才能使网络发挥的淋漓尽致。在这个平台上,论坛提供了一个全新的人类沟通新方式。

本文主要分析了论坛的主要组成情况,包括论坛的设计目标,框架结构,数据流程和论坛的主要特点等,重点介绍了论坛前台功能模块的详细思路和实现方法,以及对后台数据库关键技术和部分源代码的详细说明。

[关键词] ASP语言;VB语言;HTML语言;ACCESS数据库。

1.2 系统实用功能分析

随着时代的进步,人们对网络的要求也越来越高,论坛就是在这种背景下诞生的。它不仅包含了网站原有的特点,还可以让人们在浏览网页的情况下还可以发表自己的观点,其实这只是最基本的,它还有许多优点,下面就让我们简洁的陈述一下:

用户功能:

(1)发帖时自动记录用户名,Email,网友无需每次都输入。

(2)用户个人信息记录,密码提示功能,当用户忘记密码时,可以由密码提示功能获得密码。

(3)实现用户头像功能,您可以象QQ一样,选择自己喜欢的头像图标。

(4)查询与更改密码、个人信息,及他人信息。

(5)实现游客浏览功能,你即使不进行注册,同样可以浏览帖子内容,但要发言必须注册。缓存保存用户名和密码功能,勿需每次发言都要填写一次,为用户提供方便。

版主功能:

(1)版面显示版主主页地址(版主只需在个人信息中维护自己的信息,输入主页地址即可。

(2)版主登录之后可以进入版主管理菜单,可以管理论坛版面,管理精华区域,版主帖子查询,编辑版面说明等功能。

查询功能:我们的论坛系统具有超强帖子查询功能,可以根据您感兴趣的内容快速获得信息。您可以:

(1)按发言人、主题、内容的查询;

(2)按帖子的ID查询;

(3)查询最新 50帖;

(4)支持多条件复合模糊查询功能。

统计功能:

(1)显示论坛当前注册总人数、当前帖子总数、帖子点击总数、当前在线人数。

(2)论坛排行榜,对各个版面的点击数、文章数进行排序。

(3)用户表现积分排行,调动用户积极性。帖子点击统计,方便了解热点话题。本日版面排行榜,本日作者排行榜。

帖子功能:

(1)显示帖子发表日期,点击数,字节数,回复帖子数,新帖图形提示, 24小时内新帖一目了然。

(2)设定帖子内容最大允许的字节数。

是否允许显示前帖内容(如同回复EMAIL一样回复帖子)。回复帖子EMAIL通

知功能,自动将帖子内容和相关链接寄回被回复人的信箱中。多版面设置,每个版面可以有自己的版主、主页连接,可以独立显示单一版面。

版面功能:

(1)具有强大的分页查看工具条,帖子列表支持分页显示,轻松查看所有帖子。

(2)帖子层次列表,结构清晰,一目了然。

其他功能:

(1)全面转化 HTML TAG,方便讨论主页设计、 Web编程,同时可以有效防止使用脚本语言进行攻击。

(2)类似于FrontPage、Dreamweaver论坛内容编辑器,以方便网友使用HTML 格式显示帖子内容。此功能代码部分参考了UBB代码。UBB代码是HTML的一个变种,是Ultimate Bulletin Board (国外一个BBS程序,国内也有不少地方使用这个程序),采用的一种特殊的TAG来达到HTML的效果或实现其他的功能。

2.2论坛前台构架

毕业设计论坛是用ASP+ACCESS(后台数据库)制作而成的 ,这个论坛的前台界面大体是用一个个系统模块组装而成的。具体的示意图2—1所示:

2.3 论坛前台实现的功能

用户登陆系统:

毕业设计论坛在前台实现了用户登陆系统,当你把用户名和密码输入进去,系统会自动和数据库的用户和密码进行核对,如果一样就登陆进去,如果和原始资料对不上就提示你进入注册页面进行注册,注册成功的话会自动把你的用户名和密码输入到后台数据库里面,下次不用注册直接登陆就可以了。

论坛的登陆系统如图所示:

当你成为用户进入论坛时,他会显示你的个人资料及你的功能:修改我的资料,我发起的主题,我参与的主题,上传我的头像,我上传的文件,发送论坛短信,我的论坛权限,我的论坛收藏,我的论坛好友。

  论坛的个人信息如图所示:

在基本资料里面你可以看到你的个人资料并且可以修改,这样可以使用户对自己的资料随时随地的修改,避免了写完后不能修改的遗憾。联系资料则是提供了电子信箱,OICQ号码,ICQ号码,MSN帐户,个人主页等的联系方式,如果你要修改他,必须要先正确输入密码才可以,这样避免了有些人恶意改动别人的联系方式。修改密码则是发现自己的密码被别人知道后,处于安全的考虑提供了让用户自己改动密码的功能。

在这个论坛里,你不但可以浏览网页,还可以像QQ那样给别人留言,也可以加别人为好友。但是普通用户也有自己的权限,那样就可以区分版主和普通用户。除了这个登陆系统外,这个论坛还设计了以下几个版块:站务管理,技术交流,天方夜谭,用户网络信息 。

在这几个版面里,你不但可以对你感兴趣的帖子进行留言,而且可以发表自己的主题,等待其他网友对你帖子的评论。它的功能如图所示:

前台功能版块:

站务管理的版面如下:

技术交流如下:

天方夜谭如下:

在上面我们已经把登陆和注册这个系统已经讲清楚了,下面我们把搜索,论坛状态,论坛风格,繁体中文再简单介绍一下:  

     在搜索里面你可以找到你所要查询的帖子,只要你输入了关键字就可轻松查阅到,不用在到处乱找,减少了不必要的时间。具体操作如图所示:

在论坛状态里通过今天在线图例,主题数图例,整帖数图例,当前在线图例,当前在线情况,用户在线图例,你可以清楚的了解到论坛当前的情况。

   今天在线图例:显示了当天所有版块发帖的数量。

     主题数图例:显示了所有版块发帖的数量情况。

     整贴数图例:显示了当天的发帖数量。

   用户在线图例:显示了当前不同等级的用户的数量。

   当前在线图例:显示了当前所有版块的用户数量情况。

   当前在线情况:它提供了在线用户的计算机系统信息和他的IP地址,还有他的活动时间。

通过上面简单的描述,我们已经把这个论坛前台功能已经讲清楚了,现在我们就该叙述一下后台的数据库管理了。

4.1连接数据库源代码

<%

Response.Buffer=True

Dim Conn,DataBase,Driver,SearchNum,StartTime

SearchNum=0        '数据库查询次数,初始值

StartTime=Timer()   '运行开始时间

Sub LinkDataBase()

       DataBase=Server.MapPath("DataBase/SnowBoy.mdb")

       Driver="Provider = Microsoft.Jet.OLEDB.4.0;Data Source ="&DataBase

       Set Conn=Server.CreateObject("Adodb.Connection")

       Conn.Open Driver

       If Err then

          Err.Clear

          Set Conn=Nothing

          Response.Write"数据库连接出错,请检查连接字符串"

          Response.End

       End if

End Sub

Sub CloseConn()

    Conn.Close

       Set Conn=Nothing

End Sub

'If Not isObject(Conn) Then Call LinkDataBase()

%>

4.2主页源代码

<!-- #include file="Inc/SysConfig.asp" -->

<%

Snow.Nowstats="论坛首页"

Snow.Head()

Snow.Online()

Template.GetHtml("Index")

Response.write UserLoginDate()

Response.write BoardList()

Response.write UserOnline()

if Clng(Snow.ForumOption(7))=0 then'是否开放友情连接

   Response.write FriendLink()

End if

Response.write Replace(Template.Html(6),"{$UserSkinPath}",Template.UserSkinPath)

Snow.Footer()

Function UserLoginDate()

         dim TempStr,StrImg

         if Snow.FoundUser then

            TempStr=Template.Html(1)

                     StrImg="<img src='"&Session("UserInFo")(14)&"' Width="&Session("UserInFo")(15)&" Height="&Session("UserInFo")(16)&" border='1' οnlοad='javascript:if(this.width>90){this.width=90;this.height=90}'>"

                     TempStr=Replace(TempStr,"{$UserFace}",StrImg)

                     TempStr=Replace(TempStr,"{$MyNote}",Session("UserInFo")(20))

                     TempStr=Replace(TempStr,"{$UserName}",Snow.UserName)                

         Else

            TempStr=Template.Html(2)

         End if

               TempStr=Replace(Template.Html(0),"{$UserLoginIsTrue}",TempStr)

               TempStr=Replace(TempStr,"{$MemberCount}",Snow.MemberTotal)

               TempStr=Replace(TempStr,"{$NewUserName}",Snow.NewMember)

               TempStr=Replace(TempStr,"{$YesterdayTopic}",Snow.YesterdayTopic)

               TempStr=Replace(TempStr,"{$TodayTopic}",Snow.TodayTopic)

               TempStr=Replace(TempStr,"{$TotalTopic}",Snow.TotalTopic)

               TempStr=Replace(TempStr,"{$TotalReply}",Snow.TotalReply)

               TempStr=Replace(TempStr,"{$TopPostTopic}",Snow.TopPostTopic)

               TempStr=Replace(TempStr,"{$TopOnlineCount}",Snow.TopOnlineCount)

               UserLoginDate=TempStr

End Function

Function BoardList()

               Dim Rs,TempStr,BoardStr,i,CacheStr,GetStr,ArrStr,EndStr,ManageStr,BIStr,BSPic

                '*************************带绶存的主区数据******************************

                      Cache.Name="BoardList"

                      If Cache.ObjIsEmpty() then

                            Set Rs=Snow.Execute("Select BoardID,ParentID,BoardName,Child,Depict,BoardImg,TopicTotal,ReplyTotal,ManageName,LastTopicName,LastTopic,LastTopicTime,BoardStatus,TodayTopic,BootID From [BBsBoard] order by BootID asc,ParentID asc,BoardID asc")

                            SearchNum=SearchNum+1

                            if Rs.Bof or Rs.Eof then

                               Rs.Close:Set Rs=Nothing

                               Exit Function

                            Else   

                                   BoardStr=Rs.GetRows(-1)

                                   Rs.Close:Set Rs=Nothing

                                   Cache.Value=BoardStr

                            End if

                      End if

                      CacheStr=Cache.Value

               '#############################开始分区###############################

               ArrStr=Split(Template.Html(3),"§")

               For i=0 to Ubound(CacheStr,2)

                   EndStr=""

                      if i>0 then

                         if CacheStr(1,i)=0 or i=Ubound(CacheStr,2) then

                               EndStr=Trim(ArrStr(2))

                            End if

                      End if

                   if CacheStr(1,i)=0 then          

                            TempStr=EndStr&"<br>"&Replace(Trim(ArrStr(0)),"{$BoardName}",CacheStr(2,i))

                      Else

                         TempStr=Trim(ArrStr(1))&EndStr

                            TempStr=Replace(TempStr,"{$BoardID}",CacheStr(0,i))

                            TempStr=Replace(TempStr,"{$ChildBoardName}"," 『 "&CacheStr(2,i)&" 』 <br>")

                            TempStr=Replace(TempStr,"{$Depict}",CacheStr(4,i)&"")

                            If IsNull(CacheStr(5,i)) or CacheStr(5,i)="" then BIStr="" Else BIStr="<img src='"&CacheStr(5,i)&"'>"

                            TempStr=Replace(TempStr,"{$BoardImg}",BIStr)

                            TempStr=Replace(TempStr,"{$LastTopic}",CacheStr(10,i)&"")

                            TempStr=Replace(TempStr,"{$LastTopicName}",CacheStr(9,i)&"")

                            TempStr=Replace(TempStr,"{$LastTopicTime}",CacheStr(11,i))      

                            TempStr=Replace(TempStr,"{$ManageName}",NotNull(CacheStr(8,i),"暂无"))

                            TempStr=Replace(TempStr,"{$TodayTopic}",CacheStr(13,i))

                            TempStr=Replace(TempStr,"{$TopicTotal}",CacheStr(6,i))

                            TempStr=Replace(TempStr,"{$ReplyTotal}",CacheStr(7,i))

                            '0 正规论坛 1 锁定论坛 2 认证论坛 3 会员论坛

                           

                            Select Case Clng(CacheStr(12,i))

                                   Case 0:BSPic=TempLate.UserSkinPath&"board0.gif"

                                      Case 1:BSPic=TempLate.UserSkinPath&"board1.gif"

                                      Case 2:BSPic=TempLate.UserSkinPath&"board2.gif"

                                      Case 3:BSPic=TempLate.UserSkinPath&"board3.gif"

                            End Select

                            TempStr=Replace(TempStr,"{$BoardPic}",BSPic)

                   End if

                      GetStr=GetStr&TempStr

               Next

               BoardList=GetStr

End Function

Function UserOnline()

         dim TempStr

         TempStr=Template.Html(4)

               TempStr=Replace(TempStr,"{$OnlineUser}",Snow.OnlineCount)

               TempStr=Replace(TempStr,"{$OnlineMember}",Snow.OnlineUser)

               TempStr=Replace(TempStr,"{$OnlineGuest}",Snow.OnlineGuest)

               TempStr=Replace(TempStr,"{$GreateBBsTime}",Snow.GreateBBsTime)

               TempStr=Replace(TempStr,"{$TopOnlineUser}",Snow.TopOnlineCount)

               TempStr=Replace(TempStr,"{$TopOnlineTime}",Snow.TopOnlineTime)

               TempStr=Replace(TempStr,"{$UserIP}",Snow.UserIP)

               TempStr=Replace(TempStr,"{$UserSystem}",Snow.platform)

               TempStr=Replace(TempStr,"{$UserIE}",Snow.Browser&Snow.version)

               TempStr=Replace(TempStr,"{$BoardID}",Snow.BoardID)

               UserOnline=TempStr

End Function

Function FriendLink()

         Dim TempStr,ArrStr,i,CharFriend,PicFriend,A,B,Ca

                   Cache.Name="FriendLink"

                      If Cache.ObjIsEmpty() then

                      Set Rs=Snow.Execute("Select Top 15 FriendID,LinkType,WebName,WebDepict,LogoUrl,LinkUrl From [FriendLink] order by AddTime desc")

                          if Not(Rs.Bof And Rs.Eof) Then

                            Cache.Value=Rs.GetRows(-1)

                             Else

                               Cache.Value=Empty

                             End if

                             Rs.Close:Set Rs=Nothing

                      Else

                          ArrStr=Cache.Value

                      End if

            

                      if IsArray(ArrStr) Then

                      A=1

                      B=1

                      for i=0 to Ubound(ArrStr,2)

                          if Clng(ArrStr(1,i))=0 and A<=7 then

                                PicFriend=PicFriend&"<a href="&ArrStr(5,i)&" target='_blank' title='网站说明:&#13;"&ArrStr(3,i)&"'><img src="&ArrStr(4,i)&" width=88 height=31 Border=0></a> "

                                   A=A+1

                             End if

                             if Clng(ArrStr(1,i))=1 and B<=8 then

                                CharFriend=CharFriend&"<a href="&ArrStr(5,i)&" target='_blank' title='网站说明:&#13;"&ArrStr(3,i)&"'>"&ArrStr(2,i)&"</a> "

                                   B=B+1

                             End if                 

                      Next

                      End if

                      TempStr=Template.Html(5)

                      TempStr=Replace(TempStr,"{$PicFriend}",PicFriend)

                      TempStr=Replace(TempStr,"{$CharFriend}",CharFriend)

                      FriendLink=TempStr                                        

End Function

%>

4.3管理主页源代码

<!--#include file="Inc/Function.asp" -->

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=gb2312">

<title>毕业设计论坛</title>

<link href="Images/Style.css" rel="stylesheet" type="text/css">

</head>

<body>

<table width="158" border="0" align="center" cellpAdding="0" cellspacing="0">

  <tr>

    <td><img src="Images/title.gif" width="158" height="38"></td>

  </tr>

</table>

<table width="158" border="0" align="center" cellpAdding="0" cellspacing="0">

  <tr>

    <td height="25" background="Images/title_bg_quit.gif"><SPAN> <strong><a href="../index.asp" target="_blank">论坛首页</a></strong>

      <strong>|</strong> <strong><a href="Admin_Logout.asp" target="_parent">退出</a></strong></SPAN></td>

  </tr>

</table>

&nbsp;

<table width="158" border="0" align="center" cellpAdding="0" cellspacing="0">

  <tr>

    <td height="25" background="Images/admin_left_1.gif" onClick="showsubmenu(1)" onMouseOver="this.className='Menu_Title2'" onMouseOut="this.className='Menu_Title'" class="Menu_Title"><span>常规管理</span></td>

  </tr>

  <tr>

    <td id=submenu1><div class="Table-border-3" style="width:158px">

        <TABLE width=150 align=center cellPAdding=0 cellSpacing=0>

          <TBODY>

            <TR>

              <TD height=5></TD>

            </TR>

            <TR>

              <TD height=20><img src="Images/bullet.gif" width="6" height="6"><A

                  href="Admin_Config.asp"

                  target=main> 基本设置</A> | <A

                  href="Admin_SetCache.asp"

                  target=main>绶存管理</A></TD>

            </TR>

            <TR>

              <TD height=23><img src="Images/bullet.gif" width="6" height="6"><A

                  href="Admin_log.asp?Action=Manage"

                  target=main> 论坛日志</A> | <a href="Admin_NoteMsg.asp" target="main">短信管理</a></TD>

            </TR>

            <TR>

              <TD height=20><img src="Images/bullet.gif" width="6" height="6"> <A

                  href="Admin_Friend.asp"

                  target=main>友情管理</A>

                | <a href="Admin_Message.asp" target="main">公告管理</a></TD>

            </TR>

            <TR>

              <TD height=21><img src="Images/bullet.gif" width="6" height="6"><a href="Admin_Message.asp" target="main">

                </a> <a href="Admin_SysInfo.asp" target="main">系统信息</a></TD>

            </TR>

          <TBODY>

          </TBODY>

        </TABLE>

      </div><div style="width:158px">

        <table width="135" align="center" cellpAdding="0" cellspacing="0">

          <tr>

            <td height="20">&nbsp;</td>

          </tr>

        </table>

      </div> </td>

  </tr>

</table>

<table width="158" border="0" align="center" cellpAdding="0" cellspacing="0">

  <tr>

    <td height="25" background="Images/admin_left_2.gif" onClick="showsubmenu(2)" onMouseOver="this.className='Menu_Title2'" onMouseOut="this.className='Menu_Title'" class="Menu_Title"><span>论坛管理</span></td>

  </tr>

  <tr>

    <td id=submenu2><div class="Table-border-3" style="width:158px">

        <TABLE width=150 align=center cellPAdding=0 cellSpacing=0>

          <TBODY>

            <TR>

              <TD height=5></TD>

            </TR>

            <TR>

              <TD height=20><img src="Images/bullet.gif" width="6" height="6"><A

                  href="Admin_Board.asp?Action=Add"

                  target=main> 论坛版面添加</A> | <a href="Admin_Board.asp?Action=Manage" target="main">管理</a></TD>

            </TR>

            <TR>

              <TD height=23><img src="Images/bullet.gif" width="6" height="6"><A

                  href="Admin_BoardSetTing.asp"

                  target=main> 论坛版面用户权限设置</A></TD>

            </TR>

            <TR>

              <TD height=20><img src="Images/bullet.gif" width="6" height="6"><a href="Admin_BoardUnite.asp" target="main">

                合并版面数据</a></TD>

            </TR>

            <TR>

              <TD height=21><img src="Images/bullet.gif" width="6" height="6"><a href="Admin_Update.asp" target="main"> 重计论坛数据</a></TD>

            </TR>

          <TBODY>

          </TBODY>

        </TABLE>

      </div>

      <div style="width:158px">

        <table width="135" align="center" cellpAdding="0" cellspacing="0">

          <tr>

            <td height="20">&nbsp;</td>

          </tr>

        </table>

      </div></td>

  </tr>

</table>

<table width="158" border="0" align="center" cellpAdding="0" cellspacing="0">

  <tr>

    <td height="25" background="Images/admin_left_3.gif" onClick="showsubmenu(3)" onMouseOver="this.className='Menu_Title2'" onMouseOut="this.className='Menu_Title'" class="Menu_Title"><span>用户管理</span></td>

  </tr>

  <tr>

    <td id=submenu3><div class="Table-border-3" style="width:158px">

        <TABLE width=150 align=center cellPAdding=0 cellSpacing=0>

          <TBODY>

            <TR>

              <TD height=5></TD>

            </TR>

            <TR>

              <TD height=20><img src="Images/bullet.gif" width="6" height="6"><A

                  href="Admin_Grade.asp?Action=Add"

                  target=main> 用户等级权限设置</A></TD>

            </TR>

            <TR>

              <TD height=20><img src="Images/bullet.gif" width="6" height="6"><A

                  href="Admin_Admin.asp?Action=Add"

                  target=main> 管理员添加 </A>| <a href="Admin_admin.asp?Action=Manage" target="main">管理</a></TD>

            </TR>

            <TR>

              <TD height=21><img src="Images/bullet.gif" width="6" height="6"><A

                  href="Admin_User.asp"

                  target=main> 用户信息管理</A></TD>

            </TR>

          <TBODY>

          </TBODY>

        </TABLE>

      </div>

      <div style="width:158px">

        <table width="135" align="center" cellpAdding="0" cellspacing="0">

          <tr>

            <td height="20">&nbsp;</td>

          </tr>

        </table>

      </div></td>

  </tr>

</table>

<table width="158" border="0" align="center" cellpAdding="0" cellspacing="0">

  <tr>

    <td height="25" background="Images/admin_left_7.gif" onClick="showsubmenu(5)" onMouseOver="this.className='Menu_Title2'" onMouseOut="this.className='Menu_Title'" class="Menu_Title"><span>数据库管理</span></td>

  </tr>

  <tr>

    <td id=submenu5><div class="Table-border-3" style="width:158px">

        <TABLE width=150 align=center cellPAdding=0 cellSpacing=0>

          <TBODY>

            <TR>

              <TD height=5></TD>

            </TR>

            <TR>

              <TD height=20><img src="Images/bullet.gif" width="6" height="6"><a href="Admin_DataBase.asp?Action=compress" target="main">

                压缩数据库</a></TD>

            </TR>

            <TR>

              <TD height=23><img src="Images/bullet.gif" width="6" height="6"><a href="Admin_DataBase.asp?Action=BackUp" target="main">

                备份数据库</a></TD>

            </TR>

            <TR>

              <TD height=20><img src="Images/bullet.gif" width="6" height="6"><a href="Admin_DataBase.asp?Action=resume" target="main">

                恢复数据库</a></TD>

            </TR>

          <TBODY>

          </TBODY>

        </TABLE>

      </div>

      <div style="width:158px">

        <table width="135" align="center" cellpAdding="0" cellspacing="0">

          <tr>

            <td height="20">&nbsp;</td>

          </tr>

        </table>

      </div></td>

  </tr>

</table>

<table width="158" border="0" align="center" cellpAdding="0" cellspacing="0">

  <tr>

    <td height="25" background="Images/admin_left_5.gif" onClick="showsubmenu(6)" onMouseOver="this.className='Menu_Title2'" onMouseOut="this.className='Menu_Title'" class="Menu_Title"><span>模板管理</span></td>

  </tr>

  <tr>

    <td id=submenu6><div class="Table-border-3" style="width:158px">

        <TABLE width=150 align=center cellPAdding=0 cellSpacing=0>

          <TBODY>

            <TR>

              <TD height=5></TD>

            </TR>

            <TR>

              <TD height=20><img src="Images/bullet.gif" width="6" height="6"><a href="Admin_Template.asp?Action=Add" target="main">

                模版管理</a> | <a href="Admin_Template.asp?Action=Manage" target="main">样式管理</a></TD>

            </TR>

            <TR>

              <TD height=23><img src="Images/bullet.gif" width="6" height="6"><a href="Admin_TemplateEdit.asp" target="main">

                论坛模板导出</a> | <a href="Admin_TemplateEdit.asp?Action=load" target="main">导入</a></TD>

            </TR>

          <TBODY>

          </TBODY>

        </TABLE>

      </div>

      <div style="width:158px">

        <table width="135" align="center" cellpAdding="0" cellspacing="0">

          <tr>

            <td height="20">&nbsp;</td>

          </tr>

        </table>

      </div></td>

  </tr>

</table>

<table width="158" border="0" align="center" cellpAdding="0" cellspacing="0">

  <tr>

    <td height="25" background="Images/admin_left_8.gif" onClick="showsubmenu(7)" onMouseOver="this.className='Menu_Title2'" onMouseOut="this.className='Menu_Title'" class="Menu_Title"><span>论坛贴子管理</span></td>

  </tr>

  <tr>

    <td id=submenu7><div class="Table-border-3" style="width:158px">

        <TABLE width=150 align=center cellPAdding=0 cellSpacing=0>

          <TBODY>

            <TR>

              <TD height=5></TD>

            </TR>

            <TR>

              <TD height=20><img src="Images/bullet.gif" width="6" height="6"><a href="Admin_Topic.asp?Action=Alldel" target="main">

                批量删除</a> | <a href="Admin_Topic.asp?Action=AllMove" target="main">批量移动</a></TD>

            </TR>

            <TR>

              <TD height=23><img src="Images/bullet.gif" width="6" height="6"><a href="Admin_Recycle.asp" target="main">

                回收站管理</a></TD>

            </TR>

          <TBODY>

          </TBODY>

        </TABLE>

      </div>

      <div style="width:158px">

        <table width="135" align="center" cellpAdding="0" cellspacing="0">

          <tr>

            <td height="20">&nbsp;</td>

          </tr>

        </table>

      </div></td>

  </tr>

</table>

<table width="158" border="0" align="center" cellpAdding="0" cellspacing="0">

  <tr>

    <td height="25" background="Images/admin_left_6.gif" onClick="showsubmenu(8)" onMouseOver="this.className='Menu_Title2'" onMouseOut="this.className='Menu_Title'" class="Menu_Title"><span>上传文件管理</span></td>

  </tr>

  <tr>

    <td id=submenu8><div class="Table-border-3" style="width:158px">

        <TABLE width=150 align=center cellPAdding=0 cellSpacing=0>

          <TBODY>

            <TR>

              <TD height=5></TD>

            </TR>

            <TR>

              <TD height=20><img src="Images/bullet.gif" width="6" height="6"><A

                  href="Admin_UserUpFile.asp"

                  target=main> 上传文件管理</A></TD>

            </TR>

            <TR>

              <TD height=23><img src="Images/bullet.gif" width="6" height="6"><A

                  href="Admin_UserUpFace.asp"

                  target=main> 上传头像管理</A></TD>

            </TR>

          <TBODY>

          </TBODY>

        </TABLE>

      </div>

      <div style="width:158px">

        <table width="135" align="center" cellpAdding="0" cellspacing="0">

          <tr>

            <td height="20">&nbsp;</td>

          </tr>

        </table>

      </div></td>

  </tr>

</table>

<table width="158" border="0" align="center" cellpAdding="0" cellspacing="0">

  <tr>

    <td height="25" background="Images/admin_left_9.gif" onClick="showsubmenu(9)" onMouseOver="this.className='Menu_Title2'" onMouseOut="this.className='Menu_Title'" class="Menu_Title"><span>毕业设计论坛</span></td>

  </tr>

  <tr>

    <td id=submenu9><div class="Table-border-3" style="width:158px">

        <TABLE width=150 align=center cellPAdding=0 cellSpacing=0>

          <TBODY>

            <TR>

              <TD height=5></TD>

            </TR>

            <TR>

              <TD height="100"><p>这是我的毕业设计,</p>

                <p>欢迎批评指正!</p></TD>

            </TR>

          <TBODY>

          </TBODY>

        </TABLE>

      </div>

      <div style="width:158px">

        <table width="135" align="center" cellpAdding="0" cellspacing="0">

          <tr>

            <td height="20">&nbsp;</td>

          </tr>

        </table>

      </div></td>

  </tr>

</table>

</body>

</html>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/15641.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

通过Kafka-Logger插件收集流量进行漏洞扫描

通过Kafka-Logger插件收集流量进行漏洞扫描 方案 可以通过APISIX kafka-logger 插件将日志作为 JSON 对象推送到 Apache Kafka 集群中&#xff0c;消费Kafka里的数据格式化后添加到MySQL。 方案详情 1、登录APISIX&#xff0c;启用内置的kafka-logger 插件&#xff1a; 2…

从 0 实现一个文件搜索工具 (Java 项目)

背景 各文件系统下, 都有提供文件查找的功能, 但是一般而言搜索速度很慢 本项目仿照 everything 工具, 实现本地文件的快速搜索 实现功能 选择指定本地目录, 根据输入的信息, 进行搜索, 显示指定目录下的匹配文件信息文件夹包含中文时, 支持汉语拼音搜索 (全拼 / 首字母匹配…

DiffMap:首个利用LDM来增强高精地图构建的网络

论文标题&#xff1a; DiffMap: Enhancing Map Segmentation with Map Prior Using Diffusion Model 论文作者&#xff1a; Peijin Jia, Tuopu Wen, Ziang Luo, Mengmeng Yang, Kun Jiang, Zhiquan Lei, Xuewei Tang, Ziyuan Liu, Le Cui, Kehua Sheng, Bo Zhang, Diange Ya…

深入分析 Android Activity (四)

深入分析 Android Activity (四) 1. Activity 的生命周期详解 Activity 的生命周期方法提供了一组回调&#xff0c;使开发者能够在不同状态下执行相应的逻辑。了解这些方法有助于开发者管理资源和确保应用程序的行为一致。 1.1 onCreate onCreate 是 Activity 的入口点&…

解决go install 网络问题

rootiZbp1hiqzlhh6w05gloffgZ:~# go install mvdan.cc/garblelatest go: mvdan.cc/garblelatest: module mvdan.cc/garble: Get "https://proxy.golang.org/mvdan.cc/garble/v/list": dial tcp 172.217.160.81:443: i/o timeout解决方法 更换阿里代理 rootiZbp1hiq…

浅论未来 IT 和财务结合的趋势

前言 会计核算企业各类业务单据&#xff0c;所有业务部门的数据都会汇流到财务部来&#xff0c;所以会计其实是企业的数据中心&#xff1b;而 IT 技术正是处理数据的利器&#xff0c;可以将重复的流程自动化&#xff0c;还能将财务数据可视化&#xff1b;因此&#xff0c;两者…

docker image prune -f 命令什么用途

docker image prune -f 命令用于清理系统中未被使用的 Docker 镜像。具体来说&#xff0c;它会删除那些未被任何容器使用的悬空镜像&#xff08;dangling images&#xff09;&#xff0c;从而释放磁盘空间。 以下是 docker image prune -f 命令的具体用途和作用&#xff1a; …

SPI通信(STM32)

一、SPI通信 &#xff11;、SPI&#xff08;Serial Peripheral Interface&#xff09;是由Motorola公司开发的一种通用数据总线 &#xff12;、四根通信线&#xff1a;SCK&#xff08;Serial Clock&#xff09;、MOSI&#xff08;Master Output Slave Input&#xff09;、MIS…

【计算理论】【《计算理论导引(原书第3版)》笔记】第〇章:绪论

文章目录 [toc]第〇章&#xff1a;绪论0.1|自动机、可计算性与复杂性计算复杂性理论可计算性理论自动机理论 0.2|数学概念和术语集合关系等价关系 图简单路径连通图圈强连通图 字符串和语言字母表上的字符串空串 w w w的反转&#xff08;倒序&#xff09; x x x和 y y y的连接字…

esp32-idf 开发踩坑记录

现象 直接使用原始命令编译idf.py build 但是提示idf 版本错误 卸载旧版本 编译出错build 问题 然后删除编译文件后&#xff0c;重新编译&#xff0c;还是出错 解决方法1 最后发现是因为项目所在文件夹有中文目录&#xff0c;把项目迁移到英文目录后&#xff0c;重新编译&a…

打破传统相亲模式,这几款靠谱的相亲软件助你脱单

相亲软件在当今社会已经变得越来越普遍&#xff0c;市面上有众多相亲软件可供选择&#xff0c;但哪些相亲软件好用呢&#xff1f;下面介绍几款备受好评的相亲软件&#xff0c;帮助你在茫茫人海中找到那个对的人&#xff01; 1、一伴婚恋 这个APP它最大的优点就是信息真实靠谱…

LIMS系统在汽车检测实验室的应用

随着汽车行业的快速发展&#xff0c;汽车检测实验室的工作量不断增加&#xff0c;对实验室的管理效率和数据准确性提出了更高的要求。建设LIMS系统旨在实现实验室的全面数字化管理&#xff0c;提高工作效率&#xff0c;降低运营成本&#xff0c;并提升数据质量与决策支持能力。…

找出可整除性得分最大的整数 - (LeetCode)

概述 昨天非常忙&#xff0c;上午去做体检&#xff0c;下午去拿报告&#xff0c;晚上和老刘吃撸了一个串&#xff0c;深入交流生活的不易&#xff0c;岁月变化的快&#xff0c;话回算法题&#xff0c;今天的题目比较容易&#xff0c;花了一会就能写出来。 今天这题是&#xf…

Filter和Interceptor

会话 cookie 服务器自动将cookie响应给浏览器 浏览器接收响应回来的数据 自动将cookie存储在本地&#xff0c; 后续请求当中浏览器将cookie携带到服务器 cookie不能跨域&#xff0c;存储在客户端 session 存储在服务器 token------>JWT 存储在客户端&#xff0c; 服务…

[leetcode]第 n个丑数

我们把只包含质因子 2、3 和 5 的数称作丑数&#xff08;Ugly Number&#xff09;。求按从小到大的顺序的第 n 个丑数。 示例: 输入: n 10 输出: 12 解释: 1, 2, 3, 4, 5, 6, 8, 9, 10, 12 是前 10 个丑数。 1 2 3 说明: 1 是丑数。 n 不超过1690。 class Solution {public…

【C++ QT项目实战-03】---- C++ QT系统实现读取JSON文件数据的自动化模式

&#x1f3a9; 欢迎来到技术探索的奇幻世界&#x1f468;‍&#x1f4bb; &#x1f4dc; 个人主页&#xff1a;一伦明悦-CSDN博客 ✍&#x1f3fb; 作者简介&#xff1a;C软件开发、Python机器学习爱好者 &#x1f5e3;️ 互动与支持&#xff1a;&#x1f4ac;评论 &#…

分布式系统

分布式系统是建立在网络之上的软件系统,其主要特点是具有高度的内聚性和透明性。在一个分布式系统中,一组独立的计算机展现给用户的是一个统一的整体。这些系统拥有多种通用的物理和逻辑资源,可以动态地分配任务,分散的物理和逻辑资源通过计算机网络实现信息交换。 分布式…

Flink 窗口

窗口&#xff08;Window&#xff09; 窗口是处理无限流的核心。 窗口将流分割成有限大小的“桶”&#xff0c;我们可以计算窗口中的数据。 窗口程序一般有键控流&#xff08;keyed streams&#xff09;的窗口程序 和 非键控流&#xff08;non-keyed streams&#xff09;的窗口…

Rabbitmq 搭建使用案例 [附源码]

Rabbitmq 搭建使用案例 文章目录 RabbitMQ搭建docker 代码golang生产者消费者 可视化消费进度 RabbitMQ搭建 docker docker run -d --hostname rabbitmq --name rabbitmq -e RABBITMQ_DEFAULT_USERadmin -e RABBITMQ_DEFAULT_PASSadmin -e RABBITMQ_DEFAULT_VHOSTmy_vhost -e…

LeetCode/NowCoder-复杂度OJ练习

无论你觉得自己多么的不幸&#xff0c;永远有人比你更加不幸。&#x1f493;&#x1f493;&#x1f493; 目录 说在前面 题目一&#xff1a;消失的数字 题目二&#xff1a;轮转数组 SUMUP结尾 说在前面 dear朋友们大家好&#xff01;&#x1f496;&#x1f496;&#x1f496…