设为首页收藏本站

Discuz! 官方站

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 803|回复: 4

[已完结] 论坛内容乱码 需要修复

[复制链接]
发表于 2017-9-5 12:52:03 | 显示全部楼层 |阅读模式
需求发布
金额范围: 10-50 元
预算金额: 50 元
开始时间: 2017-09-05
结束时间: 2017-09-07
联系方式: 隐藏内容
原来是DISCUZX 3.2 的论坛,几个月前突然就成了乱码。由于论坛许久没有人用,也没注意具体什么改变导致的。程序肯定没有改,我怀疑是托管主机的服务商改了数据库服务器版本,导致兼容性不好。我PHPmyWIN SQL 查询 帖子表能看到中文显示正常的。& Z9 {8 q5 u+ R5 A$ F
后来我就新装 3.4 ,新建数据库,结果能正常显示中文。比较了两个数据库区别如下。
7 g) T' Z) N5 b& I3 h0 ]新数据库+ R9 h$ J# b0 O5 h$ P, ]
show variables like 'collation_%'
     
Variable_name
   
Value
     
8 j6 u( u8 F/ o' {! {' H$ L6 g      
collation_connection
      
utf8mb4_unicode_ci
     4 b4 J& S4 \( l3 S! ~
     
collation_database
      
latin1_swedish_ci
     & A- G, W+ N0 \
     
collation_server
      
latin1_swedish_ci
     
show variables like 'character_set_%'
     
Variable_name
   
Value
     % R* G, S6 a: J
      
character_set_client
      
utf8mb4
     5 p4 D# X) g: s9 m* `/ q1 `: K
     
character_set_connection
      
utf8mb4
     
2 k0 A4 u1 ^$ `" O8 Z     
character_set_database
      
latin1
     
6 ~$ B# n, q6 i/ B% ~     
character_set_filesystem
      
binary
     0 W; E0 o. j: F2 Z; J
     
character_set_results
      
utf8mb4
     7 X: m& e9 |  Q# _. W
     
character_set_server
      
latin1
     
" x7 f5 b- r) H2 J     
character_set_system
      
utf8
     
' {9 r6 w3 X$ z     
character_sets_dir
      
/usr/share/mysql/charsets/
     * M! v( U* O- @; A5 V
: [, a( p8 R5 H" [) Y/ B9 W; I# R" Z4 {
问题数据库edynatek_easyx3
show variables like 'collation_%'
     
Variable_name
   
Value
     + b7 w, P  }2 r* d" R
      
collation_connection
      
utf8mb4_unicode_ci
     
! R! \4 w6 y$ z- [     
collation_database
      
utf8_general_ci
     6 b, Z0 ^- I* v4 C" {/ Z" V0 g
     
collation_server
      
latin1_swedish_ci
     
show variables like 'character_set_%'
     
Variable_name
   
Value
       H& v# e' l$ c: K7 \( j
      
character_set_client
      
utf8mb4
     
  m7 C4 O+ }6 D# J/ W0 c     
character_set_connection
      
utf8mb4
     
) R2 S8 p( j) V1 r0 B. t$ T) P     
character_set_database
      
utf8
     
4 h) a+ x" l( @+ @6 o5 K& G     
character_set_filesystem
      
binary
     
: Z& U$ \& A2 ?! x1 j     
character_set_results
      
utf8mb4
     % b6 l/ H2 P) C8 h0 B. ?
     
character_set_server
      
latin1
     4 m9 W# z! x3 E* _. S# D5 ~
     
character_set_system
      
utf8
     
* q) w& }) L* k9 C0 B     
character_sets_dir
      
/usr/share/mysql/charsets/
     
2 z7 D7 w6 H8 h6 Q# ]+ ?' k. p$ a+ d; H
[size=13.3333px]character_set_database 和 collation_database   用set 语句改了没用。; q8 |9 Q( j! ?+ y& U2 `8 E
请教如何解决。  x5 A; s" E7 `9 }/ {

- d8 Q5 Q  q( `# |% p4 x2 P; a( Q另一个思路是把老论坛的数据库导入到新论坛,但是老论坛UC在另一个数据库。新的是同一个数据库。不知是否可行。
  e) P1 P1 w  L9 l5 `
9 v/ h7 K2 f5 z: ^( l2 a. x2 `- y2 g8 s) C
2 b; y/ K2 d, S! H3 p1 s! U* K" @& k

) a1 D9 V9 w3 o' I
3 J  G; \% F4 i6 v1 x& w$ J3 }0 \
 楼主| 发表于 2017-9-5 12:56:50 | 显示全部楼层
本帖最后由 此山是我开 于 2017-9-5 13:11 编辑 9 m1 K0 d5 V0 q$ s! T) l- Y' k
2 l9 \* J7 V* T$ w
网址 bbs.easyremember.net 查询帖子表  pre_forum_post` 正常显示中文 新装的网址 http://www.easyremember.net/bbsnew/forum.php?mod=viewthread&tid=1&extra=page%3D1  能显示中文
" g* h) p6 l5 i- z% t: V) ^# Y$ ?+ {但phpmyadmin 查询帖子表 pre_forum_post` 反而是乱码" Z. B; Y# N3 A* _
9 L0 g+ M0 R' e2 ~; x& O
回复

使用道具 举报

 楼主| 发表于 2017-9-12 14:16:04 | 显示全部楼层
本帖最后由 此山是我开 于 2017-9-12 14:17 编辑 8 A6 j. |. N  P" L3 R7 g: V& j
: V+ M; `7 o" A
问题我自己解决了。修改了代码。
- s* t  H  \& h9 t$ j2 \2 l修改discuz_database.php 文件在bbs\source\class\discuz# t* L  q5 C4 P
public static function init($driver, $config)  里面最后加了一行代码
/ M/ c6 ~4 F- i+ Q/ A3 }- |self:db->query("set names 'utf8'");
1 X5 v, f/ H$ h, [  b
! V- m1 q, y4 c, c  }+ ^' q" Q2 k
public static functioninit($driver, $config) {
                                self:driver =$driver;
                                self:db = new$driver;
                                self::$db->set_config($config);
                                self::$db->connect();
                                self::$db->query("setnames 'utf8'"); // Force to use utf8 charset. Added by Hanson 2017.9.5
                                                }
回复

使用道具 举报

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

本版积分规则

小黑屋|手机版|Archiver|Comsenz ( 粤B2-20090059-165 )  

GMT+8, 2017-11-23 13:23

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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