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>

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

@Async详解,为什么生产环境不推荐直接使用@Async?

一、Async 注解介绍&#xff1a; Async 注解用于声明一个方法是异步的。当在方法上加上这个注解时&#xff0c;Spring 将会在一个新的线程中执行该方法&#xff0c;而不会阻塞原始线程。这对于需要进行一些异步操作的场景非常有用&#xff0c;比如在后台执行一些耗时的任务而不…

Vue3实战笔记(45)—VUE3封装一些echarts常用的组件,附源码

文章目录 前言一、柱状图框选二、折线图堆叠总结 前言 日前使用hooks的方式封装组件&#xff0c;在我使用复杂的图标时候遇到了些问题&#xff0c;预想在onMounted中初始化echarts&#xff0c;在使用hooks的时候&#xff0c;组件没有渲染完&#xff0c;使用实例会出现各种各样…

ArcGIS中分割与按属性分割的区别

1、分割ArcGIS批量导出各个市的县级行政边界 视频教学&#xff1a; ArcGIS批量导出各个市的县级行政边界002 2、ArcGIS批量导出全国各省的边界 视频教学&#xff1a; ArcGIS导出全国各省的边界003 推荐学习&#xff1a; ArcGIS全系列实战视频教程——9个单一课程组合系列直播回…

文章解读与仿真程序复现思路——电力系统保护与控制EI\CSCD\北大核心《计及温控厌氧发酵和阶梯碳交易的农村综合能源低碳经济调度》

本专栏栏目提供文章与程序复现思路&#xff0c;具体已有的论文与论文源程序可翻阅本博主免费的专栏栏目《论文与完整程序》 论文与完整源程序_电网论文源程序的博客-CSDN博客https://blog.csdn.net/liang674027206/category_12531414.html 电网论文源程序-CSDN博客电网论文源…

Vite + Vue3 部署 GitHub

因为静态资源是可以部署到 GitHub 上&#xff0c;自己顺便学习部署网站 因为我使用的是 Vite 工具&#xff0c;官方有提供相应 Demo 部署静态站点 | Vite 官方中文文档 新建文件夹 .github 然后再建一个文件夹 workflows 新建文件 main.yml 文件 直接使用官方文档 demo #…

ps进程查看命令详解

1、PS 命令是什么 查看它的man手册可以看到&#xff0c;ps命令能够给出当前系统中进程的快照。它能捕获系统在某一事件的进程状态。如果你想不断更新查看的这个状态&#xff0c;可以使用top命令。 2、ps命令支持三种使用的语法格式 UNIX 风格&#xff0c;选项可以组合在一起…

「云渲染课堂」3dmax地砖材质参数怎么让画面更加真实?

在3DMAX中&#xff0c;地砖材质的渲染需要细致的调整&#xff0c;因为不同材质的地砖在反射和折射参数上各不相同。为了使地砖材质更加逼真&#xff0c;以下简要说明了一些设置方法&#xff0c;希望对大家有所帮助&#xff01; 3dmax地砖材质参数如何设置 1、打开材质编辑器&a…

Git提交和配置命令

一、提交代码到仓库 在软件开发中&#xff0c;版本控制是一个至关重要的环节。而Git作为目前最流行的版本控制系统之一&#xff0c;为我们提供了便捷高效的代码管理和协作工具。在日常开发中&#xff0c;我们经常需要将本地代码提交到远程仓库&#xff0c;以便于团队协作和版本…

C++ | Leetcode C++题解之第112题路径总和

题目&#xff1a; 题解&#xff1a; class Solution { public:bool hasPathSum(TreeNode *root, int sum) {if (root nullptr) {return false;}if (root->left nullptr && root->right nullptr) {return sum root->val;}return hasPathSum(root->left…

电磁仿真--CST网格介绍

1. 简介 网格会影响仿真的准确性和速度&#xff0c;花时间理解网格化过程是很重要的。 CST 中可用的数值方法包括FIT、TLM、FEM、MoM&#xff0c;使用不同类型的网格&#xff1a; FIT和TLM&#xff1a;六面体 FEM&#xff1a;四面体、平面 MoM&#xff1a;表面 CFD&#…

SAP揭秘者-怎么执行生产订单ATP检查及其注意点

文章摘要&#xff1a; 上篇文章给大家介绍生产订单ATP检查的相关后台配置&#xff0c;大家可以按照配置步骤去进行配置&#xff0c;配置完之后&#xff0c;我们接下来就是要执行ATP检查。本篇文章具体给大家介绍怎么来执行生产 订单ATP检查及其注意点。 执行生产订单ATP检查的…

618快到了,送大家一款自动化脚本工具,一起薅羊毛

前言 一年一次的618活动来了&#xff0c;大家做好准备了&#xff0c;奇谈君为大家准备好用的618神器&#xff0c;解放双手&#xff0c;简单操作就可以把红包拿到手。 京淘自动助手 首次使用前需要进行设置 将手机的无障碍权限和悬浮窗权限打开 设置完成后&#xff0c;可以把…

自定义一个复杂的React Table表格组件-06

前面基本了解了组件的基本用法&#xff0c;在本节会实现一个更高级的例子。另外需要注意本节代码是采用V15版本的createClass()、React.DOM和JSX实现的&#xff0c;有时间的同学可以改成类实现的方式。 html的世界中最复杂的UI控制就是表格了&#xff0c;原因是table它依赖本地…

Java进阶学习笔记18——接口的注意事项

接口的多继承&#xff1a; 一个接口可以同时继承多个接口。 package cn.ensource.d11_interface_attention;public class Test {public static void main(String[] args) {// 目标&#xff1a;理解接口的多继承} }// 接口是多继承的 interface A{void test1(); } interface B{…

【排序算法】——归并排序(递归与非递归)含动图

制作不易&#xff0c;三连支持一下吧&#xff01;&#xff01;&#xff01; 文章目录 前言一.归并排序递归方法实现二.归并排序非递归方法实现 前言 这篇博客我们将介绍归并排序的原理和实现过程。 一、归并排序递归方法实现 基本思想&#xff1a; 归并排序&#xff08;MERGE-…

Tina-Linux -- 3. LVGL测试

参考韦东山 – Tina_Linux_图形系统_开发指南 Tina-linux lvgl 配置 环境配置 进入Tina-SDK根目录 source build/envsetup.sh lunch XXX平台名称 make menuconfigLVGL Gui --->Littlevgl --->< > lv_demo<*> lv_examples &#xff08;lvgl官方demo&#…

LabVIEW虚拟测试实验室开发

LabVIEW虚拟测试实验室开发 在当代的科技和工业进步中&#xff0c;测试与测量扮演着至关重要的角色。随着技术的发展&#xff0c;测试系统也变得日益复杂和成本昂贵&#xff0c;同时对测试结果的准确性和测试过程的效率要求越来越高。开发了一种基于LabVIEW的虚拟测试实验室的…

操作符详解(上)(新手向)

操作符详解&#xff08;上&#xff09; 一&#xff0c;算术操作符&#xff08;双目操作符&#xff09;1:‘’,‘-’,‘*’2&#xff1a;‘/’&#xff0c;‘%’ 一&#xff0c;单目操作符1:‘’,‘-’2&#xff1a;‘!’3&#xff1a;‘&’4&#xff1a;‘*’5&#xff1a;…

02:PostgreSQL用户和权限

环境&#xff1a; 操作系统&#xff1a;CentOS 7.9 64bitPostgreSQL 版本&#xff1a;16.x 或 15.x安装用户&#xff1a;postgres软件安装目标路径&#xff1a;/usr/pgsql-<version>数据库数据目录&#xff1a;/pgdata 目录 用户和角色 创建用户或角色 权限管理 查看权…

初识Spring Boot

初识Spring Boot SpringBoot是建立在Spring框架之上的一个项目,它的目标是简化Spring应用程序的初始搭建以及开发过程。 对比Spring Spring Boot作为Spring框架的一个模块&#xff0c;旨在简化Spring应用程序的初始搭建和开发过程&#xff0c;以下是Spring Boot相对于传统Spri…