Discuz!4.0.0全攻略
2 a( K! D1 ^2 W* W6 Y2006-11-15 17:05:46 / 个人分类:经验
7 e7 _& x6 }1 I' O3 o. }
% r( W3 R0 h" [# e+ j6 G
安装使用篇
6 K* j7 Y2 B" R6 _$ b
1.Discuz安装使用精华集 作者:全球通
3 M! B* l( A) H' ?6 _
http://www.discuz.net/viewthread ... hlight=%B0%B2%D7%B0
$ ~' |( W0 F$ X4 R2 T; c
2. Discuz! 论坛安装图解傻瓜教程 作者:Aikko
8 I2 e" a& S, x8 i+ F: ~$ Z
http://www.discuz.net/viewthread.php?tid=43210
# b3 i6 w/ n. G1 d3 X, V3.安装论坛前环境配置 作者:爱乐之人
3 }: D+ c6 N- R2 r# J0 {
http://www.discuz.net/viewthread ... hlight=%B0%B2%D7%B0
3 U; w. c( E; ?) d0 B5 S4 j! {3 [4.关于部分插件的反安装 作者:lu5266,魔焰男孩
) A2 l) @& _; \% G8 G
http://www.discuz.net/viewthread ... hlight=%B0%B2%D7%B0
5 [) W" h6 m1 W4 V0 r F
http://www.discuz.net/viewthread ... hlight=%B0%B2%D7%B0
, a# k, ]; _/ i. Q1 k5 H! O5.Win下IIS+php+mysql+zend+discuz!完整安装图解版 作者:茄子
, A6 H" w( K0 L* z3 K
http://www.discuz.net/viewthread ... hlight=%B0%B2%D7%B0
& |7 }2 c) n# z2 v& k) G6.关于phpwind部分版本不能成功转换的说明
, m2 Z7 H6 w5 o- _) a9 bhttp://www.discuz.net/viewthread.php?tid=1244462 C* P1 m- u: y! U" v7 b
7.Discuz!代码自定义、修改积累提供
4 ]/ t1 O$ ?/ Y0 t0 E, h; R; O
http://www.discuz.net/viewthread ... 8%D2%E5%B4%FA%C2%EB
1 e8 D5 [2 A/ J5 G) T$ P# j' @. B" w6 ~) x& g% C, b
升级篇
' l4 ]+ G6 u) `( Y1 u1.关于转换或者升级以后出现乱码情况的说明 作者:ramboo
/ D& h5 q. H8 V: v& S
http://www.discuz.net/viewthread ... &extra=page%3D2
7 N$ l4 {. {6 B# n0 g3 H; v6 k% |2.2.5F升级没有成功解决办法 作者:ramboo
u. U" l2 |% P1 d
http://www.discuz.net/viewthread ... &extra=page%3D2
0 d( ?+ ~, F' p6 l8 {8 y
' I! P0 s0 a* r8 V3 s g问题解答篇
, p: W" @$ Q7 w6 J4 D; c
M3 s0 _+ \0 o; h& |1.错误信息如下:如何解决
/ q( b; u v! j6 b
CODE:
: G9 |7 P# ^1 C( P
) X5 H+ b6 s$ x0 V- h. E! F' nDiscuz! info: MySQL Query Error Time: 2005-11-17 3:07am scrīpt: /index.php SQL: SELECT * FROM cdb_settings WHERE variable NOT IN ('bbrules', 'bbrulestxt', 'maxonlines', 'welcomemsg', 'welcomemsgtxt') Error: No Database Selected Errno.: 1046 Similar error report has beed dispatched to administrator before.
+ v0 G: U* B+ \5 v7 v
答:是因为config.inc.php里的$dbname没有设置,如果权限足够并且$dbname没有设置也是这种提示
) `% W* u3 M- ?0 x& d2.打开html页码以后,发的贴子不能正常分段, 该如何解决?
5 |: M9 `* L. P- E9 X+ J9 w
答:把板块使用HTML权限取消,然后给用户组开这个权限,用户在发贴的时候选择使用HTML代码就行
8 T4 R2 a) @# W+ [5 e5 d! x
3.MYSQL常见出错代码有哪些? 作者:童虎
1 c) [. |/ R# A: _9 ^8 X: h4 m. A
常见错误!
* p8 @1 H1 G/ `7 v. Q0 S
( M8 p, k$ M# Q
1016错误:文件无法打开,使用后台修复或者使用phpmyadmin进行修复。
8 g, l& t Z+ e& X0 V# T
1044错误:数据库用户权限不足,请联系空间商解决
7 V4 [2 @1 f. J6 L# X) d& f4 e
1045错误:数据库服务器/数据库用户名/数据库名/数据库密码错误,请联系空间商检查帐户。
) l8 x" l \" f5 x1054错误:程序文件跟数据库有冲突,请使用正确的程序文件上传上去覆盖。
; W- A" C0 \; M v9 d
1146错误:数据表缺失,请恢复备份数据.
1 P1 U5 S* ?. U% `! g$ Y) D! f) c
2002错误:服务器端口不对,请咨询空间商正确的端口。
; B9 L/ K' |' I' ?4 h1 O1 G
2003错误:mysql服务没有启动,请启动该服务
) ] d% y6 D: b8 o# e5 q. b1005:创建表失败
5 f& [, E* R+ J+ E& k5 e; ]1006:创建数据库失败
& Y0 M; D2 x6 S9 J5 p7 D1007:数据库已存在,创建数据库失败
+ @/ ], j5 i0 _1008:数据库不存在,删除数据库失败
1 x! n6 y- G+ @1 j1 ~9 S2 ~8 M
1009:不能删除数据库文件导致删除数据库失败
& V+ s* P0 a- `7 O$ `
1010:不能删除数据目录导致删除数据库失败
3 i% n/ ?, |( k1011:删除数据库文件失败
1 [3 m; u0 o# [6 J: l4 {: ~1012:不能读取系统表中的记录
5 ?) A* T0 ?% G1 }- i1020:记录已被其他用户修改
' U1 Z5 x3 i l/ u5 j2 ^1021:硬盘剩余空间不足,请加大硬盘可用空间
$ U, k: s" d: Z8 L$ ?) I
1022:关键字重复,更改记录失败
7 d; c# x* X6 q7 i! s
1023:关闭时发生错误
8 I- |, X* ?+ l8 |7 g3 F( B/ J1024:读文件错误
2 W- E# E2 \% W7 q3 u" f8 e
1025:更改名字时发生错误
5 K9 V/ |( X; K8 d* v
1026:写文件错误
- o8 i8 f7 g( v# c' T) s3 j3 {6 b1032:记录不存在
5 H# f# G/ n' p6 Q
1036:数据表是只读的,不能对它进行修改
! h. W# y6 o, r/ N3 g" F& u1037:系统内存不足,请重启数据库或重启服务器
) i7 \# j- e, M) ]
1038:用于排序的内存不足,请增大排序缓冲区
I) @- Y. y7 f1040:已到达数据库的最大连接数,请加大数据库可用连接数
( }- C$ Y) j* b
1041:系统内存不足
- h8 [ I& k2 N0 X2 Y8 \3 A1042:无效的主机名
6 A) E S0 m5 C# z: ^4 m$ N o1043:无效连接
$ m/ l! I9 G0 ~- ^
1044:当前用户没有访问数据库的权限
8 c. q% i/ ^# B/ y, ]" T
1045:不能连接数据库,用户名或密码错误
6 l3 e; S0 s* a0 `) i" U1048:字段不能为空
" b: G' i2 ?2 j! p, o
1049:数据库不存在
8 y5 `! [6 m) T; j, K6 m: a1050:数据表已存在
3 q8 u& R, X/ c8 c% ?# C7 p
1051:数据表不存在
- C4 l$ @3 v4 t1 w% s% D1054:字段不存在
$ G) H. n; i1 _0 l a
1065:无效的SQL语句,SQL语句为空
! \( q7 `) ]* _2 }1 l3 j1081:不能建立Socket连接
" E* b$ }" [* K) c% t0 X% |1114:数据表已满,不能容纳任何记录
. a0 p# ?2 \$ l& T8 E) e( {1116:打开的数据表太多
9 b) F4 H* H/ B- n1129:数据库出现异常,请重启数据库
0 `4 a* v$ N. D2 M
1130:连接数据库失败,没有连接数据库的权限
* _# B; }# v5 T/ g5 L M4 k0 b% _1133:数据库用户不存在
2 K& m' P; u% E$ a7 Z2 h& m7 M1141:当前用户无权访问数据库
4 s7 U" z: t" Y1142:当前用户无权访问数据表
( w' k- l# B& k" G+ G y1143:当前用户无权访问数据表中的字段
. e; f7 t" l1 u8 i0 `
1146:数据表不存在
+ h, a8 b* r3 k4 r) o- J7 y
1147:未定义用户对数据表的访问权限
& F6 @! S5 e. D: k" I0 E: Y) Z! R1149:SQL语句语法错误
% j9 v5 L" C+ g5 |; z; J
1158:网络错误,出现读错误,请检查网络连接状况
+ c3 [. O8 P1 `1159:网络错误,读超时,请检查网络连接状况
7 W1 R, F( W* {0 v2 k5 ?
1160:网络错误,出现写错误,请检查网络连接状况
: T: B* {" t0 I1 T% P T1161:网络错误,写超时,请检查网络连接状况
& I% k0 q3 [6 ?7 ?# M8 O
1062:字段值重复,入库失败
B' V' |) H0 O0 z! {% {6 {1169:字段值重复,更新记录失败
1 G5 j3 w3 ?) i; @, K: l1177:打开数据表失败
1 H5 |# z# {" G$ o1180:提交事务失败
( ~( K, ]7 i8 m/ A- p7 `
1181:回滚事务失败
% F5 R! X; v* n) j
1203:当前用户和数据库建立的连接已到达数据库的最大连接数,请增大可用的数据库连接数或重启数据库
% t& t6 G1 F P+ B9 v
1205:加锁超时
' l% y1 s7 e4 f1211:当前用户没有创建用户的权限
$ _2 [9 l; I: w i0 p: R+ p1216:外键约束检查失败,更新子表记录失败
: M' F. n* d8 O9 n% K9 M
1217:外键约束检查失败,删除或修改主表记录失败
( T B- L8 I% h3 e- R1 E
1226:当前用户使用的资源已超过所允许的资源,请重启数据库或重启服务器
1 l% q1 O. Y \- K1227:权限不足,您无权进行此操作
* d7 [( I# E9 H. `- e1235:MySQL版本过低,不具有本功能
; w, o) {9 |, q2 [4 v/ S3 c
4.mysql远程连接方法: 作者:深海
$ s& i1 e" x0 z4 w9 q. [" D
http://www.discuz.net/viewthread ... 1%26filter%3Ddigest
7 `: A! T1 ~9 i
5.升级为4.0版本以后,出现问题,错误提示如下:
$ `0 V! C$ o- c
CODE:
* S' u% n% O+ {, |$ W
) ]( o8 i f5 q
Discuz! info: MySQL Query Error
' Q4 B, _# L) N: r
5 C9 t% O7 s/ o! d% {& G. OUser: segaa
. m: b) _2 W0 }Time: 2005-11-21 6:18am
, Q2 d0 l7 j0 w1 S: f2 b7 v: K7 C- Ascrīpt: /discuz/post.php
& c+ E5 y. u- Q0 l* I
0 ^, {' p# q# p3 V
SQL: INSERT INTO cdb_threads (fid, readperm, price, iconid, typeid, author, authorid, subject, dateline, lastpost, lastposter, displayorder, digest, blog, poll, attachment, moderated)
) d6 ~! C, V+ ]6 i" m
VALUES ('6', '0', '0', '25', '0', 'segaa', '31727', 'hi', '1132525129', '1132525129', 'segaa', '0', '0', '0', '0', '0', '0')
3 }: L6 F, ^6 o4 t
Error: Duplicate entry '0' for key 1
\: b* \$ X5 E" F
Errno.: 1062
1 p, K0 Q: z$ p' N6 i0 h5 S6 K
1 i; n5 `6 d& M& ~1 `% W2 zSimilar error report has beed dispatched to administrator before.
8 J! n5 z; W3 q$ D( h5 p- d/ V: I答:将cdb_threads 的tid字段设置为auto_increment
* }( h, G, K1 E& f- s# U建议您对照标准表结构将所有的表的auto_increment 这个属性对应添加上
3 n# X; \, R8 e7 H% L- T8 C9 B6.用repaire.php修过了,还是出现如下错误
% l4 k/ e* {6 w, r- Y0 ]- x% T* U
CODE:
# Z2 m5 I; w) j
0 ?: \# }- j- o! w1 i% }6 Q
There seems to have been a problem with the database of your Discuz! Board
( T9 `; p# J U( }8 h" Y
@0 |7 |8 k4 p& R
Discuz! info: MySQL Query Error
1 E I# u7 J7 }8 S: [
; w1 P+ Z1 z; L, `& @; CTime: 2005-11-10 11:26am
* s, v- r( n8 ^; l! F
scrīpt: /viewthread.php
7 p$ t" H# t! k- i% H5 s. q
2 B$ ^3 j; E/ F9 l7 d0 ]
CODE:
/ V" Q5 R0 i+ S4 B' }5 ^' X2 n8 F! G5 _' q5 { ?. _
SQL: SELECT m.uid AS discuz_uid, m.username AS discuz_user, m.password AS
2 L. f6 m: d, s5 o) e6 J1 s' D; V2 f
discuz_pw,
. s2 u' B0 @5 Z/ w9 r m.secques AS discuz_secques, m.adminid, m.groupid, m.groupexpiry,
5 J7 e- Y8 z' [% t8 bm.extgroupids, m.email, m.timeoffset,
, L, ]! I* K) T" }4 f C* _
m.tpp, m.ppp, m.posts, m.digestposts, m.oltime, m.pageviews, m.credits,
9 i8 B1 s' ?- X3 j0 k
m.extcredits1, m.extcredits2, m.extcredits3, m.extcredits4, m.extcredits5,
- D! {7 Z: b: v3 m m.extcredits6, m.extcredits7, m.extcredits8, m.timeformat, m.dateformat,
& S5 j5 Z2 _' {+ s5 \m.pmsound, m.sigstatus, m.invisible,
4 h7 D4 D' U& k* V4 x6 Y4 K
m.lastvisit, m.lastactivity, m.lastpost, m.newpm, m.accessmasks
0 T* f3 ^( R, @) R6 [4 ~ FROM cdb_members m WHERE uid='442'
$ N3 Z, B5 J, U. K; X4 Y/ N
Error: Lost connection to MySQL server during query
1 Y* ? ]8 ~" q' c2 ^4 N
Errno.: 2013
' z( L& J; J5 M& S' u! O
, @4 @4 s( E" x6 O4 A
Please check-up your MySQL server and forum scrīpts, similar errors will not be
( }# K% \9 c3 ~4 x4 freported again in recent 24 hours
" t+ h3 Q$ U: `; z' F) p
If you have troubles in solving this problem, please visit Discuz! Community
7 @- S( f+ J& _0 b
解决方法:
- w& S3 a0 q7 ]" D5 T" L
出现这个错误的时候大概有多少人在线?在线用户更新时间设置的是多少?mysql服务器是否和web服务程序在同一台主机上?
; M N5 D; T1 Y
4 A' a4 R& Y* ~' b如果是独立主机请把mysql的配置文件和系统软硬件环境贴上来看看吧.应该是配置的问题
+ [( e8 K3 _! e' e, V' ^ i
# k# H9 ~9 Q, I, O+ f$ T9 H2 W
如果是虚拟主机应该也是多人共用一台mysql服务器的.请主机服务商业检查一下是否mysql的最大连接数已经不能满足现在的负载了,如果确定负载没有问题可以在mysql的配置文件的mysqld分类下加上
6 {, H/ m' k3 c
CODE:
( j( w2 R5 F1 H: u, `6 n& [( `) l, F$ t
skip-name-resolv
! k' i% `, e! A! @# z9 W/ ^1 d一行试试
7 d- U: a" R0 U$ g
7.防止盗链的方法:
, s& B* A( |6 @/ Z4 l4 zCODE:
$ [& _. @0 \: n. W1 ^& X: U6 l
: y3 y( \! D; m- D m- ^0 Q( t' yRewriteEngine on
* _. ^0 @2 f2 b- @ O
RewriteCond %{HTTP_REFERER} !^
http://guistyle.org/.*$ [NC]
% l4 G5 l0 D4 u; J! Q1 `; [; ]
RewriteCond %{HTTP_REFERER} !^
http://guistyle.org$ [NC]
G, P O1 l0 Q+ L3 U! C) qRewriteCond %{HTTP_REFERER} !^
http://www.guistyle.org/.*$ [NC]
1 y& w9 d" b: U! I5 s. N
RewriteCond %{HTTP_REFERER} !^
http://www.guistyle.org$ [NC]
0 \- b- V5 e" f* p# P
RewriteCond %{HTTP_REFERER} !^
http://bbs.guistyle.org/.*$ [NC]
$ y: C) O$ v7 {) H" H- Q$ vRewriteCond %{HTTP_REFERER} !^
http://bbs.guistyle.org$ [NC]
% Q- A3 q, J8 K$ p2 X, L I% \RewriteRule .*\.(jpg|jpeg|gif|png|bmp|rar|zip|exe)$
http://www.guistyle.net/这里是指定的图片或页面 [R,NC]
; ]! ]( _ t3 l/ G6 Q把上面的域名换成自己的
: k) T, O5 E0 u8 y, @" n. X% c" X$ Y, m1 x2 T
jpg|jpeg|gif|png|bmp|rar|zip|exe 这里定义你要防止盗链的文件扩展名
: `1 J+ m2 J3 k5 S
- ]; U/ t4 F5 w6 Z& b; h1 o5 ~
后面定义 如果盗链了这些扩展名的文件 将指定到哪个 页面 或者图片上
+ e' S% m' N+ H- h0 e. j# {
$ j1 S; \" Q1 v, @6 w
改完 存成 .htaccess 放在 根目录 或者 附件目录里
$ ]4 H* f8 t) r5 K- L' u$ N
% u3 G& f5 y4 c- h0 j& D+ }如果放根目录则整站 全部防止盗链 放在特定目录 则 特定目录防止盗链
/ L# p) d: u8 k
8.主页在线列表和帖子中会员在线状态同步的修改
' z" q [" A; l1 D3 r3 ^
1)打开 viewthread.php
$ ?1 x" x1 w) q1 G. X x$ x0 A& U4 W" X/ Z- p% V
找到:
~9 b2 `9 ?4 P! Q! x/ RCODE:
* q7 u6 g4 i/ @; v: l" d, n! e5 U. r% m# @3 m8 `+ x
mf.sightml AS signature, mf.customstatus
4 Y* @+ J5 ~3 C, f. [" W, v
# r% H5 g# q0 F; n9 NCODE:
4 a, N( N% s G
, F1 _% i$ S6 Z1 H9 _- p
在它后面加上: , s.username AS s_username (不要漏了前面的,)
( c: |& B4 I- y G5 v
) |/ N- `: K; E \& d; M2 r变成: mf.sightml AS signature, mf.customstatus, s.username AS s_username
1 y/ m" K7 g; P' Y找到:
& |& R5 W) n% ]+ d/ n, M
CODE:
3 L* |3 E/ Q; h9 z
" w8 k. p; i* ^) {; d LEFT JOIN {$tablepre}memberfields mf ON mf.uid=m.uid
1 ?/ R) Y8 W _2 c# }
在它后面加上:
. L2 K4 ~4 D2 v% j5 Q. B1 z: @3 SCODE:
J6 M6 E' k7 G# `! i n* i
& Q% M# t( n1 G, ^+ e" [4 W LEFT JOIN {$tablepre}sessions s ON s.uid=mf.uid
3 b, x1 s3 [# M4 a; }变成:
; `$ p( V/ ^% w- K- `
CODE:
/ U* Q( o% ?' Z/ [% \; Z
9 y7 b ^! w+ N' }5 X$ I
LEFT JOIN {$tablepre}memberfields mf ON mf.uid=m.uid
* e5 g2 }9 `! ?" B2 v) g$ b8 J7 e
LEFT JOIN {$tablepre}sessions s ON s.uid=mf.uid
2 @1 Z, G, {# Z2 L: B8 l% }
2)打开 ./templates/default/viewthread.htm
4 G' V$ M! R4 y0 B4 {* \; G$ M7 ~) g. c. {3 o J6 e4 \9 Y
找到:
5 m. Q8 S- H+ ~* D
CODE:
5 ~; V% S# W2 M, D. S5 ]1 H
2 o/ M+ n* h2 E3 x" C <!--{if $timestamp - $post['lastactivity'] <= 10800 && !$post['invisible']}-->
! _. y e2 Z- q3 b9 `改成:
, X# I9 y3 [7 m: }& X% tCODE:
6 e) S2 `" C1 ~ l0 w7 g4 J! _4 Q' m& U9 L
<!--{if $post['s_username'] != '' && !$post['invisible']}-->
/ h* \) s \+ O* S3 }好了,这样修改的话,几乎不影响论坛执行效率
7 @$ d& b. z/ y8 f
9.禁止用纯数字注册的方法
0 Z3 a- z6 J. ], J5 l: R% p打开register.php
s5 `3 @. V# r) Z: n, C) I, D" U3 Z) n% Q% X9 @6 \2 E: E
$ f: R1 O" `- D$ }! D
找到
: \7 f2 h4 Q" f: J
CODE:
1 R" V' A' E3 ^2 h( v. A
& @$ j/ x- z0 _1 G) _3 ?$ b($censoruser && @preg_match($censorexp, $username))) {
( c# _. O4 s+ a+ T: t, R
showmessage('profile_username_illegal');
- N* _+ p& X+ K4 x- R5 \8 _
}
- V- }) p# z/ ~% k0 e; R" `
在下面加上
$ K+ R' h& u8 g9 i& [0 X0 }CODE:
# T, j- O) P# E+ d
/ d7 l0 \$ @; ?* K: Q8 aif(preg_match("/[0-9]/",$username)) {
, U5 z! G4 y- C+ A- ` showmessage('profile_username_nofigure');
+ c8 e+ h- b% ~5 ~1 g
}
! V# P" N3 P$ `7 c z打开message.lang.php
n. i2 K* h9 m5 R- |7 a, N
! N i% ]8 {3 H9 C3 k7 ]* F% Z
找到
2 _3 `! o* s3 c- Y" gCODE:
4 s1 R1 n5 ^3 Q7 t6 V( N. ^. C1 h
" G% }' Y9 T# K+ L0 ?! I+ r1 R'profile_username_illegal' => '用户名包含敏感字符或被系统屏蔽,请返回重新填写。',
- Z, [4 G# y, s在下面加上
! {, @+ R( x n
CODE:
& n/ j' a" k; P( X
; c* X' z6 K) u! @. `% F: \2 e3 A. b'profile_username_nofigure' => '用户名不允许数字出现,请返回重新填写。',
5 F( x- R7 e/ V
这样,在用户注册的时候就会提示不允许数字注册
! U% Z" {3 r5 `/ a: r9 q E- @4 r10.浏览器进程生效方法.
) o0 ]' l8 P+ O7 @9 ?! F; T8 H修改include/common.js
: W$ Q4 R) D% T D) g7 D+ z
' S6 x7 ^; z4 n在文件的末尾加入以下代码:
6 n5 B8 x2 F W$ [CODE:
6 K1 i6 j3 K$ F6 ~
3 x5 V p; v; H function DelCookie(sName)
+ S$ K! A& f- {7 l0 l3 W
{
) Y! [' T% n( X }, k/ r6 k, Z
document.cookie = sName + "=a; expires=Fri, 31 Dec 1999 23:59:59 GMT;";
! h; B1 i5 G, L" d1 ?
}
7 O8 [# P* F% ]8 y. R% m //当没有cdb_auth cookie的时候,删掉cookie cdb_sid
! f) d# G9 m- X- w0 d if(getcookie("cdb_auth")==""){
' a7 f. Y/ y3 Z* w, e DelCookie("cdb_sid");
6 ], \( F; }1 C. C& f; E2 ?4 e7 L
}
$ C+ [% ]- M2 Z6 `9 r- j11.查看新帖的默认时间是多久?
1 O- v0 V0 v) E' H' X4 {6 V最后访问时间前10分钟之后有最新回复的帖子。
5 H# f/ j& A' r; F! T& _: d+ d4 i# uindex.php
) X7 M1 M6 L, X8 O8 o, E
$newthreads = round(($timestamp - $lastvisit + 600) / 1000) * 1000;
8 |' A2 H9 i, F3 M$ {, M0 W12.上传多媒体文件直接播放方法:
# [, M8 f P- Z
http://www.discuz.net/viewthread.php?tid=1737721 J$ j, i- A% M+ U/ b
http://www.discuz.net/viewthread ... &extra=page%3D1
' V4 t; `& h; r. p. f- Q13.教你如何修复数据表 作者:深海
" u- ^" K% h Nhttp://www.discuz.net/viewthread ... hlight=%D0%DE%B8%B4
$ j% }$ j' j6 ^1 U14.GBK与UTF8有何不同呢?
. F7 [ f5 h& Y/ t0 y5 S
因为不同的人需要不同的版本
( j/ ~ ` B" o, U2 V, u* k) _- |% G
UTF8支持的字符更多,但是占用数据库的容量是GBK的1.5倍
6 S2 b) e- p; z% K1 u
0 [* H, ^ J# U如果没有特别的需要建议使用GBK版本
! E; n, E: A6 y5 @$ g' T& x3 z2 H" }15.论坛短信不用点击可以看内容的方法
" y% U0 a1 M& X5 c5 m/ L$ J* f修改很简单,只要打开templates/default/pm_folder.htm
! o9 I* k- U* b- ?+ {3 I$ h
4 j6 |# K: I9 x% A4 V9 S9 s
找到
% O% m( l7 t; B6 LCODE:
8 B7 v* W: a! D* ]. p' T9 ^" ~* \& ^0 R- M
<td class="altbg2" ōnMouseOver="this.className='altbg1'" ōnMouseOut="this.className='altbg2'">
- q9 }( e! e' x F( X3 U& Q2 K
改成
! O& v- m/ [2 D4 ]
CODE:
5 `8 W% v5 V8 R/ Q# Y
0 Q0 o9 g& Q ^<td class="altbg2" ōnMouseOver="this.className='altbg1'" ōnMouseOut="this.className='altbg2'" title="$pm[message]">
8 M& U" T* D$ ^( k) ?6 E
16.如何从数据库中删除短信
7 g3 ]% E9 d z
delete from cdb_pms where `subject` LIKE '[Discuz!] test';
w2 M& x9 f) S. L. L% E5 k1 G17.在dw中实现flash透明背
5 {5 c0 i8 t0 T' g+ i+ yhttp://www.363000.com.cn/Article/ShowArticle.asp?ArticleID=4384
/ G1 G M9 E) F7 P, K8 c z% O X18.快捷回复加入表情插入功能
- g) F r& s( ~! i% v3 C) Ihttp://www.discuz.net/viewthread ... 5%C8%EB%B9%A6%C4%DC
( ?1 t& v) _* m! h9 j- x
19.SQL报错
9 N% q5 _0 L, E) A+ uCODE:
. o+ R2 b# P1 B r% v! S; ~, k$ V9 v4 C8 a, y9 z9 B
SQL: SELECT views, tid, subject FROM cdb_threads WHERE displayorder>='0' ORDER BY views DESC LIMIT 0, 20 Error: Error writing file '/tmp/MYoBoZrS' (Errcode: 28) Errno.: 3
$ d8 ~. C6 l- Z* B& H0 ?这个是什么错误啊
3 P8 j7 q/ L* F$ Z+ M8 U5 b9 e答:磁盘空间满
$ g( J: l6 W, ?$ p/ e% |9 c3 I+ K3 K20.我想问一下,php.ini中把哪个打开就能看到报错了
@" A* V+ v2 {2 E% q答:; E_ALL - All errors and warnings,把前面的分号去掉
. ?0 {( }9 R4 R, j
error_reporting
. n( }# z( }2 M2 G; M- |: Ndisplay_error=on
- X/ y3 M& f1 ]' O( d7 o' X21.关于phpmyadmin的基本用法小结 作者: @鑫~#
5 t( Y5 I4 d/ d4 d/ {http://www.discuz.net/viewthread.php?tid=132882
$ _7 n: n; e7 G模板修改篇
8 ~+ {- g# r& o( X1.关于在header.htm模板中添加插件链接的教程
4 O7 u% {5 ^) v. t) G/ N1 u, P- ihttp://www.discuz.net/viewthread.php?tid=126298: L0 [$ a* y' z0 M# u9 @" p
2.在论坛顶部添加banner的方法
/ I& e M# Q- ~* \3 Z& _, Q, T; Shttp://www.discuz.net/viewthread.php?tid=128891! X. v5 g+ \+ k$ a
3.Discuz!模板编辑详细说明
% c2 c& b3 e5 q
http://kb.discuz.com/index.php?t ... F%E7%BC%96%E8%BE%91
; q; K$ t. n4 h$ F; W1 p% @$ M! W& r0 V4.增加ICP备案的方法:
n* @1 m" @1 b5 a0 ~
在footer.htm文件中加入
" U# G: X- g- m: D
CODE:
: {8 y" f/ M1 j2 x; K B8 a; j% K
9 ^" M$ \% x# _8 _. T<a href="http://www.miibeian.gov.cn/" style="color:red;font-weight:bold">ICP备案号码</a>
# a2 {# Z; n. B% t! b
技术相关
3 [( g& S1 a. Z9 n3 Q2 C; ^$ Y: \* E3 U- L+ E/ _0 b
1.Discuz后台解析大全
! Z9 ~8 s: b, X1 \$ {4 \6 z# u' ^http://kb.discuz.com/index.php) N/ t/ |0 I) z' c
2.PHP文件上传
8 \- b: i6 T. y; _% W% whttp://kb.discuz.com/index.php?t ... 6%E4%B8%8A%E4%BC%A0
, _9 U/ T9 m# f* |( Z4 v3.关于phpmyadmin的基本用法小结。 作者:鑫~#
3 ], }4 X9 j2 _ {: L X: F! jhttp://www.discuz.net/viewthread ... &extra=page%3D1
) g( u& \% v, Q- l3 {# M0 j4 _) @7 p$ L
转换相关
. J {* M, D( C. B- B4 C, d1 U& `& ~
1.动网转换到discuz详细步骤:
4 s$ |# O1 H/ {( Bhttp://kb.discuz.com/index.php?t ... D%AC%E6%8D%A2#dvbbs
: H+ A$ f. j+ S% Y8 @# M# @' r2.Phpwind转换到discuz详细步骤
5 {$ i; u0 q; T2 G8 t( @http://kb.discuz.com/index.php?t ... AC%E6%8D%A2#phpwind
) h+ _; n9 N/ L7 F3.Vbb转换到discuz详细步骤
3 D5 H( L5 n! E" a9 z# x* C
http://kb.discuz.com/index.php?t ... %BD%AC%E6%8D%A2#vbb
/ N: r4 l- _3 u
其他相关
! N9 H7 `( u2 _( j
' E: g# }& T% B1 g; H
1.傻瓜式Apache+PHP+MYSQL安装程序
, i1 D/ j% b0 e* k( b
http://www.discuz.net/viewthread.php?tid=120023) p" q/ y5 l/ v D
2.关于登陆后变游客的几种表现和解决办法
: `" H( G( d: f9 u, g. q' C* Uhttp://www.discuz.net/viewthread.php?tid=125262
5 g4 ]; L1 \# z& Z2 G8 T& G3.论坛“搬家”全攻略
h: ~+ a. O* j9 I0 ?http://www.discuz.net/viewthread.php?tid=127977% V; v/ P c( R4 ^" L: u4 }
4.一个不错的MYSQL数据库备份工具
6 P% M- p8 k8 jhttp://www.discuz.net/viewthread.php?tid=128844
4 h8 f6 m: [5 P% f# t' T, A5.最详细的WIN&LINUX PHP+MYSQL+WEB配置指南 作者:AsIwish
+ a& ], X8 X/ M3 Khttp://www.discuz.net/viewthread.php?tid=130664
3 v3 | d+ w4 F' N. q% w3 d6.防CC攻击的简单方法
6 f( p8 j- Y' m& O2 Q8 V2 C
对于RC4及以上版本 在config.inc.php中加入一行
: y0 c/ b0 Z( M. C
$attackevasive = 3;
2 w- `; J/ U' Q, R即可有效防止由代理服务器发起的CC攻击
2 p( H* z. A# t. e) n0 ?其中1为开启cookie刷新限制;2为禁止代理访问;3为两者全开
% f) z# J5 c4 G( R( v+ f
7.在新发的帖子前加new标志
! \4 w8 @7 S3 Y! h/ L6 V1 O! m$ X我想在每个新的帖子前面都要标有new的标志,能现实吗?
0 @4 p2 N( N" Q7 {/ p( m) `答:把firstnew.gif图片换成一个带new的图片就可以了 根目录下的图片目录中有
1 a7 `3 O2 f1 k2 ? E
8.转换完成后,只有主题,没有回复会是什么原因呢?大部分帖子就没有回复?
' q, I1 i4 z6 u& }说明主题表与posts表不同步,可能是原来数据就这样
# P7 ]! Q% b, h+ d k% E. PCODE:
" U; M8 n" V$ ^. j, } R
$ M# n; C" @, A8 n* @1 B1 TDELETE FROM `cdb_threads` WHERE `views`='0' AND `replies`='0';
4 G* f" F# b3 e V4 ]在后台执行这个 执行了,也更新统计了,但还是没有回复 不行的话就修改转换程序 把
: i. Y, ]) _% p- b6 [5 ]CODE:
& K6 z7 k7 }& i% G+ h' Z( S. v$ p9 z7 x
$many 主题参数/2
9 w E- I! y1 I0 ~& j: c, v. ?去掉
* i) t# W* F8 M8 z) U$ z/ ?7 J9.修改数据表前缀后,又出现
, D2 I& a5 Y+ Q* ^, B# nCODE:
: b* t7 L1 U/ p1 B% ^7 @& Z# g* }" Q" N9 T9 }0 a8 M8 Q. I4 @2 k
SQL: UPDATE cdb_2settings SET totalmembers=0, maxavatarsize=maxavatarsize*100 Error: Unknown column 'totalmembers' in 'field list' 这样的错误,是什么原因呢?
6 e/ l: x1 p8 z& p
答:如果用户修改了数据库表的前缀,必须修改升级文件,把cdb_修改成用户的数据库表前缀,如cdb_2 等之类,全部替换的快捷方式是ctrl+H
+ M8 H3 k( I# g10.把所有会员的现金统一改为1000000,威望为0。怎么写SQL语句呢?
9 L5 t g& G |( C
答:
# q7 }5 J3 @: q; A( y) X: I! ~+ g
CODE:
9 L, a8 }* c: O5 p" [; ~$ C0 b6 s b# C. Z/ L& x
UPDATE `cdb_members` SET `extcredits2`='1000000',`extcredits1`='0';
% d# i; E4 Z g4 L. ]11.积分和威望同时等于会员的发帖数,这个要在后台怎么写SQL语句呢?
. e4 B; U7 W0 FCODE:
3 E6 j1 C% n! B1 w+ o( r6 T+ y
2 h! j& _ V* k J zUPDATE `cdb_members` SET `积分字段` = '金钱字段'='posts';
* c4 _* n2 z. Y8 @12.数据库与程序不对应
: ]! q: h8 ~2 @, A. w) C8 m" X! E
由pw转换到dz的时候,转换第一步出现Column count doesn't match value count at row 1错误提示,怎么解决呢
0 _; \- d' l% d! o
答:原因是数据库与程序不对应,比如用rc3的程序,访问rc4的数据库就会出现这样的错误。
6 ^9 L/ r4 M$ [, p13.报错,错误信息如下:
9 v9 p) E- I) _) }9 x
CODE:
- ~( j- y4 j, \9 |- d* {& F, J
- s0 b, \, w, @" nSQL: UPDATE cdb_members SET extcredits1=credits
+ W4 Y/ d0 j; X2 p9 M" }
Error: Unknown column ' extcredits1' in 'field list'
* T. w; Q4 H# b* Z
程序文件跟数据库有冲突,请使用正确的程序文件上传上去覆盖
, Y, c' \, w% j5 q% k答:在cdb_members表中没有extcredits1这个字段,加上就可以了
~/ b" n' _9 n" U1 [
14.从pw到dz转换完成后签名解析不了怎么办?
' L/ b) w9 {. `9 t9 a方法是:登录论坛->用户控制面板->编辑个人资料,什么也不用改直接提交就能解析了。
# n! F) L! n4 s, u, y) e3 i/ x3 B15.2003错误是什么意思
$ O; j9 d8 S0 O
CODE:
9 u! s: l9 q; S, o: t4 C# s
, t! s* z( d- ]& C( VError: Can't connect to MySQL server on 'localhost' (10049)
MySQL服务没有启动,请启动该服务 Similar error report has beed dispatched to administrator before.
+ V# [% t& M; G
除了连接不上mysql服务器这个原因外,还有其它的原因吗?
1 n. m* G9 y! }0 N
答:另外一个原因是mysql的默认端口是3306,检查一下你的config.inc.php中的数据库用户名和密码数据库名是否正确,或者 好了,解决了,你们怎么默认不连3306,我现在强制在localhost后面加了个:3306
3 A( l- w5 w' S# W, ?0 p& U9 Y$ [
16.我的论坛上面的客户是注册客户,我想把他改成金牌会员,在后面设置也成功了,前台也显示是金牌会员了,可是过一会就又变会注册会员了,?这个是什么原因
0 {7 F1 w8 v7 M$ w2 S/ m; R: l答:需要修改这个会员的相应积分
3 S: [9 Z! F0 n0 Z17.注册页如何只显示“必填内容”?
& n0 C) V' r5 Q: u$ K
只显示必填内容,下面直接就是提交。“选填内容”和“论坛个性化设置”隐藏起来。直接在模板中去掉好像不行。
6 z, O0 N: v1 E- G* \答:可以去掉的,用js或者直接用样式display将非必填的单元格设置 style="display:none" 也可以“去掉”的
! z6 ?, }' ] \; F18.通行证启用,论坛相应功能关闭,有办法解决吗?管理员进不了后台了
- H/ X4 ~3 _' L) y% n l
答:运行下面的sql语句就可以了。
+ s6 _7 @, z; t8 z5 j# v5 XCODE:
. {7 @( s0 x9 f2 k# `& {
) Z9 l+ R# `' K) f, `' Q6 w9 Nupdate cdb_settings set passport_status=0;
8 m5 b' `! n8 j19.邮件不能发送的原因和解决办法
- k5 h5 I) F; h4 F# f/ T文件:include/sendmail.php
3 q" M; s$ g& G
# `) V% _9 x& V! H
查找
* I* I0 z- k) ?& j! O4 p
CODE:
) y' o1 g. g5 _# Q- C2 o) Y6 L. d9 T6 S! T' L l
fputs($fp, "DATA\r\n");
/ y$ _/ ~7 r3 q/ g0 ^# Y; U
在其后添加
) Z2 l% a8 X- f7 X; q/ N6 }
CODE:
$ W; i( l/ X4 [+ V! R' Z5 \
5 Y8 t- G/ M* d" Z7 |4 x# l) |1 ^
sleep(1);
( ?! y* s1 o. S( \& o# e3 B) ?作用是暂停一秒后继续运行,如果1还是不行,就改成2,或者是3。
/ y+ D! a+ C5 @
$ r2 T. O1 p4 w( i) a2 Q关于论坛邮件系统的说明
4 o; P+ |0 O% T. h! `+ |# u
& M' B. A5 ?4 Z邮件系统能不能正常使用,是由两个方面决定的
6 w" V7 i I0 o
) K+ Z' j/ z/ K4 ~" O2 h( `1)本身服务器是否支持发送邮件,不同的服务器对邮件发送的支持也是不同的,你可以根据自己的主机来配置论坛根目录下的mail_config.php文件中的$mailsend变量来决定,具体配置见下面的代码
) M- G7 ?% f @- e/ MCODE:
7 ]2 I2 q! i u8 B; B' w' G7 B
4 O/ ?6 E3 U3 t' f, ^$ O' E! [$mailsend = 1; // 邮件发送方式 0=不发送任何邮件
& a. q. D. p2 D( w // 1=通过 PHP 函数及 UNIX sendmail 发送(推荐此方式)
4 M: k$ O$ N. S& K% F5 ^7 L // 2=通过 SOCKET 连接 SMTP 服务器发送(支持 ESMTP 验证)
/ q' w+ k. m2 i& L
// 3=通过 PHP 函数 SMTP 发送 Email(仅 win32 下有效, 不支持 ESMTP)
7 y2 j( y! D% h' G1 {
如果你不清楚你的服务器是那种类型,可通过 utilities/testmail.php 进行测试,测试方法如下,把论坛压缩包里面的utilities/testmail.php文件打开,把里面的
5 {+ f$ d9 P. w6 X1 [CODE:
' T4 p: q: v8 H& G9 t9 K
- R, h, n h8 C7 s3 c$from = '
my@mydomain.com'; // 发件人邮件地址
& ~# {8 f, E+ W
$to1 = '
test@test.com'; // 测试单一邮件发送地址
" h% @8 X$ {$ F# E1 o g$to2 = '
test1@test1.com,
test2@test2.net'; // 测试邮件群体发送地址
1 |1 Q% S* v6 m/ h% c9 Y/ ~这个部分进行配置,然后传到服务器执行,这样如果服务器支持邮件发送,那么你填写的地址将收到邮件,如果没有收到邮件则说明你的服务器不支持邮件发送。
& G* i; e% p. N# u' X
; Y l) H) f0 Q$ k0 e如果你的服务器不支持邮件发送,还有一个办法可以实现就是申请一个支持邮件发送的免费邮箱,然后在上面所说的配置论坛根目录下的mail_config.php文件中的$mailsend变量中选择2,然后把再在那个文件中找到
& S- C0 a @5 m q. M7 D5 G9 XCODE:
0 V- Z8 @9 E! j# \
, C S8 d2 P7 M! L. c7 c s: T, q
$mailcfg['server'] = 'smtp.21cn.com'; // SMTP 服务器
: p1 A& q, Z: a
/ W. j$ a0 w( D) X6 c0 B; F$mailcfg['port'] = '25'; // SMTP 端口, 默认不需修改
- [0 t1 V I0 E; r1 i8 P
: X: u& U" e4 G/ T6 y% F$mailcfg['auth'] = 1; // 是否需要 AUTH LOGIN 验证, 1=是, 0=否
2 k- \8 j7 S1 f( q$ J0 w3 o3 {. Z6 L. B$ I0 O8 o) {( l0 ^; e) M
$mailcfg['from'] = 'Discuz <
myaccount@21cn.com>'; // 发信人地址 (如果需要验证,必须为本服务器地址)
# V/ g" b3 t; M7 [1 Y- F
3 w( J" ]5 W" J- S$ F0 G: D
$mailcfg['auth_username'] = 'myaccount'; // 验证用户名
7 a, {: h" l1 N
( P: E5 B9 s T0 j, v$mailcfg['auth_password'] = 'password'; // 验证密码
0 K- K: q+ h7 a( x- f0 j
根据上面的信息解释,填写好信息,这样就可以发送邮件了。
" y7 E) a( s" K: T
2 `( \0 f7 i* w$ Q( y1 n) t; p做好上面的几步,基本上就可以正常发送邮件了,如果你还是不能发送邮件请往下看
5 Z2 t" @- Y. I- N& Z3 W
' k w5 ~# ]# ]1 @! a+ n
2)决定邮件发送系统是否正常的第二个因素,这个就是邮件接收方的问题了,现在市面上大部分免费邮箱都有防止垃圾信的功能,是否能收到信要看接收方是否能够通过认证,有时候没有收到信很可能是接收方的邮件系统把你的信件过滤了,如果出现这种情况你可以统计一下那些信箱不能收到信,然后联系这些提供免费邮箱网站的相关部门,说明情况一般就可以解决了
. g% o$ W3 n3 S& T20. 限制游客不能看帖子内容如何设置呢?
; q- q: z$ M, g" O3 A! [. w我想要的是进得去版面且看得到列表,但是看不了内容!
/ t6 z; `* [7 ?+ X4 k, D7 X' l' N" E/ l' R" H, k; f- g
而且点击版面名称进去之后是提示只有特定用户才可浏览!我想要到的是游客级别无法浏览...
+ Z* X; ~" o% E7 t" ^. h
) |/ ]( I5 \$ Q! D! k) q/ ]方法1:后台--用户设置--用户组编辑--游客(Guest)--[详情]--允许浏览贴子--选否.
+ k% u$ b% t. ]- B然后进入给游客浏览的分论坛
, g' y# G! l# C# P$ ]. a& g
在编辑论坛里把开放的论坛浏览项全部打钩就可以实现了
0 |2 I$ H+ e: _1 i" X
2 ~4 |8 Z/ Z2 y. N# m+ i% p方法2:
, O# y! w. s6 [2 a, K$ Y
后台--discuz设置--显示设置--隐藏无权访问的论坛(默认是)--选否
2 e. a7 e' B9 `9 ]% }+ H
后台--用户设置--用户组编辑--游客(Guest)--[详情]--允许浏览贴子--选是.
% k9 a5 X5 H5 f后台--论坛设置--编辑论坛--把限制的论坛浏览项允许浏览用户组打钩
$ e" l9 C, R, ]& P. G e% o21.支付宝账号激活说明
- B' A' m9 L9 Z3 j; _ phttp://www.discuz.net/viewthread ... &extra=page%3D1
# F% o9 M7 n. ~22.支付宝使用完全图解 作者:童虎
! u$ U; a H' {( F6 L% t6 ?
http://www.discuz.net/viewthread ... &extra=page%3D1
2 {5 s) N8 b# P" {- l' n6 n/ s23.Discuz! 4.0.0最新发现问题及相关解决办法
) l) X* K) p8 J3 T0 Ihttp://www.discuz.net/viewthread ... &extra=page%3D1
# H* A0 T! t3 X! Y6 F6 x
24.不同MYSQL版本数据导入问题解决办法 作者:童虎
4 S" W; b) i+ e
http://www.discuz.net/viewthread.php?tid=142050
3 W4 R- C! S% M相关工具
" i5 m/ X0 N; p) C2 k% ~工具一:找回管理员密码 作者:童虎
6 [7 y' Z& S9 h+ ?4 Whttp://www.discuz.net/viewthread ... &extra=page%3D1