|
|
留言问题,经实际测试,发现reppoststr函数传入中文字符时,返回的中文都被过滤掉的问题,也就是说,PHP 5.4 中,经 htmlspecialchars 转义后的中文字符串为空。
% G5 ]1 w; I+ @7 Q2 e
- o- L' U& F( F8 K( f D修改 functions.php 和 q_f
+ x( T1 y: v8 c2 ?. T5 V0 p% @" z0 E* }0 A) q2 H5 V
unctions.php, 函数体改为以下形式即可
' a" | }' q% m' V4 G& m3 _& \function reppoststr( $val )6 _2 X8 ]( m6 @) w( G
{
% Q3 \' M6 P; {$val = htmlspecialchars( $val, ENT_COMPAT ,’GB2312′);
. {& K i$ }/ y8 ?5 X* }( Creturn $val;
2 _2 ^$ O& K$ }, ?0 t}% ]) t3 _0 d6 X2 }+ Y9 E* x, J
$ \" T8 ?" ]2 ^) `5 g, Z7 Q' C; J
模板问题,修改相关函数为 htmlspecialchars(stripSlashes($r[cptemp]), ENT_COMPAT ,’ISO-8859-1′)1 a$ ^& _8 m' V2 L2 O* A" [. j
" z1 Z3 b5 o* Y l很麻烦,恐怕还会因为此函数陆续发现更多问题。 |
|