con_article.asp

来自「是个不错的文件代码,希望大家好好用,」· ASP 代码 · 共 335 行

ASP
335
字号
<!-- #include file="skin.asp" -->
<%
'****************************************************
' 玫瑰情缘 2006v3.0      power by www.meigui8.cn
' email: 556248@qq.com  , 100053555@qq.com
' web: http://www.meigui8.cn
' copyright (c) 2006 meigui8.cn all rights reserved.
'****************************************************
dim cms_skin_mod
set cms_skin_mod=new class_cms_skin_mod
cms_skin_mod.class_db("文章_1") '注:("文章_1")要和模板同名
%>
<!-- #include file="jk_nsort.asp" -->
<!-- #include file="../style/data_sort_art.asp" -->

<%
cid=0
sid=0
n_sort="art"
index_url="article"
tit_fir=format_menu(index_url)
m_channel=index_url
web_img_m="m_"&m_channel
web_img_h="h_"&m_channel

'================================================
'作    用:清除变量
'================================================
sub article_end()
  if isarray(sort_dim) then erase sort_dim
  cms_skin_mod.sk_end
  set cms_skin_mod=nothing
end sub

'================================================
'作    用:文章左边部分功能模块
'参    数:
'  nt        :判断文章的类型,如热门文章、推荐文章等
'  n_num     :每个模块显示文章标题数
'  c_num     :文章标题字数
'  n_title   :模块名称
'================================================
sub article_left(nt,n_num,c_num,n_title)
  dim n_username,n_topic,n_tim,tmp
  sql="select top "&n_num&" id,username,topic,tim,counter,emoney,power,tcolor from article where hidden=1"
  select case nt
  case "hot"
    sql=sql&" order by counter desc,id desc"
  case "good"
    sql=sql&" and istop=1 order by id desc"
  case else
    sql=sql&" order by id desc"
  end select
  set rs=joekoe_cms.exec(sql,1)
  do while not rs.eof
    n_username=rs("username")
    n_topic=rs("topic")
    n_tim=rs("tim")
    n_tim=joekoe_cms.time_type(n_tim,1)
    tmp=tmp&article_topic_type(c_num,rs("id"),n_username,n_topic,n_tim,rs("counter"),false,0,rs("emoney"),rs("power"),rs("tcolor"))
    rs.movenext
  loop
  rs.close
  call article_bar_top(n_title,tmp)
end sub

'================================================
'作    用:文章各模块显示模式功能模块
'参    数:
'  tit       :模块名称
'  body      :模块内容
'================================================
sub article_bar_top(tit,body)
  dim tmp
  tmp=cms_skin_mod.getdb("left")
  tmp=replace(tmp,"{$img}",img_skin(web_img_m))
  tmp=replace(tmp,"{$tit}",tit)
  tmp=replace(tmp,"{$body}",body)
  tmp=replace(tmp,"{$ukong}",cms_skin.skukong)
  response.write (vbcrlf&tmp)
end sub

'================================================
'作    用:文章标题显示功能模块
'================================================
function article_topic_type(b_c_num,b_id,b_username,b_topic,b_tim,b_counter,b_ispic,b_tim_type,b_emoney,b_power,tcolor)
  dim n_url,n_jt
  n_url="article_view.asp?id="&b_id
  n_jt=img_skin(web_img_h)
  article_topic_type=format_article_topic_type(n_jt,b_username,b_topic,b_c_num,n_url,b_tim,b_counter,b_ispic,"文章标题","阅读次数",b_tim_type,b_emoney,b_power,tcolor)
end function

'================================================
'作    用:文章标题显示模式功能模块
'================================================
function format_article_topic_type(b_jt,b_username,b_topic,b_c_num,b_url,b_tim,b_counter,b_ispic,b_tit,b_count,b_tim_type,b_emoney,b_power,tcolor)
  dim n_img,tim_type,n_c_num
  n_c_num=b_c_num
  if b_ispic then
    n_img="&nbsp;<img src='"&joekoe_cms.web_dir_skin&"small/img.gif' border=0>"
    n_c_num=n_c_num-2
  end if
  if b_tim_type>0 then
    if b_tim_type=2 then tim_type=tim_type&"</td><td align=right>"
    tim_type=tim_type&"&nbsp;<font class=tims>"&mid(b_tim,6,5)&"</font>"
  end if
  if var_null(tcolor)<>"" then tcolor="style=""color:"&tcolor&";"""
   format_article_topic_type="<tr><td height="&m_hei&"> "&b_jt&"<a href='"&b_url&"' alt='"&b_tit&":"&joekoe_cms.code_html(b_topic,1,0)&"<br>发 布 人:"&b_username&"<br>"&b_count&":"&b_counter&" 人次<br>整理时间:"&b_tim&"' "&tcolor&">"&joekoe_cms.code_html(b_topic,1,n_c_num)&"</a>"&n_img&tim_type&"</td></tr>"
end function

'================================================
'作    用:文章部分功能链接模块
'================================================
function article_label_list()
  dim temp1
  temp1=temp1&vbcrlf&"<table border=0 cellspacing=0 cellpadding=4>" & _
              vbcrlf&"<tr><td>&nbsp;"&img_skin("label_"&m_channel)&"&nbsp;<a href='article_list.asp?action=good'"
  if action="good" then temp1=temp1&" class=red"
  temp1=temp1&">推荐文章</a></td></tr>" & _
        vbcrlf&"<tr><td>&nbsp;"&img_skin("label_"&m_channel)&"&nbsp;<a href='article_list.asp?action=hot'"
  if action="hot" then temp1=temp1&" class=red"
  temp1=temp1&">热门文章</a></td></tr>" & _
        vbcrlf&"</table>"
  article_label_list=temp1
end function

'================================================
'作    用:文章分页功能模块
'================================================
function article_list_pagecute(p_nummer,p_rssum,p_viewpage,p_thepages,p_pageurl)
  dim temp1
  temp1=temp1&vbcrlf&"<table border=0 width='98%' cellspacing=0 cellpadding=2>" & _
             vbcrlf&"<tr>" & _
             vbcrlf&"<td height=25>" & _
             vbcrlf&"&nbsp;本栏共有 <font class=red>"&p_rssum&"</font> 篇文章" & _
             vbcrlf&"页次:<font class=red>"&p_viewpage&"</font>/<font class=red>"&p_thepages&"</font>&nbsp;" & _
             vbcrlf&"&nbsp;分页:"&jk_pagecute(p_nummer,p_thepages,p_viewpage,p_pageurl,5,"#ff0000") & _
             vbcrlf&"</td>" & _
             vbcrlf&"</tr></table>"&ukong
  article_list_pagecute=temp1
end function

'================================================
'作    用:文章搜索功能模块
'参    数:
'  stit       :文章
'================================================
function article_search_list(stit)
  dim temp1
  temp1=temp1&vbcrlf&"<table border=0>" & _
              vbcrlf&"<form name=article_sea_frm action='article_list.asp' method=get onsubmit=""javascript:frm_submitonce(this);"">" & _
              vbcrlf&"<input type=hidden name=action value='search'>" & _
              vbcrlf&"<tr height=30>" & _
              vbcrlf&"<td>"&img_skin("new")&"</td>" & _
              vbcrlf&"<td wdith=5></td>" & _
              vbcrlf&"<td>"&select_type(stit,0,0)&"</td>" & _
              vbcrlf&"<td wdith=5></td>" & _
              vbcrlf&"<td><select name=sea_type sizs=1><option value='topic'>"&stit&"标题</option><option value='username'>发布人</option></seelct></td>" & _
              vbcrlf&"<td wdith=5></td>" & _
              vbcrlf&"<td><select name=sea_term sizs=1><option value='all'>满足所有条件</option><option value='only'>满足一个条件</option></seelct></td>" & _
              vbcrlf&"<td wdith=5></td>" & _
              vbcrlf&"<td><input type=text name=keyword size=20 maxlength=20 title='多个关键字请用 空格 格开' class=bg_search></td>" & _
              vbcrlf&"<td wdith=5></td>" & _
              vbcrlf&"  <td><input type=submit value='搜索' onclick=""javascript:return article_sea('"&stit&"');""></td>" & _
              vbcrlf&"</tr></form></table>" & _
              vbcrlf&"<script language=javascript>" & _
              vbcrlf&"function article_sea(stit)" & _
              vbcrlf&"{" & _
              vbcrlf&"  if (document.article_sea_frm.keyword.value==""请输入关键字"")" & _
              vbcrlf&"  {" & _
              vbcrlf&"    alert('请在搜索"&stit&"前先输入要查询的 关键字 !');" & _
              vbcrlf&"    document.article_sea_frm.keyword.focus();" & _
              vbcrlf&"    return false;" & _
              vbcrlf&"  }" & _
              vbcrlf&"}" & _
              vbcrlf&"</script>"
  article_search_list=temp1
end function

'================================================
'作    用:分类文章具体显示功能模块
'================================================
sub article_more(m_nummer,m_num,m_title)
  dim sqladd,sqladd_head,sqladd_end,nums,n_username,n_topic,n_tim,mhead,cname,sname,tmp,pages
  rssum=0
  nums=nummer
  sqladd_head=""
  sqladd_end=""
  select case action
  case "search"
    mhead=m_title&"&nbsp;→&nbsp;"&tit
    if cint(cid)>0 then sqladd=" and c_id="&cid
    if cint(sid)>0 then sqladd=sqladd&" and s_id="&sid
    sea_type=trim(request.querystring("sea_type"))
    keyword=joekoe_cms.code_form(request.querystring("keyword"))
    sea_term=trim(request.querystring("sea_term"))
    if sea_type<>"username" then sea_type="topic"
    if sea_term<>"only" then sea_term="all"
    sqladd_end=sql_key(keyword,sea_type,2,sea_term)
    if sqladd_end<>"" then
      sqladd=sqladd&" and "&sqladd_end
      sqladd_end=""
      mhead=mhead&"(关键字:"&keyword&")"
    end if
    pageurl=pageurl&"keyword="&server.urlencode(keyword)&"&sea_type="&sea_type&"&sea_term="&sea_term&"&"
  case "hot"
    mhead=m_title&"&nbsp;→&nbsp;"&tit&"(最新"&m_nummer&"条)"
    sqladd=""
    sqladd_head=" top "&m_nummer
    sqladd_end=" counter desc,"
  case "pic"
    mhead=m_title&"&nbsp;→&nbsp;"&tit
    sqladd=" and ispic=1"
  case "good"
    mhead=m_title&"&nbsp;→&nbsp;"&tit
    sqladd=" and istop=1"
  case else
    sql="select c_name from jk_class where c_id="&cid
    sqladd=" and c_id="&cid
    if cint(sid)>0 then 
      sqladd=" and s_id="&sid
      sql="select jk_class.c_name,jk_sort.s_name from jk_sort inner join jk_class on jk_sort.c_id=jk_class.c_id where jk_sort.c_id="&cid&" and jk_sort.s_id="&sid
    end if
    set rs=joekoe_cms.exec(sql,1)
    if rs.eof then
      rs.close
      call article_list(6,30)
      exit sub
    end if
    cname=rs("c_name")
    if cint(sid)>0 then sname=rs("s_name")
    rs.close
    mhead=m_title&"&nbsp;→&nbsp;"&cname
    if sid>0 and sname<>"" then mhead=mhead&"&nbsp;→&nbsp;"&sname
  end select
  sql="select"&sqladd_head&" id,topic,tim,username,counter,emoney,power,tcolor from article where hidden=1"&sqladd&" order by "&sqladd_end&"id desc"
  call joekoe_cms.exec("",-1)
  rs.open sql,conn,1,1
  if not(rs.eof) then rssum=rs.recordcount
  call format_pagecute()
  if cint(viewpage)>1 then rs.move (viewpage-1)*nummer
  if int(viewpage*nummer)>int(rssum) then nums=nummer-(viewpage*nummer-rssum)
  for i=1 to nums
    n_username=rs("username")
    n_topic=rs("topic")
    n_tim=rs("tim")
    n_tim=joekoe_cms.time_type(n_tim,1)
    tmp=tmp&article_topic_type(m_num,rs("id"),n_username,n_topic,n_tim,rs("counter"),false,2,rs("emoney"),rs("power"),rs("tcolor"))
    rs.movenext
  next
  rs.close
  if action<>"hot" then
    pages=article_list_pagecute(nummer,rssum,viewpage,thepages,pageurl)
  end if
  call article_bar_top(mhead,"<table border=0 cellspacing=0 cellpadding=0 width='100%'>"&tmp&"</table>"&pages)
end sub

'================================================
'作    用:所有文章显示功能模块
'================================================
sub article_list(n_num,c_num)
  dim nsid,nsname,srs,ssql,sqla,n_username,n_topic,n_tim,sid_num,tmp,a_end
  sid_num=0
  ssql="select s_id,s_name from jk_sort where c_id="&cid&" order by s_order"
  set srs=joekoe_cms.exec(ssql,1)
  do while not srs.eof
    sid_num=1
    nsid=srs("s_id")
    nsname=srs("s_name")
    sqla=" and s_id="&nsid
    sql="select top "&n_num&" id,topic,tim,username,counter,emoney,power,tcolor from article where hidden=1 and s_id="&nsid&" order by id desc"
    set rs=joekoe_cms.exec(sql,1)
    do while not rs.eof
      sid_num=2
      n_username=rs("username")
      n_topic=rs("topic")
      n_tim=rs("tim")
      n_tim=joekoe_cms.time_type(n_tim,1)
      tmp=tmp&article_topic_type(c_num,rs("id"),n_username,n_topic,n_tim,rs("counter"),false,2,rs("emoney"),rs("power"),rs("tcolor"))
      rs.movenext
    loop
    rs.close
    a_end=cms_skin_mod.getdb("more")
    a_end=replace(a_end,"{$url}","?action=more&c_id="&cid&"&s_id="&nsid)
    call article_bar_top(nsname,"<table border=0 cellspacing=0 cellpadding=0 width='100%'>"&tmp&"</table>"&a_end)
    tmp=""
    srs.movenext
  loop
  srs.close
  set srs=nothing
  if sid_num>1 then
    action="more"
    call article_more(nummer,30,tit)
  end if
end sub

'================================================
'作    用:所有文章按照分类显示功能模块
'================================================
sub article_main_list(n_num,c_num)
  dim ncid,ncname,crs,csql,sqla,n_username,n_topic,n_tim,tmp,a_end
  csql="select c_id,c_name from jk_class where nsort='"&n_sort&"' order by c_order"
  set crs=joekoe_cms.exec(csql,1)
  do while not crs.eof
    ncid=crs("c_id")
    ncname=crs("c_name")
    sqla=" and c_id="&ncid
    sql="select top "&n_num&" id,topic,tim,username,counter,emoney,power,tcolor from article where hidden=1 and c_id="&ncid&" order by id desc"
    set rs=conn.execute(sql)
    do while not rs.eof
      n_username=rs("username")
      n_topic=rs("topic")
      n_tim=rs("tim")
      n_tim=joekoe_cms.time_type(n_tim,1)
      tmp=tmp&article_topic_type(c_num,rs("id"),n_username,n_topic,n_tim,rs("counter"),false,2,rs("emoney"),rs("power"),rs("tcolor"))
      rs.movenext
    loop
    rs.close
    a_end=cms_skin_mod.getdb("more")
    a_end=replace(a_end,"{$url}","article_list.asp?action=more&c_id="&ncid)
    call article_bar_top(ncname,"<table border=0 cellspacing=0 cellpadding=0 width='100%'>"&tmp&"</table>"&a_end)
    tmp=""
    crs.movenext
  loop
  crs.close
  set crs=nothing
end sub
'****************************************************
' 玫瑰情缘 2006v3.0      power by www.meigui8.cn
' email: 556248@qq.com  , 100053555@qq.com
' web: http://www.meigui8.cn
' copyright (c) 2006 meigui8.cn all rights reserved.
'****************************************************
%>

⌨️ 快捷键说明

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