|
留言问题,经实际测试,发现reppoststr函数传入中文字符时,返回的中文都被过滤掉的问题,也就是说,PHP 5.4 中,经 htmlspecialchars 转义后的中文字符串为空。
4 ]5 e$ W' }6 d8 V' a" a& ^; R4 I8 _! }) @( x
修改 functions.php 和 q_f
4 n% \) C3 E) J7 P. B; `3 W" `# {- w& y/ ^% N; i0 \, W+ ~; J! |0 x
unctions.php, 函数体改为以下形式即可5 `, W6 Z/ O8 A) a
function reppoststr( $val ); m) w; A: N, K0 I8 v; m0 m/ _* } ^
{: {3 t" w7 r8 Z% L) n: h5 N
$val = htmlspecialchars( $val, ENT_COMPAT ,’GB2312′);
- \+ ~9 w1 K* y( y+ G2 A8 T) f) }return $val;
) |0 T- O, U3 J: v( n}
8 n. r- K: n- C( v% w6 V& O, B0 B" r$ T5 @ A! Z# e
模板问题,修改相关函数为 htmlspecialchars(stripSlashes($r[cptemp]), ENT_COMPAT ,’ISO-8859-1′)3 `$ Z5 G* B- ~/ ~( y2 a @; i
+ R) |$ V9 P2 _; u; ]
很麻烦,恐怕还会因为此函数陆续发现更多问题。 |
|