你好,欢迎来到电脑编程技巧与维护杂志社! 杂志社简介广告服务读者反馈编程社区  
合订本订阅
 
 
您的位置:杂志经典 / 编程语言
应用ASP技术编写一个简单论坛(下)
 

5.4 discuss_main.asp

<HTML>

<HEAD><TITLE>讨论组发送区</TITLE>

<script language=javascript>    表单输入检查脚本

  function checksubmit(form)

  { 

    if (form.subject.value=="")

    {

      alert("请输入您的标题");

      form.subject.focus();

      return false;

     }

    if (form.name.value=="")

    {

      alert("请输入您的姓名");

      form.name.focus();

      return false;

     }

     if (form.comments.value=="")

     {

         alert ("请输入讨论内容");
         form.comments.focus();

         return false;

     }

     return true;

 }

</script>

</HEAD>

<BODY>

<FORM METHOD=POST ACTION="disc_post.asp" name=form1

onsubmit="return checksubmit(form1)">  

发送表单信息到disc_post.asp中处理

<FONT color=#8000ff><STRONG>请逐项填写下表,TAB键跳到下一项。</STRONG> </FONT><p>

<STRONG>您的标题:</STRONG><br><input type=text name="subject" tabindex=1 maxlength=100 size=20><br>

<STRONG>您的姓名:</STRONG><br><input type=text name="name" tabindex=1 maxlength=50 size=20><br>

<STRONG>您的信箱:</STRONG><br><input type=text name="email" tabindex=1 maxlength=50 size=20><br>

<STRONG>选择:</STRONG><br>

<select name="selectno" tabindex=2>     论坛主题作为下拉列表框的项

<%

   set rs=server.createobject("ADODB.recordset")

   rs.open "select * from forum_content","DSN=forum;UID=user;PWD=",3,1

   if not rs.eof then%>

     <option value="<%=rs("contentname")%>" selected><%=rs("contentname")%>

<%   rs.movenext

     for i=2 to rs.recordcount%>

     <option value="<%=rs("contentname")%>"><%=rs("contentname")%>

<%   rs.movenext

     next

   else%>

     <option value="nocontent">没有内容

<% end if

   rs.close

   set rs=nothing

%>

</select>

<br>

<STRONG>讨论内容:</STRONG><br><textarea rows=5 cols=45  name="comments" tabindex=3></textarea><p>

<center><input type=submit value="发送内容">&nbsp;&nbsp;<input type=reset value="重填内容"></center>

</form>

</BODY>

</HTML>

 

5.5 discuss_left.asp

<html>

<head>

<title>讨论区目录页</title>

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

</head>

<body bgcolor="#FFFFFF">
<center><a name="#toc"></a>

<font color="#333333" size="2">讨论区内容目录</font></center><br>

见程序段1

   'display toc

见程序段2

<%   if err<>0 then

     response.write "<center>对不起,讨论区失败!</center>"

   end if

%>

</body>

</html>

 

5.6 disc_post.asp

<HTML>

<HEAD><TITLE>讨论组发送区</TITLE>

</HEAD>

<BODY>

见程序段4

<!--#INCLUDE VIRTUAL="forum/disc_showre.inc"-->

                                    消息处理结果显示包含文件

</BODY>

</HTML>

 

5.7 contentdisplay.asp

<HTML>

<HEAD><TITLE>讨论组内容显示区</TITLE>

</HEAD>

<BODY>

<%

    'display discuss content

     contentdis=trim(request.querystring("contentdis"))

     discussarea=trim(request.querystring("discussarea"))

                        获取从左框架消息列表中发送过来的查询字符串

    if contentdis="" or discussarea="" then 查询字符串为空表示出错

      response.write "对不起,本讨论内容信息含错,不能浏览."

      response.end

   else                 查询字符串不为空则进行处理

     on error resume next

     set rs=server.createobject("ADODB.recordset")

     rs.open "select * from "&discussarea,"DSN=forum;UID=user;PWD=",3,1

     findid=false

     if not rs.eof then             主题消息表不为空继续

       countrs=1

    do until findid or (countrs>rs.recordcount) 查找要显示的消息记录

          if cstr(rs("index"))=contentdis then

            findid=true

          else

            countrs=countrs+1

            rs.movenext

          end if

       loop

      end if

     if findid then                 找到该记录,则进行显示

       mydate=formatdatetime(trim(rs("submitdate")),1)     mytime=formatdatetime(trim(rs("submitdate")),3)

%>

     <h2><strong>讨论区</strong></h2><hr><center>

     <form method=post action="disc_reply.asp"> 发送隐藏表单信息给disc_reply.asp

     <input type=submit name=submit value="答复">

     <input type=hidden name="subject1" value=<%=rs("subject")%>>

     <input type=hidden name="discussarea" value=<%=discussarea%>>

     <input type=hidden name="theindex" value=<%=rs("index")%>>

     </form>

     </center><p><h4><strong><%=rs("subject")%></strong></h4>

     <table>                        显示找到的消息信息

     <tr align=right><td><font color="#000000">探讨主题:</font></td>

     <td><font color="#ee3333"><%=discussarea%></font></td></tr>

     <tr align=right><td><font color="#000000">提交作者:</font></td>

     <td><font color="#ee3333"><%=rs("name")%></font></td></tr>

     <tr align=right><td><font color="#000000">提交人邮箱:</font></td>

     <td><font color="#0000ff"><a href="mailto:<%=rs("email")%>">

     <%=rs("email")%></font></td></tr>

     <tr align=right><td><font color="#000000">提交日期:</font></td>

     <td><font color="#ee3333"><%=mydate%></font></td></tr>

     <tr align=right><td><font color="#000000">提交时间:</font></td>

     <td><font color="#ee3333"><%=mytime%></font></td></tr>

     </table>

     <font color="#000000">提交内容:</font><br>

     <font color="#ee3333"> <%=rs("content")%></font>

<%  

   else                 没有找到该消息记录

     response.write "对不起,该提交内容已被删除."

     rs.close

     set rs=nothing

     response.end

   end if

  end if

%>

</BODY>

</HTML>

 

5.8 disc_reply.asp

<HTML>

<HEAD><TITLE>答复</TITLE>

<script language=javascript>        表单输入检查脚本

  function checksubmit(form)

  { 

    if (form.subject.value=="")

    {

      alert("请输入答复标题");

      form.subject.focus();

      return false;

     }

    if (form.name.value=="")

    {

      alert("请输入您的姓名");

      form.name.focus();

      return false;
   }

    if (form.comments.value=="")

   {

      alert ("请输入答复内容");

      form.comments.focus();

      return false;

   }

   return true;

 }

</script>    

</HEAD>

<BODY>

<%  

     dim findid

     subject1=request.form("subject1")     

获取从contentdisplay.asp传来的表单信息

     discussarea=request.form("discussarea")

     theindex=request.form("theindex")

     set rs=server.createobject("ADODB.recordset")

     rs.open "select * from "&discussarea,"DSN=forum;UID=user;PWD=",3,1

     if not rs.eof then             该主题消息表不为空继续

       findid=false

       do until ((findid=true) or rs.eof)      

按索引查找要答复的消息记录

         comp=strcomp(trim(rs("index")),trim(theindex),1)

         if comp=0 then

           findid=true

         else

           if not rs.eof then

             rs.movenext

           end if

         end if

       loop

       if findid=true then         

找到记录,则存储该记录的levelindex信息

         getlevel=rs("level")

         getindex=rs("index")

       else                 没有找到记录,则结束页面请求

         response.write "没有相关信息!"

         rs.close

         set rs=nothing

         response.end

       end if

     else                   该主题消息表为空,结束页面请求

       response.write "没有相关信息."

       rs.close

       set rs=nothing

       response.end

     end if

     rs.close

     set rs=nothing

%>

<FORM METHOD=POST ACTION="disc_response.asp" name=form1 onsubmit="

return checksubmit(form1)">         发送表单信息给disc_response.asp

<FONT color=#8000ff>

<STRONG>请逐项填写下表,TAB键跳到下一项。</STRONG></FONT><p>
<STRONG>
答复标题:</STRONG><br>

<input type=text name="subject" value="RE:"&subject1 tabindex=1 maxlength=100 size=20><br>

<STRONG>您的姓名:</STRONG><br>

<input type=text name="name" tabindex=1 maxlength=50 size=20><br>

<STRONG>您的信箱:</STRONG><br>

<input type=text name="email" tabindex=1 maxlength=50 size=20><br>

<input type=hidden name="levelreply" value=<%=getlevel%>>

<input type=hidden name="indexreply" value=<%=getindex%>>

<input type=hidden name="discussarea" value=<%=discussarea%>>

<br>

<STRONG>讨论内容:</STRONG><br>

<textarea rows=5 cols=45  name="comments" tabindex=3></textarea><p>

<center><input type=submit value="发送内容">&nbsp;&nbsp;

<input type=reset value="重填内容"></center>

</form>

</BODY>

</HTML>

 

5.9 disc_response.asp

<HTML>

<HEAD><TITLE>讨论组答复发送区</TITLE>

</HEAD>

<BODY>

见程序段7

<!--#INCLUDE VIRTUAL="forum/disc_showre.inc"-->

                                    消息处理结果显示包含文件

</BODY>

</HTML>

 

5.10 disc_showre.inc

<%call showresult

sub showresult()

%>

<html><head><title>内容提交成功</title></head>

<body>

<center><strong>您的讨论内容已经提交成功</strong></center><hr>

<p><font color="#1111ff" size="2">注意:您必须刷新内容才能看到提交的内容!</font><p>

<p><font color="#000000">请您点击<a href="discuss.asp" target="_parent">[返回讨论组]</a>,可以看到您的内容已经加入.</font>

</body>

</html>

        <%end sub%>

 

5.11 message_show.inc

        见程序段3

 

5.12 opendb33.inc

见程序段5

 

5.13 closedb33.inc

见程序段6

 

  推荐精品文章

·2024年12月目录 
·2024年11月目录 
·2024年10月目录 
·2024年9月目录 
·2024年8月目录 
·2024年7月目录 
·2024年6月目录 
·2024年5月目录 
·2024年4月目录 
·2024年3月目录 
·2024年2月目录 
·2024年1月目录
·2023年12月目录
·2023年11月目录

  联系方式
TEL:010-82561037
Fax: 010-82561614
QQ: 100164630
Mail:gaojian@comprg.com.cn

  友情链接
 
Copyright 2001-2010, www.comprg.com.cn, All Rights Reserved
京ICP备14022230号-1,电话/传真:010-82561037 82561614 ,Mail:gaojian@comprg.com.cn
地址:北京市海淀区远大路20号宝蓝大厦E座704,邮编:100089