开启左侧

[学习借鉴] ZT:Discuz!使用问题的整理

[复制链接] 14
回复
16299
查看
打印 上一主题 下一主题
楼主
跳转到指定楼层
发表于 2015-12-25 19:07 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册

x
http://www.discuz.net/thread-467496-1-1.html$ }1 W8 b* x( L+ P9 l
1.解决验证码看不清的问题
, H, _8 P! {/ G) \
方法如下:将\images\common\目录下的以下文件替换成你认为好看的即可. @6 y/ _/ x7 _. {- Z
number0.gif       数字“0“的图片
: M& X. b7 H. W5 Q7 |+ `number1.gif       数字“1“的图片
, E2 M: O% K+ ynumber2.gif       数字“2“的图片9 f( k$ |7 Q0 H) Y1 V. m3 Y
number3.gif       数字“3“的图片
5 |' q& v  a9 k. z! M; Znumber4.gif       数字“4“的图片
8 B2 v9 X, M) x8 B5 Mnumber5.gif       数字“5“的图片! w3 C4 I6 l6 e8 e9 B
number6.gif       数字“6“的图片
% K2 y$ x/ v' a  V7 m8 v2 v8 fnumber7.gif       数字“7“的图片
8 q0 V. o$ Y( r' a) g+ @number8.gif       数字“8“的图片

6 k& H3 r$ }; }6 c
注意一点: 就是配置php.ini的时候记得开启gd的支持,也就是去掉下面语句前面的;
1 |5 j4 g: z( v
;extension=php_gd2.dll9 N: w' I9 [% R! ^$ ]/ n

/ b: B2 _* s. J! L2.水印的实现方法( m0 ~2 O5 ]& \% s
首先确认你的空间支持水印功能其次察看SS或者论坛的后台找到水印图片的位置用你作好的水印图片上传覆盖掉空间那个(菜鸟级别的可以直接从空间下下来自己修改,完后上传覆盖)最后开启水印功能
2 d7 k- s6 @5 m" p% J% p4 k2 c
& Z% t- M% x/ ~/ k
  N9 b. F- G9 l: l- Z
3.会员注册字符的3限制修改
- v4 C7 G, W5 e: ~; h" E% t9 M4 W
论坛根目录下的 register.php  中修改 5 b; ^! ~, n% K5 C% T
if(strlen($username) < 3)
5 d/ A7 T# p$ O0 L/ y* b6 T# d; B
4.Discuz! 5.0.0中如何实现音频.视频

# E# z: V8 D8 W0 H8 q. X
1.必须在用户组对应赋予不同级别用户开启允许使用自定义 Discuz!代码这一项(好像缺省应该是版主以上用户已经开启)。2.贴子管理”——“Discuz代码”——具体新增定义使用这些代码,然后已设定有权使用自定义Discuz代码的用户才可以使用。

( M* c$ b/ D0 f) l
5.怎么修改精华1、精华2、精华3名称
4 |* M! c+ C* n3 t( o6 `+ M
修改语言包,在模板目录下找到 admincp.lang.php打开,找到7 v+ t4 Z# ^# S. f) v; g6 R
, i, Z' b, g4 X7 y, w
        'forums_digest_one' => '精华I',
* f- o6 o/ _; m9 p0 e5 V" q( X- _+ o3 o" F* z. J: g, h- K( j
         'forums_digest_two' => '精华II',
  x$ B5 Q" Y! ]/ F  G
: u' i$ u  B+ M* D' g         'forums_digest_three' => '精华III'
$ y5 ]/ o( T3 U1 y& \
( |6 i0 C& h1 [( }# S修改成自己想要的6 ~" u" S* V; }. \0 O/ @. \8 l+ t1 \
: \7 m+ i2 |! G7 v% n
6.如何修改注册协议阅读时间7 w1 j* o7 q* r- o/ b
templates/default/register.htm
3 M5 i5 l8 W' a8 {, Y搜索* U* p/ R& |7 G, g. P! I: b
var secs = 10;- q. E0 k( Z9 b" ?0 H' t( h
如果要改成5秒,就把10改成5
$ j( g% l8 p1 n' D6 m: A& g
) G7 R0 m# Q' u3 F* o' y) g
7 d0 f7 ]$ Q3 S) H! x+ r1 g7、部分版块隐藏的设置:
& L( r1 \9 Y/ U# E% _! k4 h; {1 h 进入后台-----论坛管理-------编辑论坛------编辑你所想隐藏的论坛,在“论坛权限”下面设置访问密码(没必要就不设)、访问用户组(不允许的不打钩)。【这种设将在首页会显示为“秘密论坛”字样,若要隐藏,在“注册与访问控制(5.5在界面与显示方式)”->隐藏无权访问的论坛”:选是】
% U, ^  y; E0 H" b) F7 q. n' J
全部版块进入可以看到主题,但点击进去却显示游客无权访问页面的设置:
/ C2 ]* y+ c" u$ y
) G# \1 j' z6 o6 o+ C2 A# Q (1)首先,所有论坛版块都不能设访问权限,即默认留空(全不打钩)。% O4 }7 X% E: }. ?
(2)进入后台-----用户管理-------用户组-------游客(页面下拉,游客组)-------详情-------阅读权限:0
+ c; r, V8 }4 u* [. M8 D- J" b/ t# j7 q0 b+ N; U6 X5 N7 N1 J" r4 y  r
说明:默认的帖子和附件查看权限是1。
6 y2 _6 C) K, R# N! y* N
) F4 X6 W6 c$ T2 S8 y5 @
% V  l4 W, x5 B# @& K, Q8.如何修改星星上的"Rank  18" 修改成 "级别  18 "?& O6 ^4 t* x# z1 O! H4 p
      
. J2 p1 ?* q) `  A3 F, H$ `修改 include/global.func.php 搜索:
9 G( B7 ^& P+ y
  1. $alt = 'alt="Rank: '.$num.'"';
复制代码
改为
    1. $alt = 'alt="级别: '.$num.'"';
    复制代码
    . u( A8 M# k8 R/ F3 o! K8 o

" N% s" R! N# N( M" Z4 y- ?8.如何修改星星上的"Rank  18" 修改成 "级别  18 "?
) ]% c1 l# K8 O" e$ s; k      
& M6 U3 \) V& d$ A2 S: v修改 include/global.func.php 搜索:
  1. $alt = 'alt="Rank: '.$num.'"';
复制代码
改为

; E% k, v* v8 t8 n: N
  v1 G# A6 X: {6 U& a( v
  1. $alt = 'alt="级别: '.$num.'"';
复制代码
, B* \/ ~0 T" S' b7 y0 |- z  _
9.去除会员的"删除本帖"功能7 u. N. t& x1 I" M, l% o
打开templates/default/post_editpost.htm文件,查找% P) i3 r" [! y

: ^, y5 i* p) @! j! s
  1. <!--{if $isorigauthor}--><input class="checkbox" type="checkbox" name="delete" value="1"> <b>{lang post_delpost}</b><!--{if $thread['special'] == 3 && $isfirstpost}-->{lang reward_price_back}<!--{/if}--><br><!--{/if}-->
    % k5 x: v, h/ H. r% \* B
复制代码

: y! ^+ ^1 m7 g: E! \* d删除即可,此修改只是实现了页面上的修改,也可以解决会员删帖这个问题了

8 ]! m" I' `! n; B* i6 O
10.restore.php恢复数据出现错误的解决方法

  c' L0 p3 m* C, @! c! ~
  1. 从本地恢复数据 - 检查数据文件: 数据文件 forumdata/061030_yOM35Yo7-5.sql 存在检查 ... 成功 数据文件 forumdata/061030_yOM35Yo7-5.sql 可读检查 ... 成功 从本地读取数据 ... 成功 数据文件 forumdata/061030_yOM35Yo7-5.sql 格式检查 ... 成功 拆分操作语句 ... 成功 正在恢复数据,请等待 ... Warning: dbstuff::require_once(DISCUZ_ROOT./include/db_mysql_error.inc.php) [function.dbstuff-require-once]: failed to open stream: No such file or directory in E:\Host\scpolice.cn\bbs\include\db_mysql.class.php on line 127
复制代码

2 E+ l2 D9 _8 `% ^$ X: _5 p解决方法很简单,看下面" ^* H2 |1 L- o1 L  Z
include\db_mysql.class.php 里面- B5 b# C6 e$ x5 V7 q+ ~$ X
查找
  1. function halt($message = '', $sql = '') { % [. A* w% w8 s% J) C8 Y
  2. ; P  |1 Z/ d2 g0 _
  3. require_once DISCUZ_ROOT.'./include/db_mysql_error.inc.php';
复制代码
在require_once DISCUZ_ROOT.'./include/db_mysql_error.inc.php';的前面加  //6 w2 X9 I2 j5 M7 \. Q" d$ w
就是
问题解决
2 G/ D! M: V$ i4 a0 u' g% ^

9 D. q/ C5 M1 l' |( I
  1. function halt($message = '', $sql = '') { % @6 o5 K, C! v2 N( R6 v
  2. * s( U9 G8 X0 }7 i6 W* o4 R
  3. //require_once DISCUZ_ROOT.'./include/db_mysql_error.inc.php';
复制代码
( w) @. ]7 @) D' u
11.repair.php修复数据库工具
" c5 y) X8 {. W) y( S0 v  f
& p" e1 S2 B4 B+ G& F; r' G
http://www.discuz.net/viewthread.php?tid=167141&highlight=repair.php%D0%DE%B8%B4
5 }) p# a# n  t( H0 Y0 H$ F3 Y9 m6 \! I
http://www.discuz.net/thread-464865-1-1.html  10#
! ?" c: @( m) B

# J, n. ]/ B# J* t# w: Z& q# X# V( O! P, }0 z" a0 b

/ B- Z  c; _) M* F12.使用repair.php修复数据的方法(
http://www.discuz.net/viewthread.php?tid=235998&highlight=: f0 @5 J1 }1 u1 i) o) |, O
上传repair.php到论坛根目录下,然后在浏览器运行http://你的论坛地址/repair.php/ c) Z' o; }3 _% F$ t# ?; @
一般点击第一个链接“repair.php?html=1&check=1”就可以修复了,8 O# u7 i( I0 j0 m; Q+ A+ y, r
如果不能修复可以尝试点击第二个连接“repair.php?check=1&iterations=5”
" w% b; _2 q, u6 ?就可以了。
  u5 P# _$ m6 ?6 R+ K# e& O5 q 提醒:修复完表操作以后一定记得要从服务器删除这个文件repair.php
. X- s7 E" ^5 T4 o9 z4 w& D, B; y8 m$ y8 _

* S# p5 ^/ F; x4 Q$ v3 p+ x13.使用phpmyadmin修复数据的方法
' C$ K) K9 E! c  w+ x 进入论坛数据库,然后选择要修复的表,在页脚下拉框选择“修复”即可
* W- e0 }) }* t( ~0 q" o5 u 如果您的服务器是独立主机强烈建议使用命令行方式进行修复:
9 @) K& P( k. J9 N) ?修复前将mysql服务停止。* e$ Y% N1 Y$ E+ z  c+ m$ e
如果是Win主机,打开命令行方式,然后进入到mysql的/bin目录。; L1 N  }+ M1 G6 C; x+ b
执行myisamchk -r d:\mysql\data\discuz\*.MYI
5 V8 x$ ~8 X0 o' f; a! F% _其中d:\mysql\data\discuz\换成您的数据库所在路径。2 m* y% _* H: j
如果是类Unix主机,直接使用myisamchk -r 数据库目录\*.MYI& l/ s. y/ o! [6 P5 Q- J
即可。
, k2 ^  j# x+ O$ i1 M
: g) G* t5 O+ v2 e' m
14.如何把在线的Guest改为自己论坛的名字
  F7 a5 q) O6 Y' M- `( ?打开 index.php,查找:
- p( g" [, K& d, p+ w3 w8 x
2 R1 K+ Z, C( a* p' E0 H5 P( fGuest
% M$ G! {+ L  P' V4 ^! ^
4 \. Q0 B( d9 ?% V6 h替换为您需要的,如:游客
& a9 Z; m, B7 d0 y; t6 a- ]; a' x+ c. Y4 w6 L' P: v% X- M
, k% a9 q+ u: l- C% u  Q" l
15.Discuz! 代码不支持mailmagic://怎样解决?
" N; F6 L0 O& D# }
6 N2 c; X" M* ~; X9 V" L: l* g, M
修改 include/discuzcode.func.php . q* v- A, ~% v; {0 y( N
& E; a% c' B: K; D, q
1.搜索:
. m. v6 Y( H& ~% g# c- y
  1. https?|ftp|gopher|news|telnet|rtsp|mms|callto|ed2k
复制代码
改为:

* @' h- P, y$ G4 ]2 `7 x% f* z4 `' L: v
  1. https?|ftp|gopher|news|telnet|rtsp|mms|callto|ed2k|mailmagic
复制代码
2.搜索:

4 T  |2 T1 W: ~: p1 H/ l
  1. www.|https?:\/\/|ftp:\/\/|gopher:\/\/|news:\/\/|telnet:\/\/|rtsp:\/\/|mms:\/\/|callto:\/\/|ed2k:\/\/
复制代码
改为:

% ]5 J4 t8 e& m2 P3 c, k
  1. www.|https?:\/\/|ftp:\/\/|gopher:\/\/|news:\/\/|telnet:\/\/|rtsp:\/\/|mms:\/\/|callto:\/\/|ed2k:\/\/|mailmagic:\/\/
复制代码

0 j: f$ K# N: U
即可
0 T. W  N# @0 Z9 _2 \
; Z# |9 h/ i. k; R


转载请保留当前帖子的链接:https://www.beimeilife.com/thread-3990-1-1.html 谢谢
沙发
发表于 2015-12-25 19:19 | 只看该作者
16.在帖子里,大家发的网址无论多长都是完全显示的方法/ I$ d# {% I' T5 j( N- n: H, h, ]
打开 include\discuzcode.func.php
0 n  d* M; g7 p" g! p; Y5 v0 E/ B; J+ M' ]9 y/ e; L3 d& ^
找到
5 ~3 n2 J  E/ T7 k: J! k* }9 p5 M( g
  1. function cuturl($url) {1 M# D7 o( e: k' x2 J6 z

  2. , E5 G5 o# I7 T  K* m1 M1 b
  3. $length = 65;
    4 j# q8 y, _9 Z( q" l2 _1 a) G
复制代码
" h  W8 _+ M, b+ i
那个$length = 65;就是限制长度的,您可以自行修改!4 x/ U+ g( }* a# {
" R/ _; O+ ]7 m6 x3 n4 c6 c- D/ n
板凳
发表于 2015-12-25 19:24 | 只看该作者
17.控制面板-編輯個人資料不見了的原因
3 e7 Q* q8 L5 e+ D& \! d1 t. N3 U1 w5 y& K
这是由于在后台扩展设置中通行证,启用了通行证 passport 造成的" S, i" w8 W  l! `: F
关闭passport 后就可以看到编辑個人資料的栏框1 K6 X4 m0 l# U4 T* ^

1 |1 y% r* V9 B' T- O* S18.后台运行记录所对应的文件
# U9 G; u4 t8 V" L; v8 l5 v
7 }, k% @! M9 l+ L( w
Discuz!软件的在设计的时候,对进入后台的一些操作做了记录,这些记录都存放在文件中,放在./forumdata这个目录下面。
7 i1 ~% S7 F6 ]0 l 这些记录文件会记录15 天以后的运行记录,因此不必担心论坛运行的时间太久,这些文件会特别的大。下面我把这些运行记录具体对应的文件列出来,以便大家做个参考。0 [2 \' g- Q5 V5 Y

; L" p1 G- {1 s2 a! F% N; z1 b 密码错误记录 illegallog.php
4 z. x3 E# {3 r  i* j# S用户评分记录 ratelog.php5 a& z0 e9 d: I4 V& \7 k4 e
积分交易记录 记录在数据表cdb_creditslog
# }& ^4 ^! X3 v: D6 @2 M0 m8 B+ F版主管理记录 modslog.php- p; F0 a+ L/ p7 W. \+ ^0 [4 c3 c% W
勋章授予记录 medalslog.php
- U8 j8 z' a) I2 V禁止用户记录 banlog.php
- Q  |+ q8 U  j8 |2 L5 g, v后台访问记录 cplog.php
1 b( x0 W& z8 d1 v系统错误记录 errorlog.php

0 i6 N9 \$ n, T4 w
. B- g% G* K6 k( C19.怎样让发帖时在主题上自动加上发帖日期(4.1)0 O& \' i9 w6 i- z
打开模板 viewthread。htm ﹐搜索:
  1. $thread[subject]
复制代码

) z5 h1 R8 V0 `! K% O﹐然后在后面加入  
  1. <!--{eval echo gmdate("$dateformat"﹐ $thread['dateline'] + $timeoffset * 3600)}-->
复制代码

; o# O! h2 F$ n20.Discuz! 可以在同一个空间装多个吗?
* W2 V% E& y) O  + U' e2 L- I0 N# W0 y  b2 Y
若您有多个数据库,可以通过使用不同名的数据库实现; * J. T4 T2 X. N' Y1 _
' A8 `1 E2 P; h& n3 h7 S7 p- s8 P
如果只有一个数据库,在同名数据库下您可以通过使用不同的表名前缀实现多个 Discuz! 论坛的安装。在 config.inc.php 中将 $tablepre = 'cdb_'; 里的 cdb_ 更改为其他字符即可,比如: cdb2_ 等
- W3 e* V' E* I$ X3 W# y1 E# s: x0 u* N
21.我的论坛突然间在线人数从 200 一下变成 1000 多,游客就有700多,人数还在不断上升,请问这是什么问题啊?
! H- N  m, y1 \1 O% R% G

  g5 H& R1 g! C- Y9 E8 D 看看他们从哪里来的,如果是从相近的 IP 段来的,那可能是搜索引擎的机器人; ' a' z$ S# U. T5 s6 _
/ D2 g" i& N: Z3 l1 O( b
还有一个因素就是与你的 config.inc.php 中 $onlinehold 值设定有关系。如果这个值设置越大表明统计的时间越长,也越不准确。目前为止,在 Web 上查看真实的在线人数在技术上是实现不了的,只能尽可能的接近。这不单单是程序上的问题,还涉及到其他很多方面的因素。在线人数"多",而服务器资源没有太大变化,那就说明这个值一定是不准确的,程序上是计算 $onlinehold 时间内的人数,所以越大人数也越多。
- O- s1 [& m2 @, ?- ^& |# f( E2 A+ J
- \0 S* h) i7 g3 |* w7 R3 M
22.论坛顶部出现了一个错误提示:Warning: ob_start(): output handler 'ob_gzhandler' conflicts with 'zlib output compression' in d:\discuz\include\common.php on line 223,请问如何解决? 8 T7 ^$ n) h( S6 ?4 Q4 c: A
重复打开了 Gzip 压缩,到系统设置里的 Discuz! 选项里关闭 Gzip 压缩即可。; `2 t( l/ D, X

! G! e: E0 \; f23.为什么不提供管理记录的删除功能? ' J4 y$ H- W# S6 N2 E$ q$ |
+ q# C4 ]  e* F4 O0 e# U( e( j3 n$ Q
Discuz! 管理记录用文件保存,为了防止记录被非法删除,系统自动存留 500 条最新的记录,并占用不了很多空间,不需手工删除。如一定要删除,通过 FTP 直接操作 ./forumdata/xxlog.php即可
! Q6 i( n1 {$ [' p' A+ x" }$ h# i

* N! ]* d! s$ O/ L24.导入数据出现
0 [1 k4 L# H  l$ \. V
Warning: shell_exec(): Cannot execute usingbackquotes in Safe Mode in/usr/local/psa/home/vhosts/shoppinglook.com/httpdocs/bbs/admin/database.inc.phpon line 469  错误
1 Q4 u/ @0 x# K9 ?1 z$ [# ?  |! R这是由于服务器打开了safe_mode(安全模式)为ON,无法执行shell_exec,如果有主机权限  打开php.ini   safe_mode 设置为 off,即可.如果没有主机权限,请联系您的空间商.
0 I. q, t9 `) f  s
/ S; [6 l6 H- v  S; b数据库常见错误及解决方法
9 p0 N( m" e6 _5 Z# ]
7 J: Z* g9 P5 X! [25.数据表损坏的修复方法+ t/ \: L4 M4 q
http://www.discuz.net/thread-235998-1-5.html. w# A4 a8 ^. ~. s5 E& m

- S# ^* y6 W0 T! v26.http://www.discuz.net/thread-118642-1-2.htmlhttp://www.discuz.net/thread-118642-1-2.html; V" t, B' E$ @5 t* W

: H9 A7 K1 l$ ]8 m) o* ]http://www.discuz.net/thread-381351-1-3.html9 `" I$ q% |; i, m+ }+ w$ E; z$ I

1 g6 |& @" z- J% p' Ehttp://www.discuz.net/thread-342129-1-3.htmlhttp://www.discuz.net/thread-342129-1-3.html
1 A8 f4 m) d; J7 e; M' q# R: N
2 R: w1 W' R4 C" [& |" X3 S) uhttp://www.discuz.net/thread-382964-1-5.html
$ N( x* N2 R4 ~9 P' z: f9 J" G3 B. h( \- B: |: U% Q5 T; X9 f
27.简单修改数据库编码的方法~对乱码说再见(适合免费空间)2 T' ^/ d( Q  H
http://www.discuz.net/thread-243333-1-6.html' o  R- z: o* D/ T# _& [- t

0 x$ {) y* U# N: e3 s% I! E28.转移论坛出现数据库乱码的解决办法4 ]/ z5 G2 V4 C
http://www.discuz.net/thread-374674-1-6.html7 c8 b! N4 m. D9 j# m

1 ~* K: `* U  V2 [! }) Z; {+ z- u3 s  R
地板
发表于 2015-12-25 19:27 | 只看该作者
29.Got error 28 from table handler (Errno.: 1030)! [$ n7 F  X9 n+ X0 ]. I9 V
翻译:读表头产生错误 $ M. y# @9 [; y+ a; o9 ?: k
分析:这个错误是由于数据库所在磁盘空间已满造成的。
! i5 G$ O' p# A; f  R1 ]+ p2 d 解决:清理一下磁盘,腾出一些空间用来运转数据库
. o9 c) s4 _( V' B
7 a& N( e9 p6 N30.出现类似错误提示Error:  No Database Selected   Errno.:  1046
6 u; ~3 [: i) G( q8 W
因为没有安装成功,MYSQL里没有建立数据库的原因,请重新执行安装程序并且根据提示操作建立数据表。如果证实确实安装了论坛数据库,检查你的config.inc.php有没有配置数据库信息
3 r! T# [) r! C- H! d1 E! [- Y( o# T* c! H) a, K! |
; P9 @- z: W8 W8 t
31.升级中出现1060错误的解决方法
3 Y4 Y; m$ s" K0 Q3 k
http://www.discuz.net/thread-393601-1-3.html
! C0 x6 R+ A! }6 ^6 ?: U8 j' w8 \# d4 d! n) f5 x: V' Y+ Y
32.Errno.:1062错误的解决方法1' _9 `0 o' i( T$ H) r, f( e
http://www.discuz.net/thread-379719-1-2.html
+ ?2 [0 _& C( s' j  h# Fhttp://www.discuz.net/thread-425346-1-1.html  \! w" \' B) @+ x3 Q
: T* l5 C% a5 v2 s4 `0 n
33.出现 Errno: 1062 的解决方法2
! z8 g1 Z$ W; E- ?( U$ Zhttp://www.discuz.net/thread-296996-1-4.html& |% s) P) r% z

2 H, e! X8 H) k4 F" ]) U- A; e, o& K$ n
34.Errno.: 1064的解决方法0 B- |: ^/ o2 f0 t
http://www.discuz.net/thread-404106-1-1.html
% u; _- `" q9 nhttp://www.discuz.net/thread-142050-1-3.html' L7 Z  U* u8 S, ~
http://www.discuz.net/viewthread.php?tid=435300&highlight=1064
$ w* j9 p: i9 A) [+ _4 c
' c9 n$ S! ]/ {4 i- J
7 Z& U4 `% P7 S. ]' [
35.MYSQL1067错误的解决方法
& e8 z' c  f( Y* V" C8 |- V9 k4 Fhttp://www.discuz.net/thread-340110-1-7.html; }7 X; j0 ?- e  u' s
0 U, f' H$ x2 W& `3 D9 C
36.出现1129错误的解决办法:
Discuz! info: Can not connect to MySQL server  a) k$ i6 w2 H1 P0 f
Time: 2006-8-8 9:06amScript: /lbbs/index.php
, d2 C6 O8 D3 A% A" H Error: Host '172.128.182.110' is blocked because of many connection errors. Unblock with 'mysqladmin flush-hosts'Errno.: 1129
7 c( V3 P' \" z' @3 X" e% Y Similar error report has beed dispatched to administrator before.7 `* C# Y+ y- v9 D; k! V
Errno.:1129:数据库出现异常,请重启数据库
, o. {0 o" u5 `5 ?/ N1.mysql数据库连接数多了,表被锁了,请将windows下的my.ini文件里的max_connections的值重新设置,然后重启mysql。
6 {3 B+ g# I/ b2.如果还有以上问题,请修复数据表.修复数据表可以用repair.php,也可以利用myisamchk来修复.6 B6 I& P! A* s! P
repair.php这个文件在Discuz!的../utilities文件夹里,需要上传到服务器的论坛目录下,然后点击链接即可.1 Q, u9 L- E6 t0 g/ v) [  v8 r
MySQL 自带了专门用户数据表检查和修复的工具——myisamchk.更改当前目录到mysql/bin下面,
2 r# D6 q) ~  G7 `7 D. |. Y9 k一般情况下只有在这个下面才能运行* _3 o; K8 Y+ {1 y; _2 D4 ?  V; W
myisamchk命令.常用的修复命令为 myisamchk -r 数据文件目录/数据表名.MYI.
" `5 T& D. V1 a5 k' E% ~0 g
. m- w. m! `' o$ d/ M9 g; U37.登陆论坛报错:
, z4 O- _: H: F0 `7 P8 |: [; L3 x8 cDiscuz! info: MySQL Query- i7 `4 g, y5 e( ^
ErrorTime: 2006-3-21 11:06pmScript: /logging.php
/ y. m: V) D/ y% k3 ^S-Q-L: S-E-L-E-C-T count, lastupdate FROM cdb_failedlogins W-H-E-R-E i-p='61.51.92.242'
( J6 Z5 q6 i# S9 F* g( HError: Unknown column 'ip' in 'where clause'
6 ^) L7 ^' p# x7 G+ l程序文件跟数据库有冲突,请使用正确的程序文件上传上去覆盖# S4 c( n/ ^! `4 D6 Y0 s
An error report has been dispatched to our administrator.1 }0 o4 e: C7 X, L: @& K  _/ U
只要用自动登陆的就可以,但是退出后再登陆就报错,是什么原因??答:表cdb_failedlogins 缺少字段ip把这个字段加上就可以了。一般都是因为用户自己安装了一些插件造成的错误。
0 a# i8 W9 b' j
& B7 V0 G3 D" L8 `9 g8 U) e; Q/ N38.导入数据库时出现 Errno.: 1193 的解决方法, G$ k! q! v" N
http://www.discuz.net/thread-459509-1-2.html
& I  A1 o# X  i& F9 Y! `% R# `# b8 t! P
39.数据恢复时出现“SQL: SET NAMES 'gbk'。。。1193”错误的解释/ p# g: w) ^5 I+ |. m
http://www.discuz.net/thread-272048-1-4.htmlhttp://www.discuz.net/thread-272048-1-1.html
" m6 s: J( @& V0 ^
: Q; O1 \. P5 x5 k( _6 ]40.数据错误1267分析和解决方案(带图示)3 G2 W$ k! w% e4 j# @3 T+ Q, V/ H
http://www.discuz.net/thread-417719-1-4.html
4 E* ?' l! l5 G/ r
  ^5 h. B. ]- ~& \' I" W& w# y41.mysql5.0数据通过mysqldump导入到mysql4.1以下的版本的时候数据表的 auto_increment会丢失的解决方法
, V) F1 C  ]1 g0 @7 ?! Ohttp://www.discuz.net/thread-348554-1-6.html
( ?6 M9 N8 r; o$ Q3 h( C( A1 b: c
) N8 d9 K  u" u0 ~! c
42.Discuz!4.1 的标准数据表遗失后的解决方法教程
3 Q  P9 C2 `% b$ y! ]http://www.discuz.net/thread-374655-1-6.html! l5 e/ F' L! n1 C, t4 d, M
  W& u% a5 f9 h8 p* o
43.Table'cdb_sgjtime' doesn't exist的解决方法!
) J4 Z2 y7 k- m  p6 Rhttp://www.discuz.net/thread-265330-1-6.html. c' K; q; C4 i& I* G
44.安装打工赚钱插件出现错误:
8 h# _* p& Q) x4 ~- d0 wS-Q-L: S-H-O-W C-R-E-A-T-E T-ABLEbbs_adlist8 N* N& ?5 }. k$ L& q
Error: Table 'database.cdb_adlist' doesn't exist
/ j8 B+ e: F# ?
数据表缺失,请恢复备份数据    的解决办法
. ]+ N8 Z0 N% l+ u, ]) r* Lhttp://www.discuz.net/thread-278691-1-1.html" X; ~$ g, Q* \' X$ E& w+ R4 a
1 b9 i9 ^( }" l$ w- A! e
45.
广告与模板的对应关系:0 R- I$ Z) @& u2 s
头部横幅广告 header.htm   尾部横幅广告 footer.htm       页内文字广告index.htm和forumdisplay.htm
' D' t7 p1 ^: X- `
# q4 N1 P- W4 {( J5 z! D
帖内广告  viewthread.htm   漂浮广告     footer.htm        对联广告    footer.htm
2 T. M" g' ?" @9 S. w: d. Q; I

  D* P$ b! S; s. V# |
46.如何设置版主和超级版主没有权限进入后台,只有管理员可以进入后台?
解决方法:
' E5 o; q4 P$ V3 B  ?* `+ R44.安装打工赚钱插件出现错误:  a2 m/ @2 B) T% R
SQL: SHOW CREATE TABLEbbs_adlist
; k% l  w+ O0 P3 ? Error: Table 'database.cdb_adlist' doesn't exist; D; ], I) o; Q/ q* V& `$ \
数据表缺失,请恢复备份数据    的解决办法' ?8 N& q5 L# t  P! H0 W- ]
http://www.discuz.net/thread-278691-1-1.html! j9 y' P+ t/ |( W3 y
# n, ]" r8 o; J4 c* B$ ]
45.
广告与模板的对应关系:
( M# ?% F5 I: Q8 D4 v# r* W头部横幅广告 header.htm   尾部横幅广告 footer.htm       页内文字广告index.htm和forumdisplay.htm
  W% [6 K$ m7 I! U( F$ {2 h; Y$ y  y8 q. {1 H0 `
帖内广告  viewthread.htm   漂浮广告     footer.htm        对联广告    footer.htm 6 C& x6 A& H# X- X0 p+ [5 t

$ I. T3 R/ I1 B1 J* g$ N0 c
46.如何设置版主和超级版主没有权限进入后台,只有管理员可以进入后台?
解决方法:
0 t5 O6 e) |9 Z
  1. elseif($adminid == 2 || $adminid == 3) {
    * m; ?' [) n% J6 N, }3 n
  2. if($action == 'home') { $cpscript = 'home'; }elseif((($allowedituser || $allowbanuser) && $action =='editmember') || ($allowbanip && $action == 'ipban')) {$cpscript = 'members'; } elseif($action == 'forumrules') { $cpscript ='forums'; } elseif($allowpostannounce && $action =='announcements') { $cpscript = 'announcements'; } elseif(($allowmoduser&& $action == 'modmembers') || ($allowmodpost &&($action == 'modthreads' || $action == 'modreplies'))) { $cpscript ='moderate'; } elseif(($allowcensorword && $action == 'censor')|| $action == 'logout') { $cpscript = 'misc'; } elseif($allowmassprune&& $action == 'prune') { $cpscript = 'prune'; } elseif($action== 'plugins') { $cpscript = 'plugins'; } elseif($allowviewlog&& ($action == 'ratelog' || $action == 'modslog' || $action =='banlog')) { $cpscript = 'logs'; }" \1 ^- x" N6 d2 b6 @
  3.          }
复制代码
2:将其修改为:
  1. elseif($adminid == 2 || $adminid == 3) {& U1 {: |5 r/ g$ q
  2.                  $cpaccess = 0;& r- Z7 e) W- g
  3.          }1 D* D/ Q' S- P8 S" }) |
复制代码
提示:请注意代码中的这个符号'}',以免出现错误.
1 ~- V6 P; R. C6 F% u8 d" f
% A# N( r! X; h
47.如何设置游客在特定的某个版区只能看到帖子但无法看到帖子内容?解决方法:
( E; N* n& f- P* w& t 首先,“系统设置->分组与级别->用户组”:将游客的阅读权限设为0;然后,“系统设置->论坛设置->编辑论坛”:选
' G% y, l' @4 z: m# F; X: m1 p0 k) ] 择你打算对游客开放浏览帖子的论坛点编辑,在“论坛权限-浏览论坛许可”处:在游客前打勾。这样就实现了游客除了访问" w0 {' V  a( ~' x  ^
您允许的论坛外,其他论坛的帖子都无法访问。
; d9 j% G+ N. C* E  I; a 同理,您也可以设置其他用户组能访问哪些论坛帖子,不能访问哪些论坛帖子。
1 n9 R8 j0 e+ O9 T/ ]2 b
. f$ V; ]' m' e( ?48.如何使论坛的首页不要出现今日的发帖数?
1 `1 h3 b; F4 I$ H9 L: s' M 解决方法:
8 g4 T$ Z2 \' n 打开论坛根目录下的templates文件,找到default文件,修改default目录下的index.htm文件,打开index.htm文件删
' W3 u1 l! z; [% g+ b) l% T! Z 除下面的代码即可:5 q% ~( w" H& {; |7 }/ l
  1. $posts {lang index_posts} / {lang index_today} $todayposts {lang index_posts} /
复制代码
如果还想修改其他设置,如今日主题数,帖子数等,同样修改default目录下的index.htm文件,找到相应代码删除或修/ r8 O7 V% f) J3 @% ~. ]) R
改即可。' w) ]  U& U  s: I
  O0 y& h! m( p5 v5 `
49.There seems to have been a problem with the database of your Discuz! Board 2 }" _( o9 [! l. e8 `0 e0 X0 F
   Discuz! info: MySQL Query Error 4 q5 p. V: ^- v! D4 [
   Time: 2006-3-28 9:04am Script: /index.php ( D' ]6 g: B4 _' C  t7 j
   S-Q-L: S-E-L-E-C-T * FROM cdb_settings W-H-E-R-E variable NOT IN('bbrules', 'bbrulestxt', 'maxonlines', 'welcomemsg',          'welcomemsgtxt','newsletter', 'creditsnotify', 'custombackup') Error: Table'151855db.cdb_settings' doesn't exist + D8 F- t; o, R
  数据表缺失,请恢复备份数据+ R5 g& J! s5 X; J; n5 D$ }4 Q! v8 ~
答:其中原因:. ^; ]" P6 l- w; i; ]
a、你在使用过程中有过修改( ~: e' w% \: k9 f
b、升级或者是转换后导入数据的时候没有成功建立" R8 e( y/ p/ N2 q3 P9 O7 |7 J
c、没有成功安装完* _. y2 k+ g; L3 C: h: U: u
解决方法:如果是新安装的数据库可以重新安装一下,如果数据库里已经有会员以及其它的数据,可以用phpmyadmin手动增加没有的表
4 R/ O! ?, _8 t- j* T
% F% l. c8 `- P2 a- ], T8 q50.   Client does not support authentication protocol requested by server; consider upgrading MySQL client Errno.: 1251: \: C( Z2 w' i) P. }4 l2 H6 h3 h! l
解决方法:" n1 t( K: s9 F( V& \/ h9 P9 B
在MySql> 命令行下输入:S-E-T P-A-S-S-WORD F-O-R mailto:user@localhost = OLD_PASSWORD('pw');( ]; ~2 x* A1 z# o, K; A0 i
其中:数据库使用的用户名是user ,密码是 pw (上面的语句后面的分号不可少)" F/ P) t" c' x; M: W; H

; c& a1 C' j% V$ R3 z7 X51.http://www.discuz.net/viewthread.php?tid=249950&highlight=iis%2Brewrite
2 N+ i# S/ _+ o
6 O1 o& L6 K$ G1 n3 e4 R0 L5 l52.大数据无法后台恢复的解决方法' x" l' ^, u# u7 E0 X

; t7 E, a/ \' ~4 C! x+ ]更改admin/database.inc.php 1 T3 Y+ J0 E/ [8 g
默认应该是:

5 W- m2 D  c) _
$ Q5 R( R, K* I* d

, v4 U0 x; l$ e* l% _8 a
+ B* z5 c6 C; ?7 [
1 n+ m5 O" t4 n* u: v
! I  J5 w3 `/ V9 A9 j
53.给会员发mail中的Discuz的修改
+ a3 V$ ]& c0 c& C: h  d( Z
" ?: J  s% u0 S5 d 后台-&gt;模版编辑-&gt;默认风格 [详情]-&gt;emails [编辑]
1 q4 h4 ]$ i; t+ s* p1 L搜索
  • [Discuz!]Email 地址验证
    ( a9 {9 \+ ^2 E6 a# k
8 u  P7 D4 G' P
复制代码
. z$ N1 w: i  ]+ G" F3 Y* i将其中的[Discuz!]替换成你想要的内容,或者删去即可。
8 n) F( D; [) ^9 l! E
; \/ M! @7 R2 t& g+ u54.4种JS调用报错的解决方法                                                                                  a.The webmaster did not enable this feature这个错误因为论坛此时关闭了JS调用解决方法:系统设置  基本设置  Discuz!选项  JS调用  启用 JS 调用  点击&quot;是&quot;
& Y3 c; W& M1 _ b.Referer restriction is taking effect  这个错误因为论坛设置了JS 来路限制,您的地址不是论坛允许的地址或者使用了代理服务器解决方法:系统设置  基本设置  Discuz!选项  JS调用  JS 来路限制   添加相应的地址
5 s: D3 V7 Z" ~$ b9 gc.Authentication failed这个错误因为您使用不合法的调用解决方法:仔细检查js代码,一般不要改动默认生成的代码
4 b" F7 ~5 X8 Q- T1 b# E: r! rd.Undefined actionfunction变量不合法,默认您只可以调用以下的内容:新帖,论坛列表,会员排行,论坛统计,附件图片.解决方法:如果您调用其他的内容需要修改javascript.php
4 l* }* ~- |% W6 l# w6 A2 F. H7 b5 R$ Y" p& l8 `: J
55.http://www.discuz.net/thread-235575-1-1.html
0 x$ b% S! D0 m" s6 Q$ e/ Y5 U9 \% l/ N

" b7 P2 ]) m9 {/ j5 _1 c5 t; Y) `. K56.http://www.discuz.net/viewthread.php?tid=431127&highlight=
: \; A$ U+ v' f
2 ?. T' Y& q3 H2 ]

, G% Q8 r9 O0 q2 }

/ ?( X7 ]% u) ~4 t5 I, |. j
5#
发表于 2015-12-25 19:51 | 只看该作者
2.怎样把贴内广告显示在贴子上面 并把广告两个字去掉!$ B: h- C; }0 I; p
  1. * _5 g  \3 B3 w8 N/ c6 g
复制代码
详见 http://www.discuz.net/thread-475412-1-1.html
  C- y8 @- `3 B3 B1 [0 f4 B9 P/ b
; G* i0 a3 x9 v* X% M4 [' E7 ^* I3.DZ5。0怎样设置只有管理人员才可看到在线列表0 O- u" q) F0 p8 b2 p
打开index.php, s6 p0 t% Z5 F
找到3 I9 |) k" [3 b

. A- K; K! _! g2 X8 W
  1. if($onlinenum > $onlineinfo[0]) {
复制代码
上面加
, w6 H) f2 Q- J& o2 w, ?" V5 A2 o- h
  1. if ($adminid == 1 || $adminid == 2 || $adminid == 3) {
复制代码
找到
0 B2 Y3 B6 M) J5 ^- Q6 O* R
" h+ _7 |+ z& w
- l4 n' V4 m4 F$ g6 r2 Q3.DZ5。0怎样设置只有管理人员才可看到在线列表4 @8 }* x* ?' R4 Y0 e1 T; {2 [
3.DZ5。0怎样设置只有管理人员才可看到在线列表
, X* E: z9 ~. I$ M应该是::6 K2 @* ]% E' I* L! T, q0 Z7 k& O

, e0 s, @1 W  W
  1. } else {
    , S: w& b, w# r( t
  2.         require_once DISCUZ_ROOT.'./include/category.inc.php';: F5 P  T) U/ P9 \! B- A
  3. }  t- W6 u9 ]+ @( }5 i
  4. }; _) }( J5 l8 M& s7 Q0 G$ M! N
复制代码

" H$ Y: P0 w, h1 z9 l% t2 `, z" h: v( B& c. @; m5 d8 C, z: `% U$ I
不然会出错!$ l1 v- ~9 \+ m0 ~, }

, t6 D+ V# a+ s) z4.如何更改“子论坛”这3个字
# W# U# Q0 v' w3 E: K# z' A
可以修改 templates.lang.php 0 ?( V; g4 A$ O; g. x7 l
查找子论坛,将它修改成您要的字就可以了3 P* ?2 x2 C( }4 V% a9 M
( c/ V7 S; n+ s$ s2 o. o- ?& E
5.把主题分类的 [ ] 改成 【 】。2 u5 X/ r+ V& S' N$ b7 l5 d& {3 t
首先打开 forumdisplay.php 找:
" n  `, F. `% K/ F' E* P
) S" m  z- U; a0 B1 q
  1. '['.$forum['threadtypes']['types'][$thread['typeid']].'] ' : '';
复制代码
然后替换成:
  1. '【'.$forum['threadtypes']['types'][$thread['typeid']].'】 ' : '';
复制代码

3 H7 ^9 s3 q  B- a如果也需要在 viewthread 里同样的把 [ ] 改成显示为【 】可以这样修改。' }! @* U4 i( M+ d# j
打开 viewthread.php 找:
: s$ b" ^  [8 c/ Z
  1. '['.$forum['threadtypes']['types'][$thread['typeid']].'] ' : '';
复制代码
然后替换成:
1 u5 O6 S$ W% g6 D
  1. '【'.$forum['threadtypes']['types'][$thread['typeid']].'】 ' : '';
复制代码

9 n" u# D( Y- t% b& Q5 E6.http://www.discuz.net/thread-397689-1-1.html1 P) a3 S" J8 c$ Y$ P' o+ z, I
/ d* M! t4 _7 n- V: E) L. {- _' Y4 Y  s

5 Z4 o' X( j1 i& b: @7.
删除用户只能删除用户主题帖,不能删除回复帖
的解决方法
9 c) C$ l2 Y4 o9 y
打开members.inc.php,查找
7 o. I. I+ L, g# `) J8 l
6 w7 ?4 I5 E+ F0 v. Y& S8.如何将分论坛的在线用户显示在上面
3 K2 e+ C- |/ v3 ~9 ]* Z/ G+ b& ~! i/ T/ z! V
在文件/templates/default/forumdisplay.htm查找- k8 c* N; z/ X: F2 R3 Y
  1. <!--{if $whosonlinestatus}-->9 N: S  o) e% ~8 T  e
  2.         <div class="maintable">: Q1 R  p4 b& r$ V
  3.         <div class="spaceborder" style="width: {TABLEWIDTH}">9 O. A5 S' {8 @) r. s# v
  4.         <table cellspacing="{INNERBORDERWIDTH}" cellpadding="{TABLESPACE}" width="100%" align="center">7 v2 p- ?  k: G
  5.         <!--{if $detailstatus}-->0 B1 A% J) W3 ?. s- y5 E2 E
  6.                 <tr class="header"><td width="100%">
    1 Q5 j/ c/ G; [4 f
  7.                 <a name="online"></a><a href="forumdisplay.php?fid=$fid&page=$page&showoldetails=no#online"><img src="{IMGDIR}/collapsed_no.gif" align="right" border="0" alt="" /></a>{lang forum_activeusers}0 ^% q5 J2 G, W6 _
  8.                 </td></tr>
    ) I* Z  M' Q; s0 A. [" x: N1 c
  9.                 <tr><td>2 J( y2 [- @( w5 |, v
  10.                 <table cellspacing="0" cellpadding="0" border="0" width="98%" align="center">9 k4 S2 ]1 P; ?: e8 P
  11.                 <tr><td nowrap>% }' W- j" I& t0 ]+ v
  12.                 <!--{loop $whosonline $key $online}-->
    ) A/ K- M# Z* L
  13.                         <!--{if $key % 7 == 0}--></td></tr><tr><td width="15%" nowrap><!--{else}--></td><td width="15%" nowrap><!--{/if}-->
    ' }6 W8 r/ }- u2 G! H! J2 C
  14.                         <img src="images/common/$online[icon]"  alt="" />( {9 n6 f6 V8 A, N; t+ y- y
  15.                         <a href="viewpro.php?uid=$online[uid]" title="{lang time}: $online[lastactivity]{LF}4 B; [4 W( S1 i: i: k
  16.                         {lang action}: $online[action]{LF}
    / f) X8 ?( z, R$ W, ]; i
  17.                         {lang forum}: $forumname">$online[username]</a>
    - O) H( d( F* f/ o
  18.                 <!--{/loop}-->
    # C, \) U4 E$ e9 I/ a! f% a# x
  19.                 </td></tr></table></td></tr>
    8 {, u0 b; Z, }% n, `. E
  20.         <!--{else}-->6 |+ _0 Y6 B( {* L: I* Z! M: M* @
  21.                 <tr class="header"><td width="100%">( s2 n' d# c- Y6 [2 o" q5 B- \
  22.                 <a name="online"></a><a href="forumdisplay.php?fid=$fid&page=$page&showoldetails=yes#online"><img src="{IMGDIR}/collapsed_yes.gif" align="right" border="0" alt="" /></a>{lang forum_activeusers}
    : n; Q6 j2 `9 o3 {9 z
  23.                 </td></tr>' w! x5 g$ B$ Q- ?# R) t. j5 ?3 ^* M
  24.         <!--{/if}-->/ \4 X& M& n: M( n6 c, \
  25.         </table></div><br></div>' B( R" ^; p( d3 z% K3 p% q
  26. <!--{/if}-->
复制代码
上面这一段 把他剪切到
. Z3 m; A% g+ I: I+ |5 U% N: r, X0 `1 a- L* v/ W
  1. <!--{if !empty($newpmexists)}-->
    * u* l; y4 ?* Z  q+ `( |. w! s
  2.         <div class="maintable">
    # y* \  Q1 ^8 b# s( K! t+ o
  3.         {template pmprompt}
    1 y" g- |3 ?6 p$ B
  4.         </div>
    + Z8 X. p' n" j; R
  5. <!--{/if}-->
复制代码
上面就OK了5 ]5 \4 k- _0 i$ N
/ U! k: Y4 {6 v# S1 ^4 o

/ T* x- O: l* w* [9 f. Z9.  Errno.: 1030
8 b8 H* t0 B0 W0 ?翻译:读表头产生错误; r( z; ]& N# L
分析:这个错误是由于数据库所在磁盘空间已满造成的。
" C. [( n- u# p, g 解决:清理一下磁盘,腾出一些空间用来运转数据库
5 V" [0 z, C7 M& C0 o  }, X0 U
; {! E3 M' m0 L$ z2 U; S* W& \6 D# @2 Q$ _, ?& c9 x% D
10.验证码问题输入正确老报错的解决办法
0 c& o: T' l0 X. @6 ]后台升级sql语句,升级后更新缓存
! d/ D9 X$ u6 k
  1. UPDATE `xsbbs_settings` SET `value` = '0' WHERE `variable` = 'seccodestatus' LIMIT 1;
复制代码
11.Errno.:1054
, K# ~( R8 j# g( q$ chttp://www.discuz.net/thread-559337-1-1.html
9 ]3 Z' l  k+ t! @8 }% V
  u, r. u& |& y9 X
) d9 s0 s8 f9 c- x2 l1 `12.Invalid argument supplied for foreach() in 解决方案+ S2 B8 `! x. s; h6 }
http://www.discuz.net/thread-481276-1-1.html
$ t0 b4 R1 c4 |) R: ]; ]& |# t
6#
发表于 2015-12-25 20:03 | 只看该作者
Discuz!使用技巧:如何防止用户在论坛恶意灌水?
% F: Z5 A: O2 s& @" o# @% l. I' b) a  y* ^& g
  1:问:如果有注册机器人在Discuz!论坛上批量注册用户怎么办?
" k7 _% ]' n- e. r# t: ]. h0 L* \# e2 H: S
  答:以管理员身份登入Discuz!后台,依次 “Discuz! 选项 -->安全控制--> 启用验证码”。将“新用户注册”选项前打勾,可有效防止注册机批量注册。
6 u8 g( S$ M+ f) H% L! U# Z0 l9 F" Y$ }0 D
0 n6 K: z# y  P5 f; _  }   另外还可以设置注册限制:“Discuz! 选项-->注册与访问控制-->IP 注册间隔限制(小时) ”在这里设置同一台电脑注册时间的间隔也可有效防止恶意注册。
, I  g9 h; \1 a! A6 t8 Z0 Z
0 }0 a1 K  V5 B1 O1 O1 }5 i   2:问:论坛如何防止论坛恶意批量发帖?1 ^" f* D) M$ i) n4 q' o0 H
- I. M( z5 V" y4 J# r2 C
  答:以管理员身份登入Discuz!后台,在后台设置防止灌水时间:“Discuz! 选项-->安全控制-->发帖灌水预防”,在这里设置两个帖子发表的时间间隔。
9 L* }) O# S# |; o
4 ^1 X' d9 `* \0 X   3:问:如何禁止论坛发表带有敏感字符的帖子?
. H; r; o3 o4 V4 t6 [% a$ z: x/ K/ w
. b; B1 |# c$ I8 B8 M7 @) v   答:以管理员身份登入Discuz!后台设置方法:依次进入后台 - 帖子相关 - 词语过滤 在 不良词语 输入框中填写要过滤的字符。在替换为 输入框中填写改铭感字符过滤后的替换字符,如 需要过滤 “他妈的”为“TMD”则在 不良词语 输入框中填写 “他妈的”,在 替换为输入框中填写“TMD”即可。有没有办法让含有某个字符的帖子无法发表呢?可以的。只要在上面选项中的 替换为 输入框中填写“{BANNED}”,则将该铭感字符设置为不可发表。
; t+ q' ^! p% I+ M
5 Y3 V+ C5 A2 H" k. Y8 T) M" i   4:问:如果发广告者在论坛各处发帖,管理员想一次性删除可以吗?( y# i" Q5 c0 L2 L- ?
, ]" P5 k# q& _* l& y8 S3 M% M
  答:当然可以。以管理员身份登Discuz!后台,选择“论坛维护-->批量删帖”,在“发帖用户名”一项中填写恶意发帖者ID,点击提交后出现该ID所发表的所有文章,全部打勾或有选择性的批量删除即可。; r$ k5 M" o3 Y1 `' C

4 }( ?$ G% N& k; }- ~9 l6 L      5:
http://www.discuz.net/thread-452447-1-1.html
- \% N# ^# ^" u* J& s% P. x
' ?& T) L: h! k9 d3 A: |0 t% h" S
8 z: w/ p; e# o( i7 ^9 U2 i0 e
http://www.discuz.net/thread-468409-1-1.html; e$ O' r" r0 ?; c! h1 e

) }. M9 U2 {0 J( x4 L& A8 [8 q8 [6 f5 B9 b
http://www.discuz.net/thread-467554-1-1.html
0 z" U6 ^) f# q, g( U
5 ^  W- K  ^' H* \* t
7#
发表于 2015-12-25 20:08 | 只看该作者
数据库问题解决方法整理一、Can't connect to MySQL server on 'localhost' (10061)- L  N. e# r& `6 ?9 Q9 P5 q8 b
翻译:不能连接到 localhost 上的mysql - H4 Z! p( G9 z
分析:这说明“localhost”计算机是存在的,但在这台机器上却没提供MySQL服务。 2 `& T, v! y: i, d2 f
需要启动这台机器上的MySQL服务 * u3 J" F0 O2 W+ |8 V
如果机子负载太高没空相应请求也会产生这个错误。 ' L* D' h+ X, \& J$ K* y' Q1 o
解决:
3 C0 X! l! [4 `, S: D既然没有启动那就去启动这台机子的mysql。如果启动不成功,多数是因为你的my.ini配置的有问题。重新配置其即可。
: Q0 R- o8 ^- y+ ?2 e: g 如果觉得mysql负载异常,可以到mysql/bin 的目录下执行mysqladmin -uroot -p123 processlist来查看mysql当前的进程 二、Unknown 4 q7 ~+ t" R' S5 `# O% y

( S3 A& X. B3 w' w4 |二、MySQL Server Host 'localhosadst' (11001)
6 F6 v4 D# x6 A6 ?: W0 I1 T翻译:未知的MySQL服务器 localhosadst 4 `4 O/ X% j: ?) q* l: r4 u
分析:服务器 localhosasdst 不存在。或者根本无法连接
/ q  }2 K1 T; a6 ^解决:仔细检查自己论坛下面的 ./config.inc.php 找到   A1 o8 x4 _9 A5 x, h  i
$dbhost
* w9 y- U# t( G9 o5 ~) d, m重新设置为正确的mysql 服务器地址
0 }: \' S8 j5 n3 U' I/ m; O" m8 Q, N- {. g+ p* L

- j" ]% O- K% v# }) E三、Access denied for user: 'roota@localhost' (Using password: YES)
$ L; d* c1 A! X' q翻译:用户 roota 访问 localhost 被拒绝(没有允许通过) * x: A/ b1 q% N
分析:造成这个错误一般数据库用户名和密码相对mysql服务器不正确
1 ^5 ~9 Q7 f# C5 k# y8 Y解决:仔细检查自己论坛下面的 ./config.inc.php 找到
! ~! a4 D# b+ u- o      $dbuser
* Q  D  @4 w# L. j4 D      $dbpw5 d+ Z, G9 O  G. O8 G: v5 u( W
   核实后重新设置保存即可 : k! i0 h# [8 b9 }8 D% n9 J: E

# h* w8 L9 @1 j$ ?7 A. E: V五、No Database Selected6 u' D& j3 \' H0 E" {* v
翻译:没有数据库被选择上 ! [4 ~- Z5 [& p
分析:产生的原因有两种
! a+ j3 P5 U3 Lconfig.inc.php 里面$dbname设置的不对。致使数据库根本不存在,所以在 $db->select_db($dbname); 时返回了false $ P1 j1 ]: g# q: c+ L0 M
和上面问题四是一样的,数据库用户没有select权限,同样会导致这样的错误。当你发现config.inc.php的设置没有任何问题,但还是提示这个错误,那一定就是这种情况了。
& Z6 E* k" n$ t 解决:对症下药 " P- }0 r- B9 q( L/ \3 t' k
打开config.inc.php 找到$dbname核实重新配置并保存 ' w! x7 T' k' N4 i7 d" ]
同问题四的解决方法
. F/ J# \* i) K六、Can't open file: 'cdb_forums.MYI'. (errno: 145)
0 v0 r3 e7 f, b# a3 x5 w2 {翻译:不能打开cdb_forums.MYI 5 _% a$ M. `3 N
分析: 6 U- C, a, J' ^7 E
服务器非正常关机,数据库所在空间已满,或一些其它未知的原因,对数据库表造成了损坏。 1 E# E8 S3 }+ O6 }" n
类unix 操作系统下直接将数据库文件拷贝移动会因为文件的属组的问题而产生这个错误 / j  _' w1 `& S
解决:  
7 t; [& ~) t' s修复表即可,用phpmyadmin 或者 repair.php或者直接用命令修复 myisamchk -f ../data/newbbs/*.MYI
/ u6 @: P1 |& |4 v* a修改文件的属组, J" F; b/ U  m5 q  z( t. V
5 r8 x+ x& e/ F# ?1 Z2 f* o9 W
七、Table 'test.cdb_sessions' doesn't exist
# T  p0 G- N$ u) h1 w7 {* d翻译:xxxxx表不存在 # Y# b" I0 i/ m/ j7 ^
分析:在执行sql语句时没有找到表,比如:SELECT * FROM cdb_members WHERE uid=’XX’ 这里如果表cdb_members不存在于$dbname库里,那么就会提示这个错误。具体可分为以下三种情况来讨论: , I! g* j, D: k; |" [6 }; C
安装插件或者hack时修改了程序文件,而忘记了对数据库作相应的升级。 " n3 N- z. S, }# \9 R, g
后台使用了不完全备份,导入数据时没有导入到已经安装了相应版本的论坛的数据库中。 / m# P9 K, p  R- Q3 E6 [) z& a
程序文件和数据库不配套,比如d2.5的数据库配置给d4.1的程序来用肯定会出现这个错误。
  ~8 Z& F! Q, C5 l6 b解决: 同样对症下药,不同的原因不同的处理方法。 # ?- Z( V' y: n+ ?
仔细对照插件作者提供的安装说明,把遗漏的对数据库的操作补上,如果仍然不能解决问题,那么应该怀疑该插件的可用性了。去咨询一下插件作者,或者将其卸载。
4 F2 |2 s3 ]) z  \9 q 利用Discuz!论坛后台自带的数据库备份时,如果没有选择完全备份。那么在恢复的时候一定要恢复到一个相应版本Discuz!论坛的数据库上。例如:目前使用的论坛为DZ4.1,数据库名为db4.1,在DZ4.1的后台使用标准备份,那么恢复的时候可以恢复到db4.1的这个库上,或者全新安装一个DZ4.1,之后导入这些备份。
- Z& k2 H9 W6 |' _  o8 Y2 W9 u 不要张冠李戴,多大的脚就穿多大的鞋。总之使得程序文件和数据库配套即可.
, \& G( i; S. y- O6 U- a/ f! c& g4 q; q, A- ]
八、Unknown column 'column_name' in 'field list'
+ o% V- w, k% H, D2 H翻译:未知的字段名 column_name
) B4 I: N$ O3 S4 }+ M8 `分析:在执行sql语句是出现了指定表中没有的字段名称,就会出现这个错误。具体导致的原因可分为以下两种
, p2 {2 o3 k8 I7 p7 l 安装插件或者hack时修改了程序文件,而忘记了对数据库作相应的升级。
8 ?, o- E) y2 V# z 程序文件和数据库不配套,比如d2.5的数据库配置给d4.1的程序来用肯定会出现这个错误。 2 M% Q/ I  r( z6 [0 p6 U6 I
解决: 导致的原因和问题八的1和 3是相同的,所以解决方法也一样。
- l/ V# b7 v- Q' u' X2 {九、You have an error in your SQL syntax
+ `- `" n; b! R- b# L) _: J翻译:有一个语法错误在你的sql中 , ?  V. a7 J4 J
分析:论坛标准的程序是没有sql语法错误的。所以造成这个错误的原因一般就两类
  E* I- Y$ T/ V1 O; V+ z) [4 e 安装插件或擅自修改程序。
1 d& H; F" P4 d% W7 @! B2 N& u 不同的数据库版本数据库导出导入,比如MySQL4.1的数据在导出的语句包含了MySQL4.0没有的功能,像字符集的设定,这时如果将这些sql导入到MySQL4.0的时候就会产生sql语法错误。
$ b5 V& W/ X8 f6 ] 解决:
! m/ B# L4 H& ^# H& R3 ]6 u% h4 f' { 仔细检查看到底是哪里的错误,将其修正,实在不行就用标准程序把出错的程序替换。
) }1 c# x: I5 d7 D4 j; u5 M% v 在数据库备份的时候要留意,如果不打算倒入到其他版本的mysql中则不用特殊考虑,反之要特殊的设定。使用DZ4.1的后台数据备份,可以按照提示去设定想要的格式。独立主机的也可以在到处的时候将其导出为mysql4.0的格式。   Y7 F* a* c1 y) _
    mysqldump -uroot -p --default-character-set=latin1 --set-charset=gbk --skip-opt databse > test.sql% n) Z; D6 _3 q
十、Duplicate entry 'xxx' for key 1
& U) J9 I3 H' F& ^* r0 s翻译:插入 xxx 使索引1重复 + b+ j! q8 K0 a- \
分析:索引如果是primary unique这两两种,那么数据表的数据对应的这个字段就必须保证其每条记录的唯一性。否则就会产生这个错误。
* {# c0 X( `6 C8 N. q# |/ ?: Z" w 一般发生在对数据库写操作的时候,例如Discuz!4.1论坛程序要求所有会员的用户名username必须唯一,即username的索引是unique,这时如果强行往cdb_members表里插入一个已有的username的记录就会发上这个错误,或者将一条记录的username更新为已有的一个username。 * @7 K! D) F  _! X% ?' `/ \
改变表结构的时候也有可能导致这个错误。例如 Discuz!4.0论坛的数据库中cdb_members.username 的索引类型是index这个时候是允许有相同username的记录存在的,在升级到4.1的时候,因为要将username的索引由原来的index变为unique。如果这时cdb_members里存在有相同的username的记录,那么就会引发这个错误。 0 s; s& J" c* d8 o- Z6 R& i
导出数据据时有时会因为一些原因(作者目前还不清楚)导致同一条记录被重复导出,那么这个备份数据在导入的时候出现这个错误是在所难免的了。 , S9 K; A7 G0 K3 {2 E8 i
修改了auto_increment的值,致使“下一个 Autoindex”为一条已经存在的记录
8 q8 m3 z' [8 o0 @解决: 两种思路,一是破坏掉唯一性的索引。二是把重复的数据记录干掉,只保留一条。很显然第一种思路是不可取的。那么按照二的思路我们得出以下几种解决方法,对应上面的i ii iii
" F( Z+ B. E1 `( a( M1 k5 b; a9 F2 V* k( h  S4 t
按照错误提示里的信息到数据库中将重复的记录删除,仅保留一条即可。之后继续执行升级操作。 / \: W  J" t+ @" d( |  [& G' S
这种情况发生的概率很小,可以用文本编辑器打开备份文档,查找重复的信息。将其多余的拿掉,仅保留一条即可。 . |2 _: \$ l# E4 v- _5 I1 S
查询出表中auto_increment最大的一条记录,设置auto_incerment比其大一即可。
# P$ N% B2 I1 |4 j: @; t1 n十一、 Duplicate key name 'xxx'
. U) X+ k: M4 v+ a. T翻译:索引名重复 % n6 `0 O* }* u
分析:要创建的索引已经存在了,就会引发这个错误,这个错误多发生在升级的时候。可能是已经升级过的,重复升级引起的错误。也有可能是之前用户擅自加的索引,刚好与升级文件中的所以相同了。 : D+ M3 ?' y4 x, a" K' [
解决: 看看已经存在的索引和要添加的索引是否一样,一样的话可以跳过这条sql语句,如果不一样那么现删除已存在的所以,之后再执行。* ^/ N7 |5 k. [& V
  十二、 Duplicate column name 'xxx'. h& `  i! c- |- x6 R5 [. v
翻译:字段名xxx重复 9 F/ ^  K5 Q2 B8 g
分析:添加的字段xxx已经存在,多发生在升级过程中,与问题十二的产生是一样的。
1 l" J( G/ G9 i4 g! W' o$ q( ]( |解决: 看一下已经存在的字段是否和将要添加的字段属性完全相同,如果相同则可以跳过不执行这句sql,如果不一样则删除掉这个字段。之后继续执行升级程序。  q6 X0 H4 g& P0 ?7 t
十三、 Table 'xxx' already exists
' V' Y  G# J  d$ H! A7 G翻译:数据表xxx已经存在
) T( |4 C2 R) t  [! c; ~5 J# V 分析:xxx表已经存在于库中,再次试图创建这个名字的表就会引发这个错误。同样多发生在论坛的升级中。类似于问题十二。 + c/ Q$ Y) Q! C5 S2 m1 f6 |$ W/ i  s
解决: 看看已经存在的表是否和将要创建的表完全一样,一样的话可以跳过不执行这个sql,否则请将存在的表先删除,之后继续执行升级文件。
& C9 r% [3 ]$ B3 o- W/ I& U十四、 Can't create database 'xxx'. Database exists# p4 s  m% J4 o) }
翻译:不能创建数据库xxx,数据库已经存在 / l! H+ b0 E! a
分析:一个mysql下面的数据库名称必须保证唯一性,否则就会有这个错误。
+ @$ I* Q# n% a! e# n0 y6 C 解决:把已经存在的数据库改名或者把将要创建的数据库改名,总之不让他们的名称冲突。" D' _/ T: W/ o' U; t0 i
十五、 小结(针对问题 11\12\13\14\15)
, y% z  X* f* j1 b! i$ y 此类问题错误提示中都暗藏一个关键词duplicate(重复) 3 ^: V# b$ z& }1 }3 O
那么对于mysql数据库来说什么东西是不能重复的呢?
: X; T6 s1 L; L7 C+ [ 数据库 database * c2 ~7 E: |4 q! s% @: R
同一个数据库下数据表 table ) K9 c& s7 F' o' N8 }/ e1 G+ X
同一个数据表下字段 column + u' L6 ~$ N% j. K# Y, c
同一个数据表下索引 key
1 |/ H! n9 A, c9 c/ }8 k3 r同一个数据表在索引唯一(UNIQUE PRIMARY)的情况下记录中的这些字段不可以重复
# J! _. r; B# h( j  W$ P  l, l
# K9 x3 ], i% d% r9 ]( G十六、Unknown system variable 'NAMES'2 y- E% N% [: Y
翻译:未知的系统变量NAMES 1 @% S2 Z) u* R3 n/ G2 O
分析:Mysql版本不支持字符集设定,此时强行设定字符集就会出现这个错误。 % ]2 K, d* d) L0 k6 B. W
解决: 将sql语句中的SET NAMES ‘xxx’ 语句去掉 / R7 E  H# t5 N( F! L/ e8 N, O
6 Q! ], E8 T0 u4 J0 y! \
" }$ p% o! i; Y) f
十七、 Warning: main(./include/db_.class.php) [function.main]: failedto open stream: No such file or directory in/export/www_site/eqdkp/bbs/install.php on line 417$ {. H2 |: F) J1 e: F' ^
翻译:
打开文件(./include/db_.class.php)失败,不是一个文件和目录在/export/www_site/eqdkp/bbs/install.php 417行 1 ~) }: u" r0 h& O& |
分析: ' F0 r1 f9 f' c1 r8 O1 [
大家仔细看就明白了,标准程序里根本没有 ./include/db_.class.php这个文件。Install.php和include/common.inc.php 两个文件的调用可能会引起这个错误 require_onceDISCUZ_ROOT.'./include/db_'.$database.'.class.php';include'./include/db_'.$database.'.class.php';这两句分别是common.inc.php和install.php文件中的程序语句,这里当$database = ‘’;那么就会产生上面的错误。
# W( u' ^! h) F- O. o8 |0 \, H! A4 O" [# d; o
在极特殊可能由于一些未知的原因造成config.inc.php没有被读取成功。 - @( ?0 ?3 \* v9 w( O9 U* d" D
解决: 0 o7 i2 F6 z* ^8 e; X
问题分析清楚了,解决起来很容易,打开./config.inc.php配置好$database
, F2 ?$ Q, E/ Y. u2 U0 i5 T! t8 k2 r如果config.inc.php确实已经配置正确,请重启web服务器。* o2 H( C0 Z+ d! d+ I& @

' }! D) h# p7 E! a2 }十八、 Lost connection to MySQL server during query: ?9 ?2 l" V/ w' t; e- @
翻译:MySQL服务器失去连接在查询期间 , B3 r5 H" L% z- G7 H
分析:远程连接数据库是有时会有这个问题。MySQL服务器在执行一条sql语句的时候失去了连接造成的。
5 B) ?8 N7 X3 y/ }4 l1 o/ G: D; Y3 ]* J解决: 一般不需要怎么去处理,如果频繁的出现那么考虑改善硬件环境。
" @6 J6 [6 B" P# u8 ~) W7 Y; B& y
十九、halt(DISCUZ_ROOT./include/db_mysql_error.inc.php): failed toopen stream: No such file or directory ind:\usr\www\html\discuz_new\include\db_mysql.class.php on line 117% o' u8 ^; f% f* u
翻译:同问题十三 2 _& J1 Q5 i9 Z/ _. w
分析:凡是此类(failed to openstream)都是一样的问题,即找不到指定的文件或者无法打开。对于这个问题一般出现在restore.php的使用中,大家注意看DISCUZ_ROOT./include.db_mysql.inc.php似乎很熟悉,其实这个根本不是一个合法的地址,程序中的DISCUZ_ROOT是要被它的值所代替,但由于根本就没有定义DISCUZ_ROOT这个常量,所以DISCUZ_ROOT被当成了字符串直接来用了。
, B1 ^- B2 V" @7 Z9 u解决: 一般情况使用restore.php恢复备份数据是不会有错误产生的,但是如果他的备份本身是由问题的。比如问题十一 。那么只要在restore.php前面添加对DISCUZ_ROOT的定义即可,具体如下: ' a3 g4 t+ I( G
   define(‘DISCUZ_ROOT’, ‘./’);1 N1 z' k( y% g+ U, x9 E& O
" K+ n: N5 T* W$ z3 R1 t; B
二十、User 'red' has exceeded the 'max_updates' resource (current value: 500)
/ I) {5 z6 G+ n* }/ W翻译:msql用户red已经超过了'max_updates'(最大更新次数),'max_questions'(最大查询次数),'max_connections'(最大连接数),当前设定为500 9 P9 w, W6 E; {1 @9 M
分析:在mysql数据库的下有一个库为mysql,它其中有一个表为user这里面的纪录每一条都对应为一个mysql用户的授权。其中字段max_questions max_updates max_connections分别记录着最大查询次数 最大更新数 最大连接数,当目前的任何一个参数大于任何一个设定的值就会产生这个错误。
& {0 ]7 L1 E0 t8 w# a解决: 独立主机用户可以直接修改授权表。修改完之后重启mysql或者跟新授权表,进入mysql提示符下执行
+ ]: H2 T9 f2 g, c$ f) K      FLUSH PRIVILEGES;
) p- x( L& _9 v1 P. h/ X      记得后面要有分号’;’
7 E! w# B+ J( G6 G4 H  w4 \      虚拟主机的用户如果总是出现这个问题可找空间商协商解决。9 R, [7 ]. ]; t# l* M
二十一、链接过多,请联系空间商7 s( n' ^+ H  f! V2 x! o
翻译:达到最大连接数
1 h9 J6 ]$ S/ ]4 c1 W) P 分析:连接数超过了mysql设置的值 max_connections 和wait_timeout 都有关系。wait_timeout的值越大,连接的空闲等待就越长,这样就会造成当前连接数越大。
0 P$ k' x4 N( S+ F4 F解决: 修改my.ini的max_connections 和wait_timeout 前者调大后者调小一些。' C) i) v( ^6 r5 q
* x' W3 [0 v% h$ z  C, ~
0 P- [- `" \2 m9 q4 c# |
/ s' v7 J  s! x$ x$ ~, U
; d. l8 m% |. o- u

0 E2 g5 D( L7 {. Z! Y2 s
  j9 x+ s) }  E5 U/ }: n# s
8#
发表于 2015-12-25 20:13 | 只看该作者
1.每点一次帖子就显示为10次的方法(就是增加点击率) - `/ F) g6 d+ i# U, |  q& R

/ z0 K5 I' |; k* K' V3 l打开 viewthread.php 查找:6 e* a- g$ O& }' R
6 D4 {& K5 {( h$ _4 n" A
01.$db->query("UPDATE {$tablepre}threads SET views=views+1 WHERE tid='$tid'", 'UNBUFFERED');* W) i/ B+ g/ L& K9 v. @: ?& P
复制代码其中:
* i* a8 i. Q" g" k: eviews=views+1! t8 h8 m. @7 x* k9 |5 [  V( R
可以修改成你需要的,如:* l+ m. H1 ]( Z" N$ t& u
views=views+10" [2 y0 z2 k: z7 U8 @1 ~) T6 w
$ n* r4 d' h$ l, k2 V
2.超级简单实现用户名的限制修改!!DZ4+DZ5
, }; A5 d# U3 f% h( M register.php2 N( t3 A2 R+ X+ ~2 b
找:
: J+ \" Z+ p" Y* E  A0 o. w8 a& d; \1 t5 t6 d% s9 S
01.$username = trim($username);
. T! h/ e" W$ Q$ F9 r9 J$ Y/ G# V复制代码; v' B# ~  h2 J2 }
下面加:
5 o# \: n# @7 f0 B; ]5 p7 J1)./ ~) L1 c' Y. i7 l
8 L+ Z* y8 B" B% _% f6 f
01.if (!preg_match("/^[".chr(0xa1)."-".chr(0xff)."]+$/", $username)) {
/ ~/ i. N& ]4 d" F# }7 s9 Z: A! ]1 s6 d- v# f
02.                showmessage ('用户名必须是中文!', 'register.php');* N) T& }8 m2 w% ]0 n4 O

6 j0 O3 C0 F% C' A6 k0 f03.        }# G8 |% H+ Q: m/ A
复制代码& d$ r) Z, h: b1 \5 j/ e
2). 用户名只允许使用26个英文字母
; s/ p& L2 U; ?) i' g# M! _
9 B. ^! P4 `: g- H2 e% `$ C3 h" P- }6 d
01. if(!(@eregi("^[A-Za-z]+[        DISCUZ_CODE_2        ]quot;,$username))){$ e4 s9 J% |% ^5 X' d/ Y! B2 Z
. i, n6 U$ |# a' L7 H4 w  O0 E# R
02.      showmessage('用户名只允许使用26个英文字母和数字');
1 Y; x8 W' j5 S9 Z7 X0 @8 f
+ ?' |: O) N1 q" T. L8 \* v- ?03.  }+ s  y- G) M+ h+ ~: I
复制代码
; Q1 @! V7 S+ {; S& I' q  j# x2 h3).用户名不允许是全数字.' [2 ^. O* t% h; F' T
- J3 N3 I0 o, p0 b* l% J
* S& L6 S6 @% P" \+ S! F4 n
01. if(@ereg("^[0-9]+[        DISCUZ_CODE_3        ]quot;,$username)){
. l: [9 `: X# P  D) i/ ?; a9 ^* y
5 u( p2 P2 {, T) U2 V02.+ ^( u" W, t# K% S% f
7 x  U; Y7 w8 l6 I1 c2 y
03.     showmessage('不能全部以数字作为注册名,请返回修改'); }. ^2 {& X, N1 k6 T+ ^
复制代码
: _! ~0 d9 d! Q# S  f/ H9 i3 j! Y( |3.自定义表情的修改
: e7 O  \# b5 b6 }% P) p  q   首先,将表情图片文件(gif格式)上传到"./images/smilies/" 目录下。然后到 帖子管理 →Smilies 编辑→对应替换Smilies 文件名.
& O. v+ G  f0 ^: E7 L3 s1 j9 A/ Y# N. R, c0 G8 M( D; S
4.只想显示 共 xx人在线 | 最高纪录是xx 最终解决办法
$ F, f! c+ _  A
; P& s& I" X- e9 {  V7 N: Gindex.php文件里找
( B. D' L# e) K9 d6 v: M
! ?7 s' S) c' K! X01.} else {
$ _+ B5 v: \; A) \9 l) c( F' e7 V, q" j" o
02.) Y" X& L" i1 n' w: w

8 n* a2 O9 o& P4 C: k' y" s0 _03.$showoldetails = false;* |& h" U2 c, J: @. P

: l+ D% r/ \" l04.4 H. {1 j; E9 a

8 f6 [. a, k& v( C05.}" X( h7 T7 i  u* X& |2 J( s
复制代码改为
; g9 j; V) `  y; j' ^$ H9 I) H1 U- d
01.} else {
( x& k' p3 ~) P: G. S. C; T7 R
/ i0 }: C! t4 Y3 s: l; o. \& q02.+ b0 S- G/ O( Y2 ?2 W3 r" d# i
7 r' [4 _  F# S( ]& t! f9 K" A
03.$showoldetails = true;
$ Z& t' X: B" Q  q# P
. s& Y! j) J. K3 h+ g* l8 |6 a04.( |2 W! q( ]; A' E8 F
+ |% Z! P" e3 r
05.}3 r$ h0 P4 _) u2 m* F; y
复制代码discuz.htm文件里找5 ^$ N8 |2 U  L. g# o
* `) [* W2 \4 i5 @
01.<tr><td colspan="7" valign="middle">$_DCACHE[onlinelist][legend]</td></tr>
5 Y% d; `/ S7 G- M& s/ E- h7 z) T( {
02.
3 Z8 V' E- |7 h5 E) E* ^! ]6 `3 s: q! x0 D5 s- c+ t
03.                <!--{if $detailstatus}-->6 X3 ~7 a2 t) R& c( r
复制代码改为" F- a% v2 ~. U. e& C

9 z" ?& f: z7 q1 m, z( T# a01.<tr><td colspan="7" valign="middle">$_DCACHE[onlinelist][legend]</td></tr>
8 l8 D/ F/ A& H4 d& ]9 e2 C0 V
! Z" N$ v4 s' g3 V' M0 ^02.7 B/ E" ?( O( T
: N/ {- B% }7 {/ p/ D+ G
03.                <!--{if 0}-->
& I! L2 `) {0 w7 `9 W' h+ D复制代码5.EMAIL前缀带[Discuz!]去掉的方法0 D0 E/ G. |' [7 G% v" S$ q
修改admin/members.inc.php  H9 A6 O8 I9 S; b) |% R5 [6 M
488行  替换成您自己的1 y, m0 O8 l; T) H3 n- s6 t" K8 O
9#
发表于 2015-12-25 20:23 | 只看该作者
  ]3 p' C' u. g8 G

5 s& q9 V$ O9 v, y1.Flash Video视频文件的使用方法
9 i" ]7 ?" i. x6 D7 R6 |. t* E& D9 Yhttp://www.discuz.net/thread-477901-1-1.html  2#6 L: M9 G3 u, \) \6 n

* `' }( n8 _: Z# i" V4 K5 t 2.
如何配置config.inc.php文件
2 C+ l6 q) ^( Y/ M: M  z, F) `! f. d/ e7 ^1 S, \
$dbhost = 'localhost';  // 数据库服务器 一般来说MYSQL和WEB安装在同一台主机上那么此项目应该填写localhost 如果MYSQL和WEB分离,那么需要填写MYSQL所在服务器的IP地址比如:61.83.59.128
* ~, M$ s( v' N9 s% a4 i8 J7 A! k. ^& [: P) @
$dbuser = 'dbuser';   // 数据库用户名 这个项目是填写您MYSQL登陆的用户名 因为一个MYSQL用户可以有几个数据库,所以请大  家区分数据库帐号名和数据库名的区别+ b3 _1 z7 F* v: O
$dbpw = 'dbpasswd';  // 数据库密码9 o" h' c0 K$ N7 [, o
% i9 }% V% G; u
$dbname = 'dbname';  // 数据库名 这个是你通过自己的MYSQL帐号建立的数据库名 部分虚拟主机限制了你的MYSQL帐号无法新建,而是在开通你帐号的时候就帮你建立好了,通常是和你的MYSQL帐号一致名字的数据库
& ~8 e. n" v1 S8 f' k( h5 M9 f* }6 G+ V4 h
$adminemail = [email=]'admin@your.com'[/email];  // 论坛系统 Email  `" ]" u$ \1 r5 c4 Z3 _4 s

1 q$ H6 i% I4 s $dbreport = 0;   // 是否发送数据库错误报告? 0=否, 1=是  当您数据库出现问题你可以选择是否发送报告到您上面的信箱里- w- V5 z* q$ E& ^- `$ {3 W
& \  ]! E4 H, Q( x$ _2 D! u) J* N
0 U  @( s$ J8 L% L. Z
3.文件权限修改方法介绍+ N2 ~% B4 |6 `, x8 _6 c0 [
http://www.discuz.net/viewthread.php?tid=487165
# p) M# D5 b* g9 ^
5 x5 w" X" C) a. K# b# D; b

! y# J% ~: i: P* M3 F
) p8 f* L6 d4 s7 }5 P! t请问如何在论坛里播放 FLV 视频文件

8 n8 _$ ^- G- I' m/ ^3 L
; j1 ?, _: A$ h6 y0 N第一种方法:4 y" [9 I) b) e) [0 i. V
' p4 z* o3 ~* g  l- O
将本地Flv文件导入部署到Flash软件中,以库中元素的形式而存在,将该元素拖入场景,调整位置后,发布为swf文件即可。
0 U/ _" q6 b1 X9 O5 r! J3 Q3 G
7 U; A/ l) x  Q" |4 c 注意以上文件在本地测试没有问题,但上传到网络时,其他浏览者是无法查看的,因为当前的播放器调用的是本地Flv文件。7 p# `6 f) H/ S. J9 f

& p- j1 s* g' K. x( T' {; t% T9 s 所以,需要调整路径。首先需要将Flv文件上传到某个网络空间,并且获得其准确的路径地址。
2 f4 K* v9 V" e, R( m  i: B" K# Z! X5 X
其次,打开Flash软件,选择Flv组件,Alt+F7打开“组件检查器”,将“ContentPath”中的路径由本地地址替换为网络绝对地址
8 A- f* k3 B3 l" B# v7 \
) r5 ~) ?% X- \[img=1,1][/img]
2 ^% _* V7 [  k; j; K 再来将该Flash发布导出swf文件。这时候才可以任意使用该swf文件,如同插入其他一般Flash文件一样。( q# o3 q/ ?9 ]5 s. ]! ^
- c6 t% W9 ^) o/ l, n
$ Q5 A0 y, n0 ~6 ^

# z# f& c' @8 h3 T# o) ^+ X 当然,此时还会有个播放器控制按钮相关的一个swf文件,记得要附带着。( _1 f; |+ H5 N

& E! V- ~$ M1 i, f% k: O) V3 Y 第二种方式:
# e& `9 A: t4 F
* P, i9 F4 ~. b5 v" U% c 在第二种方式介绍之前,你有没有发觉第一种方式有点麻烦?因为我们是需要将视频插入到网页的,现在却需要先制作一个swf播放器文件,其中还有些曲折。然后再打开网页编辑器将swf文件插入。3 l+ I! v4 Q. y: p* M7 e6 }+ u. z, u7 j
& B+ B- R; R9 B) G. ?
正如我们在网页中插入Flash按钮一样,先要用Flash制作按钮,然后将该Flash插入到网页。但你有没有注意到Dreamweaver提供了直接插入Flash按钮的功能,也就是说:你不必去制作Flash按钮,直接通过DW中该途径就能很快完成自己的需要。: B8 A/ j4 }/ P* F# x2 J+ x" ]
! E; x' z6 v* ?
那么,同样,现在的Dreamweaver8支持了这一功能:插入Flash视频. y* c( ^7 ^, j& Q

2 x( ?4 C/ p% Q! O; S 你不需要去制作播放视频的swf文件,只需要提供一个Flv视频文件即可。这也就是我所要说的重点。
7 r9 @8 Y4 H+ v) ?
9 C' D# M% @. I8 Y9 e4 N9 Z" R 打开插入面板,选择常用类别,单击媒体按钮后的向下箭头,从下拉列表中选择“Flash视频”
, v  m2 a* n5 d# R4 {- u5 a- v- z: r4 |0 Y
[img=1,1][/img]9 Y) `9 ]6 N. ?  y* a( L
弹出的对话框中,可使用网络上已经固定的Flv文件地址,还可以是选择浏览本地的Flv文件,但要注意该Flv文件应是你所定义的DW当前该站点中的,以获得相对路径,便于之后所有文件一起上传后,一样能寻找到该文件。% c' k  }; R8 m/ v  ]( Q

% Q- u( _8 A  e2 k5 m" t 不出所料,设置完毕后,DW8自动生成了FLVPlayer_Progressive.swf播放器文件和Halo_Skin_3.swf控制器皮肤文件。* D$ e% f+ ^' u8 u8 Y; Q$ L
4 G& f2 q/ w+ s9 D3 T
那么,最后你上传网页时就是4个文件一起上传
8 Y( {' s7 X6 K- N- v/ N; y, |
. D: W  j. Y) M! ]* N) c[img=1,1][/img]
) A2 c5 R' x( i; e4 NOK,
4 n. J7 ?: I1 u$ V, b* T5 n. v) s% A  }/ _  b. s
第三种方式:
% V2 i8 E! U% f4 P, y6 L+ |' s7 |6 H7 U/ Z
如果你还是觉得文件比较的多,只要要一个播放器和一个Flv文件就了事。那么,借用下Google的这个swf播放器googleplayer.swf,自己只需要提供flv路径就可以了,除flv外,googleplayer.swf还支持mp3文件。
: G+ s3 C- \- `- P% X+ y
/ B- h0 u# ]1 X# w, U0 l 具体如何使用google的这个播放器,Danger同学介绍了个: http://www.dengjie.com/weblog/comments.asp?post_id=1066
9 G  L" r* N. a! N7 _2 D) l4 e- q9 G* m, c9 b8 I2 Y
并且还提供了个在线工具             
& E3 `4 X: m% G! u3 b% U) Y% L6 X& f' F8 a& J  V1 Y" B, G+ ~
以下显示的则是通过上面的工具设置的,采用的Google的播放器。  i: Y) B/ ^' `- U; t

, t$ ]& D+ W% q# {. Whttp://video.google.com/googleplayer.swf?videoUrl=http%3A%2F%2Fwww%2Ecnbruce%2Ecom%2Fflv%2Flaislabonita%2Eflv&thumbnailUrl=http%3A%2F%2Fwww%2Ecnbruce%2Ecom%2Fblog%2Fimages%2F2006%2D2%2Ejpg&playerMode=normal
. V7 M- j6 V! j2 g
" e8 j6 S7 o! ?5 c# S+ Z当然,毕竟这个播放器是Google的,只要通过URL的参数选项即可播放相应的该视频文件。
% n9 l: s  H1 @
% y7 e) p- E2 q3 v! c  N# ]- Y 如果能脱离第一、第二种方式,使用第三种方法又不想使用Google的播放器,那只有自己来写一个swf播放器了。$ I% ~7 z7 f' ]1 u* d5 `! m: G6 n: o

9 N7 @* ^0 M5 _: H& `) k5 c
10#
发表于 2015-12-25 20:25 | 只看该作者
收藏了收藏了!+ f) t$ w8 e) L" \

2 g' g% u+ D' l* e2 X6 O1 |0 }8 u$ i( G) {, T
- ~: x( ^# ?+ H, B0 l

% I4 f$ c' B, c3 U0 R! R  `这里抢来做sql语句的存放地点" M. s7 r, M" S3 w7 K
, ^% d2 ]3 G5 N. h6 _, i
1.调整某个帖子的点击数3 i: V, l+ n8 d* K7 k
3 o6 `& R# M( n3 V

! k2 B- o1 e# q01.UPDATE cdb_threads SET views=点击数 WHERE tid=主题编号;
3 V& f9 J: Y  |! @复制代码2.积分清零' `9 i3 c- q2 G! H8 B# i% ^; w3 m
& Z. g6 h7 D' L" q+ v
/ E( k6 f- ~) H  D. U
01.update cdb_members set credits=0 and extcredits1=0  and extcredits2=0 and extcredits3=0$ `. i8 m: S" Y, u6 Z
复制代码3.替换字符的SQL命令
8 n  [' Y2 y3 {" r# K$ X+ T
. ~3 e) D9 Y: [  G1 R
/ Q/ Z6 k5 j5 F; }* S01.UPDATE `cdb_name` SET `field_name` = replace (`field_name`,'from_str','to_str')
# x: d, n+ A' ]( h复制代码/ j4 h* E5 Y) _0 q/ g& s' g
说明:
- d" s- V# x- K- H. Q5 p1 mcdb_name —— 该字符或字符串所在表的名字 ; y  R5 g! K6 P( ~8 @, Z; V
field_name —— 该字符或字符串所在字段的字段名
! Z9 u+ P) _8 z# V/ v) Y: j5 k/ [0 j" Rfrom_str —— 需要替换的字符串 ; N; P) O4 W; Z
to_str —— 替换成的字符串
3 T6 U. s2 E4 U! n4 _
/ F  E% s) z( f# U4.如何将所有“禁言”用户全部恢复3 T7 }7 b! A" C( E

4 U' J0 Z8 B3 f& @) n2 m$ ]  |
( e; j4 @, J4 t4 n01.update cdb_members set adminid = '0', groupid = '' where groupid = '4';! }8 Q% l" D" l% r, u& @
复制代码
7 S* ^% S- y  v9 q + u6 l1 @4 y2 V0 E  F. I
5.论坛全部帖子内容中的“A内容”替换成“B内容”的sql语句" x( j* F* w  l: {, w' _  a: u
! M# S2 }" E0 q8 M" ^
01.UPDATE cdb_posts SET message=REPLACE(message,'要替换的字符串','替换后的字符串');3 p! j  d/ E' Q
复制代码6.单个激活某个需要邮件激活之用户
7 V" a0 f1 H% S: [4 s
1 s' ~3 [+ L% i3 K/ F/ V! J8 Q( ]/ u& {% P01.
9 |- X6 G! F- y+ J
/ A3 d/ B" h5 Z02.UPDATE `cdb_members` SET `adminid` = '0', `groupid` = '10' WHERE  `usename `= `该用户 `;
; p8 x( m1 G6 P复制代码7.批量激活邮件认证用户7 X9 e4 v. x$ {/ j9 N" Y

5 ?2 f1 e  w' M01.
3 q2 G. y1 \' J, \# r- J% L+ u9 t3 y: }3 @
02.UPDATE `cdb_members` SET `groupid` = '10' WHERE groupid='8';- f& L& B! S8 ]$ k
复制代码 8 u: |, @. O: `  p0 O- Z

使用高级回帖 (可批量传图、插入视频等)快速回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则   Ctrl + Enter 快速发布  

发帖时请遵守我国法律,网站会将有关你发帖内容、时间以及发帖IP地址等记录保留,只要接到合法请求,即会将信息提供给有关政府机构。
快速回复 返回顶部 返回列表