诚毅小家|集美大学生活【集美大学,诚毅学院,水产学院,师范学院,美术学院,财经学院,体育学院,航海学院,集美学村,石鼓路,龙舟池】

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
查看: 870|回复: 1

[分享]建一个简单的论坛-DIY版

[复制链接]
发表于 2005-3-31 15:28:00 | 显示全部楼层 |阅读模式
大家在网上看到各种各样的ASP论坛是不是觉的做论坛很难呢,其实我们用简单的ASP语句就完全可以完成一个属于自己的论坛。下面我教大家如何用ASP来打造一个属于自己的论坛,自己的东西毕竟用起来爽吗。<br>
( _; {6 x0 l# x7 i1 e0 ^<br>
# o$ c  g/ x# n  C+ v2 s8 o& p同时,再复杂的论坛的写成也离不开下面的基本步骤,大家仔细看了。 <br>
: z+ T! k5 {+ |<br>) b" C' d9 c" X$ B5 Q' ~: f
一、建立文件! <br>! p; B+ Y& u$ G* ]1 a" u3 D4 P+ \7 y
最简单的论坛也要有几个必要的文件,就是: <br>3 K( }( e4 [  w
<br>
: \5 n# ?# c* \* C1、数据库,用来储存发表的帖子!-------命名为:bbs.mdb <br>3 z) @4 I& _  M" ]& A, Y  H, S
<br>- N0 N" q9 K# Y2 T# U
2、有数据库就必须连接数据库,该文件用来连接数据库:----命名为:conn.asp <br>3 B( w' ], j' D/ p
<br>) }. U* V! M+ P: G) i% O5 m
3、发表帖子的文件----命名为:say.asp <br>
( m+ V3 [7 ^9 e<br>
$ B$ d( H2 A5 X7 A* }& f& l- i4、保存发表帖子内容的文件-----命名为:save.asp <br>
7 z, j" M8 \8 _: M$ T" k  k* Z<br>
2 v; p% y, {0 Q7 q' j+ N5、显示帖子标题的文件------命名为:index.asp <br>
& f) e4 Z4 U3 q+ g' P9 r' {6 X2 C<br>
; V! Q1 O: x$ C( |" e( L/ V1 c3 U6、显示帖子内容的文件,即点击标题后所进入的页面-----命名为:show.asp <br>! B; Q7 w* l" V- y" i9 M* b$ z
<br>* Z9 d7 }+ ]5 U" {% R" E
建立文件是可以先建立文本文档,他的格式为&quot;文件名.txt&quot;,我们只需把它改为&quot;文件名.asp&quot; <br>
% m+ j" s, G  V4 B<br>/ Z3 W- ]! f# _1 y
二、各文件的主要内容 <br>6 _4 a3 m6 b/ {$ j+ _1 X
<br>
7 u& N4 l( w8 b5 |/ P, D! E' ~1、bbs.mdb <br>" B% `! O0 z& s' G8 `0 k4 {
<br>
% F3 K9 P6 t  S! t  {打开这个数据库,建立一个表,命名为bbs <br>
, ~* f3 n9 w0 A/ e$ R<br>+ K7 P% z4 s+ P6 I, L) V/ E
该表中有几个字段: <br>
' F5 Z+ ]/ G6 h2 G- V% q<br>
2 C2 [4 `' H! {( I' M9 R, Tid(自动给帖子编号),他的数据类型设为“自动编号” <br>
& X' M* `! Y8 y) N<br>9 c* Y) S3 T+ u: `1 r& R
name(用来储存发表的作者),数据类型为“文本” <br>
' k# j( H6 y* o5 X4 u6 X; R<br>
2 \1 }7 R2 `) H6 ^title(用来储存帖子的主题),数据类型为“文本” <br>
3 g! G. j9 g6 L6 x" ^<br>' T7 ?8 m) T; v! [, @! t- j0 q
body(用来储存帖子的内容),数据类型为“备注” <br>
+ U8 }" s- d1 ^' ~<br>7 M4 m" B: H" d. X0 K; F
2、conn.asp <br>5 m# Y; A' S5 g  q  d
源代码为: <br>
# n/ s1 s% u3 X, c. N( t&lt;% <br>$ q7 F. G+ V$ g) L* v0 }9 V7 g
Server.scriptTimeout=&quot;10&quot; <br>
6 C/ f0 `+ N% E+ L9 g% V7 x: [; s3 x, Tconnstr=&quot;DBQ=&quot;+server.mappath(&quot;═bbs═.mdb&quot;)+&quot;;DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};&quot; <br>8 w9 V1 i& G4 }' F( l2 ]
set conn=Server.CreateObject(&quot;ADODB.connection&quot;) <br>
% z! Q- f& r) Y' R) M) }1 s+ econn.open connstr <br>6 J9 y' t) m# n, f* u( E: u
%&gt; <br>
' x& H2 z; u5 d$ s) e<br>. d( e  i8 Q1 {+ e0 t6 T; f+ W
这个文件就是这样,代码内容大家就自己研究,这个我也不知道怎么说才好! <br>
2 \5 t0 O5 k$ M9 H6 Y<br>
+ w+ U0 B2 r# C2 h1 X' ?3、say.asp <br>
" ^- x# f* _( D( ^# z<br>3 U0 q$ s9 d; C8 x
源代码为: <br>
, f( w% I) f; G+ y! x&lt;form method=&quot;POST&quot; action=&quot;save.asp&quot;&gt; <br>" ?7 U4 Z; V- F
&lt;p&gt;大名:&lt;input type=&quot;text&quot; name=&quot;name&quot; size=&quot;20&quot;&gt;&lt;/p&gt; <br>
) p/ w+ Z# c! {. k7 M&lt;p&gt;标题:&lt;input type=&quot;text&quot; name=&quot;title&quot; size=&quot;91&quot;&gt;&lt;/p&gt; <br>' p3 S. ~$ ^0 {  u4 E; Q* M
&lt;p&gt;内容:&lt;/p&gt; <br>2 K+ C8 |# f' g) I" k% S
&lt;p&gt;&lt;textarea rows=&quot;11&quot; name=&quot;body&quot; cols=&quot;97&quot;&gt;&lt;/textarea&gt;&lt;/p&gt; <br>
0 \1 I* o% {% h3 Z  s&lt;p&gt; &lt;/p&gt; <br>4 S; O" K$ t  r/ f' g
&lt;p&gt;&lt;input type=&quot;submit&quot; value=&quot;提交&quot; name=&quot;B1&quot;&gt;&lt;input type=&quot;reset&quot; value=&quot;重置&quot; name=&quot;B2&quot;&gt;&lt;/p&gt; <br>% x: V& B( r9 I* ~/ s
&lt;/form&gt; <br>* T1 P( z3 F# e; G; Z. U
大家应该看得懂的,这个根本就是html语法,对的,根本就是,这个只是发表的界面 <br>
4 z1 D# N  E( q1 x- ?不过要注意这一句&lt;form method=&quot;POST&quot; action=&quot;save.asp&quot;&gt;,他把用户所填的内容发送至save.asp这个文件,下面就看save.asp这个文件吧! <br>7 x3 s' ?4 }! n3 q$ p
<br>
4 N1 y( g+ Y; f! \4、save.asp <br>
; z$ k' ^+ l$ W" ~0 ]3 n5 n7 \<br>
7 |# {/ u5 Q4 }! E+ F! J6 j源代码: <br>
! J, ~7 h" V2 I0 q&lt;!--#include file=&quot;conn.asp&quot;--&gt; <br>
. Y/ R* K- R* T! `- I9 T+ u, p&lt;%name=Replace(Request.Form(&quot;name&quot;),&quot;'&quot;,&quot;''&quot;) <br>
: Y7 U+ l6 _: M4 F8 O, B9 Z0 Ptitle=Replace(Request.Form(&quot;title&quot;),&quot;'&quot;,&quot;''&quot;) <br>
( ]( D2 Z* ^$ {! }7 |body=Replace(Request.Form(&quot;body&quot;),&quot;'&quot;,&quot;''&quot;) <br>
& C' c7 Z' t# Q%&gt; <br>
% U8 }. l1 z% k' Z& C&lt;%if name=&quot;&quot; or title=&quot;&quot; or body=&quot;&quot; then%&gt; <br>
- f1 q/ F( n* t- a; ?0 L& z请&lt;a href=&quot;****:history.go(-1)&quot;&gt;后退&lt;/a&gt;填写完整资料,你才能发表帖子! <br>
% @2 d& f  O% v2 l% l' J&lt;%else%&gt; <br>
, y) @9 Z) e5 \0 j. p- a$ c8 e, {8 o! ?&lt;%set savebbs=conn.execute(&quot;insert into bbs(name,title,body)values('&quot;&name&&quot;','&quot;&title&&quot;','&quot;&body&&quot;')&quot;)%&gt; <br>$ f$ X* L/ Y2 @8 s3 p- u# {8 ~/ a+ Y
发表成功!&lt;a href=&quot;index.asp&quot;&gt;查看帖子&lt;/a&gt; <br>2 x8 u" }. K# s# J& \, l9 O
&lt;%end if <br>4 A  t) ^% E: Q* |; E
set savebbs=nothing <br>$ \) N( K3 ~$ i  c1 V% v- L! q( t
%&gt; <br>8 H0 k6 l* E& ]3 ]$ g
<br>' \) @+ {. {2 u7 M( T
第一句:&lt;!--#include file=&quot;conn.asp&quot;--&gt;,意思是插入conn.asp文件,即与数据库进行连接! <br>
$ g: w7 {) b( Tasp语句必须用&lt;% %&gt;这个格式包含起来,而插入文件的语句就不用, <br>2 {0 [2 x0 e7 R: }, D1 N, X3 E
接下来几句: <br>
, U' d- H6 V# S# F0 J! n: e# yname=Replace(Request.Form(&quot;name&quot;),&quot;'&quot;,&quot;''&quot;) <br>
* e( {  O: T7 A! b. K6 {4 Htitle=Replace(Request.Form(&quot;title&quot;),&quot;'&quot;,&quot;''&quot;) <br>2 F, }7 t9 F, O
body=Replace(Request.Form(&quot;body&quot;),&quot;'&quot;,&quot;''&quot;) <br>- l" F+ O' B( _5 d9 |: d: V
<br>8 O8 r/ F% q3 V
“Replace(Request.Form(&quot;name&quot;),&quot;'&quot;,&quot;''&quot;)”意思是接收表单中名为name的文本框发来的数据, <br>. k3 ~4 `- x% A8 t: [
而“name=Replace(Request.Form(&quot;name&quot;),&quot;'&quot;,&quot;''&quot;)”则是把发来的数据储存在name变量中, <br>
) e/ }6 n0 i5 K7 P% Y+ I" o如果你这样:“abc123=Replace(Request.Form(&quot;name&quot;),&quot;'&quot;,&quot;''&quot;)” <br>
2 N+ G% a+ r' s! v) n6 d& G就是把表单中名为name的文本框发来的数据储存在abc123变量中 <br>
) d1 U; t8 Z2 R<br>
5 g/ A2 k4 q& t/ \: @+ y接着:if name=&quot;&quot; or title=&quot;&quot; or body=&quot;&quot; then <br>6 R, `/ R% Y6 O$ [; ~7 h3 r1 Y& I1 U) Q
判断name、title和body变量中是否没有填写内容,即为&quot;&quot;,如果这样,就执行这一语句: <br># M2 J# C& P2 f7 q( k
“请&lt;a href=&quot;****:history.go(-1)&quot;&gt;后退&lt;/a&gt;填写完整资料,你才能发表帖子!” <br>+ s5 X9 q- ?- N! a# F9 Y) U
该语句属于html语法,大家都看得懂的! <br>
$ y# I# _6 Y: ~; t* ^' r<br>5 v4 C( }% [7 u% O& K5 E6 f, ^* V
&quot;&lt;%else%&gt;&quot;就是说“当if……then不成立(即是说所有内容都已经填写)”,就执行语句: <br>
) C, ~0 J! u" Z“&lt;%set savebbs=conn.execute(&quot;insert into bbs(name,title,body) values('&quot;&name&&quot;','&quot;&title&&quot;','&quot;&body&&quot;')&quot;)%&gt; <br>
7 _3 {. a' G. u7 ~3 M9 b发表成功!&lt;a href=&quot;index.asp&quot;&gt;查看帖子&lt;/a&gt;” <br>/ [: e+ y. S3 D1 T+ l: Q
<br>2 ?! B6 r+ S! p' B5 K& s$ Z
&quot;set save=conn.execute&quot;属于固定的语句,不过savebbs可以自己修改,&quot;=&quot;后面的就难解释了: <br>4 h8 e# p6 P! k; ^! y; N( v
insert into bbs(name,title,body)意思是向名为bbs的表(在建立数据库时已经建立的表) <br>% X$ I8 F- x- J
中的name,title,body字段插入,插入什么呢?看接下的values('&quot;&name&&quot;','&quot;&title&&quot;','&quot;&body&&quot;')&quot;) <br>
) y; K% {1 Z/ Z4 {5 e7 Uvalues是“值”的意思 <br>9 P" G) V& U' {- ~4 S" b" k
就是插入向量name,title,body,向量用格式'&quot;&name&&quot;'表示 <br>. O( ^6 Y$ r0 Q" j" m3 ~4 s; e* T
<br>
- I; I' i- A  g8 e9 _- T9 _$ N最后:end if就是结束if……then <br>
7 K4 P/ S( w0 }/ Eset savebbs=nothing可以说是关闭掉: <br>; U' Q" u' c. I+ s; J
set savebbs=conn.execute(&quot;insert into bbs(name,title,body) values('&quot;&name&&quot;','&quot;&title&&quot;','&quot;&body&&quot;')&quot;) <br>0 p) F/ t. ]2 r/ L
<br>" m2 z" S9 @  O: s( q; w
<br>5 Z" S5 y, k/ s4 {& e- d
5、index.asp <br>; d  l, t7 U. P1 Z
源代码: <br>* t6 z. {& J" ]0 [
&lt;!--#include file=&quot;conn.asp&quot;--&gt; <br>
. z9 h5 ]: ]2 S7 {&lt;b&gt;&lt;a href=&quot;say.asp&quot;&gt;发表帖子&lt;/a&gt;&lt;/b&gt;&lt;br&gt;&lt;br&gt; <br>/ R) U8 H. @+ E1 T8 D. }
&lt;div align=&quot;center&quot;&gt; <br>
2 F8 g0 d1 L4 F+ L1 `% J6 x&lt;center&gt; <br>+ f, X: W6 W' y, ~
&lt;table border=&quot;0&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; style=&quot;border-collapse: collapse; &quot; bordercolor=&quot;#000000&quot; width=&quot;100%&quot; height=&quot;26&quot;&gt; <br>
' H1 B6 x2 ~# w&lt;tr&gt; <br>
1 i& B0 A- v' J) u6 I1 k8 T&lt;td width=&quot;17%&quot;&gt;&lt;b&gt;作者&lt;/b&gt;&lt;/td&gt; <br>
2 J) `# @. Y" P6 Y&lt;td width=&quot;83%&quot;&gt;&lt;b&gt;主题&lt;/b&gt;&lt;/td&gt; <br>
" K9 k; Y, Q$ r) a# r&lt;/tr&gt; <br>- V0 @3 K2 N- I5 n8 w8 l; l! v
&lt;/table&gt; <br>; B# K  c/ \; d7 }5 h! q
&lt;/center&gt; <br>! x1 V0 y4 l( L5 _* X* N3 h
&lt;/div&gt;&lt;hr size=&quot;1&quot;&gt; <br>
3 n- _, n3 [+ w% b&lt;%i=1 <br>/ T& H7 B# |6 T; P! C: d( y
set showbbs=conn.execute(&quot;select*from bbs order by id desc&quot;) <br>7 K( s1 W; E8 e6 {3 P  U; _
do while not showbbs.eof <br>+ G+ a1 U4 ^6 E, ^
%&gt; <br>
) K$ ^( a1 [- M% }" I% x&lt;div align=&quot;center&quot;&gt; <br>7 o9 G0 \  x' N
&lt;center&gt; <br>- ^2 o. w9 I$ w  S( }; {
&lt;table border=&quot;0&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; style=&quot;border-collapse: collapse; &quot; bordercolor=&quot;#000000&quot; width=&quot;100%&quot; height=&quot;20&quot;&gt; <br>2 ?6 W, N3 P" h, J2 @7 `
&lt;tr&gt; <br>  [# _8 b% v8 H1 V( F2 H
&lt;td width=&quot;17%&quot;&gt;&lt;%=showbbs(&quot;name&quot;)%&gt; &lt;/td&gt; <br>. H$ p* c9 M# S' Q  w$ J
&lt;td width=&quot;83%&quot;&gt; <br>
, {4 `0 I  F% q* ^8 j&lt;a href=&quot;show.asp?id=&lt;%=showbbs(&quot;id&quot;)%&gt;&quot;&gt;&lt;%=showbbs(&quot;title&quot;)%&gt;&lt;/a&gt;&lt;/td&gt; <br>7 r! d1 I  t9 V3 e' Y4 D* ]" x9 I
&lt;/tr&gt; <br>
0 i4 ?5 T: T% c4 N1 r5 d&lt;/table&gt; <br>' W" r1 n& W# Z2 |. Y8 C
&lt;/center&gt; <br>8 r: E3 V  C# w2 [% m5 Y8 v% @9 {5 e
&lt;/div&gt;&lt;hr size=&quot;1&quot;&gt; <br>
7 a! |! d  u8 q, v2 j4 s7 f5 E& h( {&lt;%i=i+1 <br>
( t& b+ n( i3 uif i&gt;50 then exit do <br>
1 w* w3 Y+ O0 K$ b9 m6 N- ^showbbs.movenext <br>
+ F2 t+ J: S. |5 ILoop <br>; z% z: Y3 e) n1 U2 k  P; G
showbbs.Close <br>7 b+ Z) u3 T& s, _7 v/ ^+ o
set showbbs=nothing <br>
5 R* B5 c* H% A) L* m% R! H7 T%&gt; <br>2 {8 c, L* `/ y2 ^1 T- t1 q6 ]
<br>
4 |5 I  k, D$ k4 \: m' u这个文件就不一句一句的讲了 <br>& i2 r$ y% J* ^  `) P% J$ Y% X
主要讲精华部分: <br>
, @; K& C  b+ Fset showbbs=conn.execute(&quot;select*from bbs order by id desc&quot;) <br>
3 ^- X  Q2 S, v" D$ H意思是:向数据库中的bbs数据表查询数据,并以id排顺序, <br>* m; C9 B) l- n- O. q
还有这么一句:&lt;%=showbbs(&quot;name&quot;)%&gt; <br># I" _3 k6 l! j# ?7 t
就是显示数据表中的name字段的数据,这里的showbbs就是set showbbs=……中的showbbs <br>2 ^1 Z& ]6 I7 R
代码中的i=1和i=i+1 <br>
# t8 u6 |/ e4 f' T  A, Aif i&gt;50 then exit do <br>
  O3 A9 r2 ]- Y' T9 Eshowbbs.movenext <br>, V  D/ u2 C& B7 W* L) y
Loop <br>
  p1 A) H; Y7 ~) O9 Z7 `: _showbbs.Close <br>- x$ \9 A0 G/ t3 n  g6 x
set showbbs=nothing <br>
" Q- H) h8 X8 H! I* C<br>
$ `0 _% I- |' c; `& q- I2 |; {+ _% g这几句属于循环语句,这里就不理他,理解了也不太好用,因为他只显示50张贴子! <br>, Q/ Y0 L( w# F
if i&gt;50 then exit do中的50可以修改 <br>
3 d( O- E$ ~- t- q5 W3 f# x. y但我们做论坛必须把帖子分页,又因为分页这个语句太复杂,我想就不讲了,等这一个弄懂了才来弄 <br>
7 E% M# Y4 z0 I  i还有一句很有用的: <br>8 ~8 W9 I" I  F+ C* K0 o
&lt;a href=&quot;show.asp?id=&lt;%=showbbs(&quot;id&quot;)%&gt;&quot;&gt;&lt;%=showbbs(&quot;title&quot;)%&gt;&lt;/a&gt; <br>; i& Y  g" z0 A9 Z. f
里面的超连接:show.asp?id=&lt;%=showbbs(&quot;id&quot;)%&gt;,注意:这里的超连接把帖子的id包含了, <br>
9 P! T" l0 n) s. C; a等一下在show.asp文件中就有用了 <br>
( }& B/ `% \$ l<br>
  j3 ]9 H) a7 v5、show.asp <br>
  @* R$ M$ S6 S: w9 _' Z源代码: <br>5 G( Y& \% `6 y
<br>
7 q& G" v- d' t/ t7 r&lt;!--#include file=&quot;conn.asp&quot;--&gt; <br>
5 n' C: g+ s5 `5 z&lt;%id=request.querystring(&quot;id&quot;)%&gt; <br>
% Y/ a  w8 e- n0 a&lt;%set show=conn.execute(&quot;select*from bbs where id=&quot;&id&&quot;&quot;)%&gt; <br>: ?( o: m  w# q0 }! O* u
&lt;a href=&quot;index.asp&quot;&gt; <br>
" |3 Y+ K. Y" d9 h( |: m&lt;b&gt;回到首页&lt;/b&gt;&lt;/a&gt;&lt;br&gt;&lt;b&gt;&lt;a href=&quot;say.asp&quot;&gt;发表帖子&lt;/a&gt;&lt;/b&gt;&lt;br&gt;&lt;hr size=&quot;1&quot;&gt; <br>
; t, h8 D" I1 E0 S) b8 G&lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; style=&quot;border-collapse: collapse&quot; bordercolor=&quot;#111111&quot; width=&quot;100%&quot; height=&quot;180&quot;&gt; <br>% J- e5 y8 f! S8 k# A& T; j7 B
&lt;tr&gt; <br>  r3 s  i6 |) O9 B& ]$ i: y
&lt;td width=&quot;21%&quot; height=&quot;22&quot;&gt;&lt;b&gt;作者:&lt;/b&gt;&lt;%=show(&quot;name&quot;)%&gt;&lt;/td&gt; <br>
% g0 j' b1 Z( Q: n, c&lt;td width=&quot;79%&quot; height=&quot;22&quot;&gt;&lt;b&gt;主题:&lt;/b&gt;&lt;%=show(&quot;title&quot;)%&gt;&lt;/td&gt; <br>3 T% K( Y! B  V5 }; F
&lt;/tr&gt; <br>
" s. }# l& ]  a# K& r/ g&lt;tr&gt; <br>
& S$ y) o  H! m$ |/ {+ A! I&lt;td width=&quot;100%&quot; colspan=&quot;2&quot; height=&quot;158&quot; valign=&quot;top&quot;&gt;&lt;b&gt;&lt;br&gt;内容:&lt;/b&gt;&lt;%=show(&quot;body&quot;)%&gt;&lt;/td&gt; <br>! S& }9 L) y% ]3 f+ U  J( [
&lt;/tr&gt; <br>
% ^1 c$ O6 |) E9 l! M5 S- {&lt;/table&gt;&lt;%set show=nothing%&gt; <br>/ \  F1 z) e6 k& i1 b$ K
<br>3 W7 k0 v/ V5 {) s+ }& T, K! b6 V# `$ B
劲语句---精华语句: <br>% \2 O: p2 U; e, ~0 M
id=request.querystring(&quot;id&quot;) <br>
7 C9 m7 Q# }  D在讲解index.asp文件的后面已经说到:show.asp?id=&lt;%=showbbs(&quot;id&quot;)这一句, <br>; y$ `$ D1 d3 U$ \: j& h2 V
id=request.querystring(&quot;id&quot;)就是把地址栏中的id的值读取下来, <br>& _- x0 T; t) E; ^3 {8 _4 f
因为index.asp文件中的超连接点击后,地址栏就为http://…………/show.asp?id=数字, <br>- W) o7 k' M5 N+ d$ p& z7 |
所以show.asp使用id=request.querystring(&quot;id&quot;)语句把数字读取下来 <br>
6 f( a" w7 N8 W- m: {! l' e/ v0 [于是接着使用:set show=conn.execute(&quot;select*from bbs where id=&quot;&id&&quot;&quot;) <br>/ D& F- d! \# W& u% L
向数据表查询id为这时读取下来的数字的帖子,即where id=&quot;&id&&quot; <br>" J! Q$ Q' j" L6 j3 n1 C! W: t3 \4 P
最后&lt;%set show=nothing%&gt; <br>
; {/ Q1 H; ~% I<br>
" o% [' U, H9 k$ D  O2 D/ j* H6 R4 R好了,一个简单的DIY论坛就这样完成了
发表于 2005-3-31 16:38:00 | 显示全部楼层
高手不看也懂,我不懂
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|小黑屋|诚毅小家 ( 小家社区工作室 闽ICP备05007965号 )

GMT+8, 2024-5-3 20:49 , Processed in 0.096350 second(s), 24 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表