|
|
留言问题,经实际测试,发现reppoststr函数传入中文字符时,返回的中文都被过滤掉的问题,也就是说,PHP 5.4 中,经 htmlspecialchars 转义后的中文字符串为空。
: e j/ }1 S+ ^8 V4 X- ?( L! O6 i7 |2 q9 Y- f% x* G* K9 G6 x
修改 functions.php 和 q_f
, N1 x7 y8 _$ b$ U; c+ K, S. _: L) z5 z) ^& r
unctions.php, 函数体改为以下形式即可
, M2 A1 s1 X2 J) f/ t: c3 R) sfunction reppoststr( $val )
5 B% I2 M1 w, g1 X6 a{1 P3 x8 y# [+ ~% u( J
$val = htmlspecialchars( $val, ENT_COMPAT ,’GB2312′);' |, _# y5 h6 i0 B: J
return $val;4 R6 n' t6 a9 b
}
7 r. Z' q( \3 v: s7 H0 x1 `
1 {0 b7 O* q; Q/ L& _2 Y模板问题,修改相关函数为 htmlspecialchars(stripSlashes($r[cptemp]), ENT_COMPAT ,’ISO-8859-1′)6 A' M9 T% t# Z6 B- Z7 B4 ?2 u
/ F0 w% v7 a+ L# [
很麻烦,恐怕还会因为此函数陆续发现更多问题。 |
|