⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 topic.asp

📁 仿雅虎论坛静态生成html版 后台管理:admin/admin.asp 用户名:admin 密码:admin TOP/top.htm 顶部模板 left.htm 左边树形菜单模板
💻 ASP
字号:
<%Option Explicit
  Dim username,login,Fwkz,speak,rsk1,rsk2,boardname,Bmid,bbsgl,wz,bz,test,lens,p
  Dim rs,sql,aRS,flname,bbsid,sf,titlenum,I,J
  Dim page,pagenum,idimage,titlename,titlenamew,rename,filelist,distime,disnum,Alltitle
  username=Request.Cookies("username")
  login=Request.Cookies("login")
  bbsgl=Request.Cookies("bbsgl")%>
  <!--#include file="const.asp"-->
  <!--#include file="../conn.asp"-->
  <!--#include file="BtBBS_Fun.asp"-->
<%'http://10.10.164.220/btbbs/board/Topic.asp?boardid=49&Alltitle=1&titlelen=15&distime=1&disnum=1
  Bmid=Request.QueryString("boardid")'版面ID号
  titlelen=Request.QueryString("titleLen")'标题显示的长度,默认全部长度
  distime=Request.QueryString("distime")'是否在标题后面显示时间,0不显示,1显示 默认0
  disnum=Request.QueryString("disnum")'显示的标题数 默认20
  Alltitle=Request.QueryString("Alltitle")'如果此项为0,则只显示disnum条,如果此项为1,那么将分页显示所有的标题每页disnum条,默认为0
  
  titlelen=cint(titlelen)
  disnum=cint(disnum)
  if titlelen="" or titlelen<1 then titlelen=0 end if
  if distime>1 or distime<0 then distime=0 end if
  if disnum<1 then disnum=20 end if
  if Alltitle>1 or Alltitle<0 then Alltitle=0 end if
  
  Bmid=replace(replace(replace(replace(Bmid,"'","‘"),"<","&lt;"),">","&gt;")," ","&nbsp;")
  IF IsNumeric(Bmid)=False THEN Response.Redirect "index.asp" END IF '-----------------------论坛状态及访问控制-----------------
  BT_Board():aRS=Application("BT_Board")
  Fwkz=1:J=-1
  If not (aRS(1,0)=-1 or VarType(aRS)=0) then
   For I=0 to UBound(aRS,2)
     If cint(Bmid)=aRS(0,I) then J=I end if
   Next
  end if
  IF J>=0 then
     boardname=aRS(3,J)
     rsk1=aRS(4,J)
     rsk2=aRS(5,J)
     Flname=aRS(2,J)
     bbsid=aRS(1,J)
     titlenum=aRS(8,J)
     IF login="Y" THEN                               '---------身份确认,如果sf=1,那么登陆者是版主或管理员,如果是0,则是其它用户
       IF (instr(1,aRS(7,J),username)<>0 AND bbsgl="bbsadmin") OR bbsgl="admin" THEN sf=1 ELSE sf=0 END IF
     ELSE             '匿名用户
       sf=0
     END IF
     '-----------------------------------------
     IF rsk2=2 AND username="" THEN  '只有注册用户才能访问
       Fwkz=0 
       Speak="你尚未登入,这个版面在登入后才能访问"
     END IF
     IF(rsk2=3 And bbsgl="reguser") OR (rsk2=3 And bbsgl="") THEN  '只有版主和管理员才能访问
       Fwkz=0:Speak="这个版面只有版主和管理员才能访问"
     END IF
     IF rsk1=3 THEN                               '3 认证论坛 认证用户,版主,管理员均可访问
       IF (instr(1,aRS(7,j),username)<>0 And login="Y") OR sf=1 THEN Fwkz=1 ELSE  Fwkz=0:Speak="这是个认证版面,你尚未登陆,或者你不是认证用户" END IF
     END IF
     IF rsk1=4 THEN
       Fwkz=0 
       Speak="这个版面已被管理员关闭,有问题请联系管理员"
     END IF
     test=aRS(7,j)
     '---------------------------------  
     wz=1:bz=""
     While Not wz=0
       lens=Len(test):wz=InStr(1,test,"|")
       IF wz<>0 THEN p=left(test,wz-1) ELSE p=test END IF
       test=right(test,lens-wz)
       IF p=" " THEN bz=bz+"无" ELSE bz=bz+"<a href=LookUserInfo.asp?username="+p+">"+p+"</a>&nbsp;" END IF
     Wend
'--------------------------------
  ELSE
     Fwkz=0:Speak="没有找到这个版面"
  END IF
  
IF Fwkz<>0 THEN
'----------计算页的位置-----------------------
  page=request("page")
  If IsNumeric(page)=False then page=1 else page=clng(page) end if
  If page="" OR page<1 Then page=1 End If
  pageNum=int(titlenum/ListNum) '计算页数
  if pageNum<1 then pageNum=1 end if
  if titlenum>pageNum*ListNum then pageNum=PageNum+1 end if
  if page>PageNum then page=pageNum end if
'-------------------------------------------------

     Set rs = Server.CreateObject("ADODB.Recordset")
     sql="SELECT ID,BoardID,FileName,Subject,PostUser,PostNum,Hits,LastPostTime,LastPostUser,IsTop,IsBest,PollID FROM BT_Topic where BoardID="&Bmid&" ORDER BY PostTime desc "
     rs.open sql,conn,1,1
     p=""
     If rs.bof and rs.EOF then
      Response.Write "<center>没有任何记录</center>"
      p="true":rs.Close:set rs=nothing
     Else
      rs.PageSize=disnum '每页几条
      rs.absolutepage=page '移动到指定页的第一条记录
      pagenum=rs.PageCount
      If page=pageNum Then aRs=rs.GetRows(-1) Else aRS=rs.GetRows(ListNum) End If '读取page页的ListNum条记录
      rs.Close:Set Rs=Nothing
     End If 

  IF p<>"true" THEN
   For wz=0 To UBound(aRS,2) '读出主题列表
    titlename=aRS(3,wz)
    titlenamew=titlename
    if titlelen>0 then
     if len(titlename)>titlelen then titlename=left(titlename,titlelen): titlename=titlename+"..." end if
    end if
    rename=aRS(8,wz) 
    if distime=0 then aRS(7,wz)="" end if
    filelist=filelist+"<li><a href=bbs"&aRS(1,wz)&"/"&aRS(2,wz)&" title="&titlenamew&">"&titlename&"</a>&nbsp;"&aRS(7,wz)&"</li>"
   Next
  End if 
  Response.Write filelist
 '----------------翻页,如果显示所有的帖子,那么需要提供翻页,可以取消下面这条语句的前后的<!-- -->符号
 %>
 <!--  </form><form name=dislist  method=post action=topic.asp?boardid=<%=Bmid%>><table border=0 width=743 cellspacing=0 cellpadding=0 class=table1 height=28><tr><td width=250>第<%=page%>页&nbsp;共<%=pageNum%>页&nbsp;本页<%=ListNum%>条&nbsp;主题数&nbsp;<%=titlenum%></td><td valign=top align=right><%=Pagination(PageNum,Bmid)%> &nbsp;跳转到第<INPUT  class=fminpt name=page type=text size=3>页<input type=image src=../images/sch.gif border=0 id=image1 name=dislist WIDTH=17 height=14 align=absmiddle><img src=../images/null.gif width=5 height=2></td></tr></table></table></center> -->
 <%
 ELSE
 Response.Write Speak
END IF
%>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -