คลิ๊กเพื่อทดสอบเว็บบอร์ดครับ
>>โหลดตัวอย่างได้ที่นี่ครับ<<
ให้สร้างฐานข้อมูล ชื่อ testboad.mdb
ตารางที่ 1 ชื่อ Quest
มีข้อมูลดังนี
ชื่อ |
ชนิดข้อมูล |
คำอธิบาย |
Q_id |
Autonumber |
หมายเลขหัวข้อ |
Q_toppic |
text |
หัวข้อ |
Q_name |
text |
ชื่อ |
Q_mail |
text |
อีเมล |
Q_comment |
memo |
ข้อความ |
Q_date |
date/time |
วันที่ |
ตารางที่ 2 ชื่อ Anw
มีข้อมูลดังนี้
ชื่อ |
ชนิดข้อมูล |
คำอธิบาย |
Q_id |
number |
หมายเลขหัวข้อ |
a_id |
Autonumber |
หมายเลขคำตอบ |
a_name |
text |
ชื่อ |
a_mail |
text |
อีเมล |
a_comment |
memo |
ข้อความ |
a_date |
date/time |
วันที่ |
การสร้าง webboard ที่จำนะเสนอนี้จะมีทั้งหมด
5ไฟล์ครับ คือ newtopic1.asp newtopic2.asp showboard.asp
viwboard.asp และ anw.asp เรามาเริ่มสร้างเลยดีกว่าครับ |
คลิ๊กเพื่อทดสอบเว็บบอร์ดครับ
| newtopic1.asp ฟอร์มตั้งกระทู้ มีดังนี้ครับ
|
<form name="form1"
method="post" action="newtopic2.asp">
<table width="500" border="0" cellspacing="5"
cellpadding="5">
<tr>
<td width="152"><div align="center"><strong><font
color="#0099FF" size="2" face="Arial">หัวข้อกระทู้</font></strong></div></td>
<td width="313"><strong><font size="2"
face="Arial">
<input name="q_topic" type="text" id="q_topic"
size="40">
</font></strong></td>
</tr>
<tr>
<td><div align="center"><strong><font
color="#0099FF" size="2" face="Arial">ผู้ตั้งกระทู้</font></strong></div></td>
<td><strong><font size="2" face="Arial">
<input name="q_name" type="text" id="q_name"
size="30">
</font></strong></td>
</tr>
<tr>
<td><div align="center"><strong><font
color="#0099FF" size="2" face="Arial">อีเมล</font></strong></div></td>
<td><strong><font size="2" face="Arial">
<input name="q_mail" type="text" id="q_mail"
size="30">
</font></strong></td>
</tr>
<tr>
<td height="106"><div align="center"><strong><font
color="#0099FF" size="2" face="Arial">ข้อความ</font></strong></div></td>
<td><strong><font size="2" face="Arial">
<textarea name="q_comment" cols="50" rows="5"
wrap="VIRTUAL" id="q_comment"></textarea>
</font></strong></td>
</tr>
<tr>
<td> </td>
<td><strong><font size="2" face="Arial">
<input type="submit" name="Submit" value="ตั้งกรูะทู้">
<input type="submit" name="Submit2" value="ยกเลิก">
</font></strong></td>
</tr>
</table>
</form> |
คลิ๊กเพื่อทดสอบเว็บบอร์ดครับ
| newtopic2.asp เก็บเข้าในฐานข้อมูล มีดังนี้ครับ
|
<%
q_topic=replace(replace(Request.Form("q_topic"),"<","<"),">",">")
q_name=replace(replace(Request.Form("q_name"),"<","<"),">",">")
q_mail=replace(replace(Request.Form("q_mail"),"<","<"),">",">")
q_comment=replace(replace(replace(Request.Form("q_comment"),"<","<"),">",">"),chr(13),"<br>")
q_date=date()
wording=q_topic
Set ObjRegEx = New RegExp
badword=array("หี","ควย","เย็ด","ห่า","แดก","จัญไร","เหี้ย","แตด","ควาย","หมา","คิง","บ่า","อีั,")
point=0
For i=0 to UBound(badword)
ObjRegEx.pattern=badword(i)
Result=ObjRegEx.Test(wording)
If Result="True" Then
Point=Point+1
End If
Next
If Point > 0 then
Response.Write("<b>เจอคำหยาบครับ </b>")
else
Set Conn=Server.CreateObject("ADODB.Connection")
conn.open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.mappath("testboard.mdb")
Sql="Select * from Quest"
Sql="Select * from Quest where q_topic like '%"& q_topic
&"%' "
Set RS=Server.CreateObject("ADODB.Recordset")
RS.open Sql,Conn, 1, 3
if not rs.eof then
response.write" <b>มีกีะทู้นี้แล้ว</b> "
else
On Error Resume Next
rs.Addnew
rs("q_topic")=q_topic
rs("q_name")=q_name
rs("q_mail")=q_mail
rs("q_comment")=q_comment
rs("q_date")=q_date
rs.Update
rs.close
conn.Close
end if
%>
<br>
เพิ่มเรียบร้อยแล้ว<br>
<a href="showboard.asp">กลับหน้ากระทู้</a><br>
<%end if%> |
| showboard.asp การแสดงหน้าเว็บบอร์ด มีดังนี้ครับ |
| <%
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "DRIVER=Microsoft Access Driver (*.mdb);DBQ="
&Server.MapPath("testboard.mdb")
SQL="SELECT * FROM quest order by q_id desc"
Set RS =Server.CreateObject("ADODB.Recordset")
RS.open Sql,Conn,1,3
%>
<br>
<a href="newtopic1.asp">ตั้งกระทู้ ใหม่</a></font></font></div>
<table width="680" border="0" align="center"
cellpadding="0" cellspacing="1" bgcolor="#0033FF">
<tr bgcolor="#0099FF">
<td><div align="center"><font color="#FFFFFF"><strong><font
size="1" face="MS Sans Serif">หัวข้อกระทู้</font></strong></font></div></td>
<td><div align="center"><font color="#FFFFFF"><strong><font
size="1" face="MS Sans Serif">โดยคุณ</font></strong></font></div></td>
<td><div align="center"><font color="#FFFFFF"><strong><font
size="1" face="MS Sans Serif">เมื่อวันที่</font></strong></font></div></td>
</tr>
<%
Do While Not RS.EOF
%>
<tr>
<td width="57%" height="20" valign="top"
bgcolor="#FFFFFF"><font color="#size="1"
face="MS Sans Serif"><strong> </strong></font><font
size="1" face="MS Sans Serif"><strong><a
href="viwboard_2.asp?q_id=<%=rs("q_id")%>"
target="_blank"><%=rs("q_topic")%></a></strong></font><a
href="/jop/shownew_2.asp"><font color="#000000"
size="2" face="MS Sans Serif"> </font></a></td>
<td width="23%" valign="top" bgcolor="#FFFFFF"><div
align="center"><font color="#000000"
size="2" face="MS Sans Serif"><%=rs("q_name")%></font></div></td>
<td width="16%" valign="top" bgcolor="#FFFFFF"><div
align="center"><font color="#000000"
size="2" face="MS Sans Serif"><%=rs("q_date")%></font></div></td>
</tr>
<%
RS.MoveNext
Loop
rs.close
conn.close
%>
|
| viwboard.asp แสดงรายละเอียดในหัวข้อเมื่อคลิ๊กหัวข้อ มีดังนี้ครับดูยุ่งยากไปหน่อยน่ะครับ
ขอให้ประสบความสำเร็จน่ะครับ |
| <%
q_id=Request.QueryString("q_id")
Set Conn=Server.CreateObject("ADODB.Connection")
conn.open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.mappath("testboard.mdb")
Sql1="Select * from quest where q_id ="&q_id
Set RS =Server.CreateObject("ADODB.Recordset")
RS.open Sql1,Conn,1,3
%>
<html>
<head>
<title><%=rs("q_topic")%></title>
<meta http-equiv="Content-Type" content="text/html;
charset=windows-874">
</head>
<body leftmargin="0" topmargin="0"
marginwidth="0" marginheight="0">
<div align="center">
<div align="center"></div>
<div align="center"><font color="#000000"
size="3" face="MS Sans Serif"><strong>
</strong> <font color="#0000FF" size="2"
face="Arial"><a href="newtopic1.asp"
target="_blank">ตั้งกระทู้
</a></font></font></div>
<font face="MS Sans Serif" size="1"><font
size="2" face="MS Sans Serif">
<br>
</font></font>
<table width="680" border="0" cellpadding="0"
cellspacing="1" bgcolor="#0033FF">
<tr>
<td bgcolor="#0099FF"><div align="center"><font
size="3" face="MS Sans Serif"><strong><font
color="#FFFFFF"><%=rs("q_topic")%></font></strong></font></div></td>
</tr>
<tr>
<td height="54" bgcolor="#FFFFFF"><table
width="95%" border="0" align="center"
cellpadding="0" cellspacing="0">
<tr>
<td height="20" valign="top"> <font
color="#0000FF" size="2" face="MS Sans
Serif"><%=rs("q_comment")%></font></td>
</tr>
</table></td>
</tr>
<tr>
<td height="20" bgcolor="#FFFFFF"><div
align="right"><font size="2" face="MS
Sans Serif"><strong>กระทู้จาก <font
color="#FF0000"> <%=rs("q_name")%></font> อีเมล
<font color="#FF0000"><a
href="mailto:<%=rs("q_mail")%>"><%=rs("q_mail")%></a></font><a
href="mailto:<%=rs("q_mail")%>"> </a> เมื่อวันที่ <font
color="#FF0000"> <%=rs("q_date")%></font> </strong></font></div></td>
</tr>
</table>
<%
Set Conn= Server.CreateObject("ADODB.Connection")
Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("testboard.mdb")
Set rs= Server.CreateObject("ADODB.Recordset")
Sql2="Select * from anw where q_id="&q_id
RS.Open Sql2,Conn,1,3
%>
<br>
<table width="580" border="0" cellspacing="0"
cellpadding="3">
<%do while not rs.EOF%>
<tr>
<td bgcolor="#0099FF"><font color="#0000FF"
size="2" face="MS Sans Serif"> <font
color="#000000"><%=rs("a_comment")%></font></font></td>
</tr>
<tr>
<td><div align="right"><font size="2"
face="MS Sans Serif"><strong>ผู้ตอบกระทู <font
color="#FF0000"> <%=rs("a_name")%></font> อีเมล
<font color="#FF0000"><a
href="mailto:<%=rs("a_mail")%>"><%=rs("a_mail")%></a></font><a
href="mailto:<%=rs("a_mail")%>"> </a> เมื่อวันที่ <font
color="#FF0000"> <%=rs("a_date")%></font> </strong></font></div></td>
</tr>
<%rs.MoveNext
Loop
rs.Close
conn.Close %>
</table>
<br>
<font color="#000000" size="2" face="Arial"><strong>ตอบกระทู้
</strong></font><br>
<form name="form1" method="post" action="anw.asp">
<table width="500" border="0" cellspacing="5"
cellpadding="5">
<tr>
<td> </td>
<td><input name="q_id" type="hidden"
id="q_id" value="<%=q_id%>"></td>
</tr>
<tr>
<td width="124"><div align="center"><strong><font
size="2" face="Arial">คำตอบ</font></strong></div></td>
<td width="341"><div align="left">
<textarea name="a_comment" cols="40" wrap="VIRTUAL"
id="a_comment"></textarea>
</div></td>
</tr>
<tr>
<td><div align="center"><strong><font
size="2" face="Arial">ชื่อผู้ตอบ</font></strong></div></td>
<td><div align="left">
<input name="a_name" type="text" id="a_name"
size="30">
</div></td>
</tr>
<tr>
<td><div align="center"><strong><font
size="2" face="Arial">อีเมล</font></strong></div></td>
<td><div align="left">
<input name="a_mail" type="text" id="a_mail"
size="30">
</div></td>
</tr>
<tr>
<td> </td>
<td><input type="submit" name="Submit"
value="ตอบกระทู้">
<input type="reset" name="Submit2" value="ยกเลิก"></td>
</tr>
</table>
</form>
<font face="MS Sans Serif" size="1"><font
size="2" face="MS Sans Serif"> <br>
<!--BEGIN WEB STAT CODE---->
<SCRIPT LANGUAGE="javascript1.1" src="http://hits.truehits.in.th/data/n0024507.js"></SCRIPT>
<!--END WEB STAT CODE---->
</font><font color="#FF6600" size="2"
face="MS Sans Serif"><br>
</font></font></div>
</body>
</html>
|
| viwboard.asp
เก็บข้อมูลเมื่อมีผู้ตอบ มีดังนี้ |
<%
q_id=request.form("q_id")
a_name=request.form("a_name")
a_mail=request.form("a_mail")
a_comment=request.form("a_comment")
a_date=date()
Set Conn=Server.CreateObject("ADODB.Connection")
conn.open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.mappath("testboard.mdb")
Sql="Select * from anw"
Set RS=Server.CreateObject("ADODB.Recordset")
RS.open Sql,Conn, 1, 3
On Error Resume Next
rs.Addnew
rs("q_id")=q_id
rs("a_name")=a_name
rs("a_mail")=a_mail
rs("a_comment")=a_comment
rs("a_date")=a_date
rs("pic")=pic
rs.Update
rs.Close
conn.Close
%>
<br>
<strong>ตอบคำถามเรียบร้อยแล้ว<br>
</strong><br>
<a href="showboard.asp">กลับหน้ากระทู้</a> |
คลิ๊กเพื่อทดสอบเว็บบอร์ดครับ
|