📄 一个bbs的源代码.txt
字号:
一个BBS的源代码(一)
--------------------------------------------------------------------------------
【menu】 于 2000-2-2 10:41:25 加贴在 Joy ASP ↑:
一个BBS的源代码
<%@ Language=VBScript %>
<%
'==================================================================================================
' 说明部分
'
' #####################
' # #
' # 数据库结构 #
' # #
' #####################
'
' bbs
' 序号 INT NOT NULL IDENTITY
' 作者 VARCHAR(80)
' 题目 VARCHAR(255)
' 回复 INT NOT NULL DEFAULT 0
' 点击 INT NOT NULL DEFAULT 0
' 时间 DATETIME DEFAULT GETDATE()
' 内容 TEXT
' 邮件通知 BIT DEFAULT 0
'
' bbsreply
' 序号 INT NOT NULL IDENTITY
' 原文 INT
' 作者 VARCHAR(80)
' 题目 VARCHAR(255)
' 时间 DATETIME DEFAULT GETDATE()
' 内容 TEXT
'
' bbsmember
' 序号 INT NOT NULL IDENTITY
' 账号 VARCHAR(80)
' 密码 VARCHAR(80)
' 邮件 VARCHAR(80)
' 文章数 INT DEFAULT 0
'
' ####################
' # #
' # 常用函数 #
' # #
' ####################
Function SqlStr( NormalString )
SqlStr = Replace( NormalString , "'" , "''" )
End Function
Function FormStr( NormalString )
FormStr = Replace( NormailString , """" , """""" )
End Function
Function CheckEmail( Email )
Dim MailIsRight
Dim Mail
Dim MailLength
Dim AtPosition
Dim LastPointPosition
Mail = Email
AtPosition = InStr( Mail , "@" )
LastPointPosition = InStrRev( Mail , "." )
MailLength = Len( Mail )
MailIsRight = True
If AtPosition <= 1 OR AtPosition = MailLength Then MailIsRight = False
If LastPointPosition <= 1 OR LastPointPosition = MailLength Then MailIsRight = False
If AtPosition > LastPointPosition - 2 Then MailIsRight = False
CheckEmail = MailIsRight
End Function
Function GetID( StringID )
Dim TempID
TempID = StringID
Do While Not IsNumeric( Left( TempID , 1 ) )
If Len( TempID ) > 1 Then
TempID = Mid( TempID , 2 )
Else
TempID = ""
Exit Do
End If
Loop
GetID = TempID
End Function
' ####################
' # #
' # 变量说明 #
' # #
' ####################
ASP_FILE_NAME = "board.asp" ' 程序文件名:board.asp
ListSize = 20 ' 每页显示文章数 ListSize
一个BBS的源代码(二)
--------------------------------------------------------------------------------
【menu】 于 2000-2-2 10:43:14 加贴在 Joy ASP ↑:
' 打开数据库
Set Con = Server.CreateObject("ADODB.Connection")
Con.Open "asp" , Application("ConASP_RuntimeUserName") , Application("ConASP_RuntimePassword")
Set RecBBS = Server.CreateObject("ADODB.RecordSet")
Set RecReply = Server.CreateObject("ADODB.RecordSet")
Set RecMember = Server.CreateObject("ADODB.RecordSet")
%>
<HTML>
<HEAD>
<META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
<META HTTP-EQUIV="Content-Type" Content="text/html; charset=gb2312">
<TITLE>经验交流</TITLE>
<STYLE TYPE="TEXT/CSS">
td {
color: #ffffff;
font-size: 9pt;
}
td.menu {
color: #000000;
background-color: #f0f0d0;
font-size: 12pt;
}
input {
color: #000000;
font-size: 9pt;
border-top: 1px solid;
border-left: 1px solid;
border-right: 1px solid;
border-bottom: 1px solid;
}
select {
color: #000000;
font-size: 9pt;
border-top: 1px solid;
border-left: 1px solid;
border-right: 1px solid;
border-bottom: 1px solid;
}
textarea {
color: #000000;
font-size: 9pt;
border-top: 1px solid;
border-left: 1px solid;
border-right: 1px solid;
border-bottom: 1px solid;
}
a:link {
text-decoration: none;
}
a:visited {
text-decoration: none;
}
a:hover {
text-decoration: underline;
}
</STYLE>
</HEAD>
<BODY bgcolor=#c0c0c0>
<P>
<TABLE align=center valign=top bgColor=#d0d0d0 border=1 borderColorDark=#f0f0f0 borderColorLight=#505050 cellPadding=5 cellSpacing=0 width=600 height=400>
<TR>
<TD valign=top>
<%
Job = Request("Job")
If Job = "" Then Job = "List"
'==================================================================================================
Select Case Job
'==================================================================================================
'==================================================================================================
Case "List"
'==================================================================================================
' 显示文章
%>
<TABLE align=center border=0 cellPadding=1 cellSpacing=0 width=650>
<TR>
<TD>
<TABLE WIDTH="100%" ALIGN=center BORDER=0 CELLSPACING=0 CELLPADDING=2 BGCOLOR=#f0f0d0>
<TR>
<TD class=menu valign=top>
<A href="/">飞林庄</A>-><A href="<%= ASP_FILE_NAME %>">经验交流</A>
</TD>
<TD class=menu></TD>
<TD align=right class=menu>
<FORM action="<%= ASP_FILE_NAME %>" method=get>
<INPUT type=hidden name=Job value=List>
[<A href="<%= ASP_FILE_NAME %>?Job=Write">发表文章</A>][<A href="<%= ASP_FILE_NAME %>?Job=Apply">申请账号</A>]
<INPUT id=Keyword maxLength=20 name=Keyword size=18>
<INPUT type=Submit value=主题搜索>
</FORM>
</TD>
</TR>
</TABLE>
</TD>
</TR>
</TABLE>
<TABLE align=center bgColor=#000000 border=0 cellPadding=1 cellSpacing=1 width=650>
<%
If Request("Keyword") <> "" Then KeyWord = Request("Keyword") Else KeyWord = ""
If Request("Page") = "" Then
If IsNumeric( Session("BBS_Page") ) Then
Page = Int(Session("BBS_Page"))
Else
Page = 1
End If
Else
Page = Int(Request("Page"))
End If
If Page < 1 Then Page = 1
RecBBS.PageSize = ListSize
SQL = "SELECT * FROM bbs "
If KeyWord <> "" Then
SQL = SQL + "WHERE [题目] LIKE '%" & KeyWord & "%' "
End If
SQL = SQL + "ORDER BY [序号] DESC"
RecBBS.Open SQL , Con , 3
PageCount = RecBBS.PageCount
RecordCount = RecBBS.RecordCount
If Page > PageCount Then Page = PageCount
Session("BBS_Page") = Page
If Not RecBBS.EOF Then
%>
<TR>
<TD>作者</TD>
<TD>题目</TD>
<TD>回复</TD>
<TD>点击</TD>
<TD>时间</TD></TR>
<%
RecBBS.AbsolutePage = Page
For iRec = 1 To ListSize
If Not RecBBS.EOF Then
%>
<TR>
<TD><%= Server.HTMLEncode( RecBBS.Fields("作者") ) %></TD>
<TD>
<A href="<%= ASP_FILE_NAME %>?Job=Content&Which=<%= RecBBS.Fields("序号") %><% If KeyWord <> "" Then Response.Write "&Keyword=" & KeyWord %>">
<%= Server.HTMLEncode( RecBBS.Fields("题目") ) %>
</A>
</TD>
<TD><%= Server.HTMLEncode( RecBBS.Fields("回复") ) %></TD>
<TD><%= Server.HTMLEncode( RecBBS.Fields("点击") ) %></TD>
<TD><%= Server.HTMLEncode( RecBBS.Fields("时间") ) %></TD></TR>
</TR>
<%
RecBBS.MoveNext
Else
Response.Write " <TR><TD> </TD><TD> </TD><TD> </TD><TD> </TD><TD> </TD></TR>" & Chr(13)
End If
Next
Else
%>
No Record
<%
End If
RecBBS.Close
%>
</TABLE>
<TABLE align=center border=0 cellPadding=1 cellSpacing=0 width=650>
<TR>
<TD class="menu">
共有 <%= PageCount %> 页 <%= RecordCount %> 篇文章
<%
If Page > 1 Then
Response.Write "<A href=""" & ASP_FILE_NAME & "?Job=List&Page=" & Page-1
If KeyWord <> "" Then Response.Write "&Keyword=" & KeyWord
Response.Write """>"
End If
%>
上一页
<% If Page > 1 Then Response.Write "</A>" %>
<%
If Page < PageCount Then
Response.Write "<A href=""" & ASP_FILE_NAME & "?Job=List&Page=" & Page+1
If KeyWord <> "" Then Response.Write "&Keyword=" & KeyWord
Response.Write """>"
End If
%>
下一页
<% If Page < PageCount Then Response.Write "</A>" %>
<A href="javascript:window.open('<%= ASP_FILE_NAME %>?Job=List&Page=' + Page.value , '_self')">
转到</A>第<INPUT id=Page name=Page size=4 maxlength=4 >页
<% Response.Write Page & "/" & PageCount %>
</TD>
</TR>
</TABLE>
</TD>
</TR>
</TABLE>
<%
一个BBS的源代码(三)
--------------------------------------------------------------------------------
【menu】 于 2000-2-2 10:44:20 加贴在 Joy ASP ↑:
'==================================================================================================
Case "Content"
'==================================================================================================
' 显示内容
If Request("Keyword") <> "" Then KeyWord = Request("Keyword") Else KeyWord = ""
%>
<TABLE align=center border=0 cellPadding=1 cellSpacing=0 width=650>
<TR>
<TD class="menu">
<A href="/">飞林庄</A>-><A href="<%= ASP_FILE_NAME %><% If KeyWord <> "" Then Response.Write "?Keyword=" & KeyWord %>">经验交流</A>->怎样输出图像</TD>
</TR>
</TABLE>
<TABLE align=center border=0 cellPadding=8 cellSpacing=0 width=650>
<TR>
<TD bgColor=#000000>
<%
Which = Request("Which")
If IsNumeric( Which ) Then
Session("BBS_Which") = Which
' 点击数加一
Con.Execute( "UPDATE bbs SET [点击]=[点击]+1 WHERE [序号]=" & Which )
SQL = "SELECT * FROM bbs WHERE [序号]=" & Which
RecBBS.Open SQL , Con , 1
If Not RecBBS.EOF Then
Title = RecBBS.Fields("题目")
Session("BBS_WhichTitle") = Title
%>
<P><FONT color=#66ff99>序号</FONT>:<FONT color=#6699ff>E<%= Which %></FONT><BR>
<FONT color=#66ff99>作者</FONT>:<%= Server.HTMLEncode( RecBBS.Fields("作者") ) %><BR>
<FONT color=#66ff99>题目</FONT>:<%= Server.HTMLEncode( Title ) %><BR>
<FONT color=#66ff99>时间</FONT>:<%= RecBBS.Fields("时间") %><BR>
<BR>
<PRE>
<%= Server.HTMLEncode( RecBBS.Fields("内容") ) %>
</PRE>
</P>
<%
End If
RecBBS.Close
SQL = "SELECT * FROM bbsreply WHERE [原文]=" & Which
RecReply.Open SQL , Con , 3
AllID = "E" & Which
Do While Not RecReply.EOF
ID = RecReply.Fields("序号")
AllID = AllID & ":" & ID
%>
<P><FONT color=#66ff99>序号</FONT>:<FONT color=#6699ff><%= ID %></FONT><BR>
<FONT color=#66ff99>作者</FONT>:<%= Server.HTMLEncode( RecReply.Fields("作者") ) %><BR>
<FONT color=#66ff99>题目</FONT>:<%= Server.HTMLEncode( RecReply.Fields("题目") ) %><BR>
<FONT color=#66ff99>时间</FONT>:<%= RecReply.Fields("时间") %><BR>
<BR>
<PRE>
<%= Server.HTMLEncode( RecReply.Fields("内容") ) %>
</PRE>
</P>
<%
RecReply.MoveNext
If RecReply.EOF Then Exit Do
Loop
RecReply.Close
End If
%>
</TD>
</TR>
</TABLE>
<TABLE align=center border=0 cellPadding=7 cellSpacing=0 width=650>
<TR>
<TD class=menu>
<FORM action="<%= ASP_FILE_NAME %>" method=post>
<INPUT type=hidden id=Job name=Job value=Reply>
账号:<INPUT id=Userid name=Userid maxLength=30 size=30>
密码:<INPUT id=Password maxLength=30 name=Password size=30 type=password><BR>
题目:<INPUT id=Title maxLength=80 name=Title size=72 value="回复:<%= Title %>"><BR>
<TEXTAREA cols=80 id=Content name=Content rows=10></TEXTAREA><BR>
<INPUT type=submit value=" 回 复 ">
</FORM>
<P>
选中文章:
<SELECT id=Which name=Which size=1>
<%
WhichID = Split( AllID , ":" )
For Each ID In WhichID
Response.Write "<OPTION value="
Response.Write ID & ">" & ID
Response.Write "</OPTION>"
Next
%>
</SELECT><BR>
<INPUT id=Email maxLength=80 name=Email size=40>
<INPUT type=button id=MailBack name=MailBack value="寄回信箱" OnClick="window.open('<%= ASP_FILE_NAME %>?Job=Send&Which=' + Which.value + '&Email=' + Email.value , '_self')">
<INPUT type=button id=Modify name=Modify value="修改" OnClick="window.open('<%= ASP_FILE_NAME %>?Job=Modify&Which=' + Which.value , '_self')">
<INPUT type=button id=Delete name=Dalete value="删除" OnClick="window.open('<%= ASP_FILE_NAME %>?Job=Delete&Which=' + Which.value , '_self')">
</P>
</TD>
</TR>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -