1、小BUG ,如果用户设置队形问候语中有 双引号 的话,牧场将无限初始化~~~
解决方法newmc.php,红色为增加::
//动物列队
if( $_REQUEST['mod'] == "cgi_set_parade" ) {
$parade['pinfo'] = $_REQUEST['pinfo'];
$parade['pid'] = $_REQUEST['pid'];
$parade = json_encode($parade);
$parade = str_replace( "\"{", "{", $parade );
$parade = str_replace( "}\"", "}", $parade );
$parade = str_replace( "\\u", "\\\\u", $parade );
$_SGLOBAL['db']->query( "UPDATE ".tname( "plug_newfarm" )." set parade='".$parade."' where uid=".intval( $_REQUEST['uIdx']));
echo "{\"code\":1}";
}
修改为:
function strreplace($strs){
return str_replace(array(",","\\\"","\\'","\\","\t","\r\n","\n","\r"),array(';','``','`','|','',' ','',''),$strs);
}
//动物列队
if( $_REQUEST['mod'] == "cgi_set_parade" ) {
$parade['pinfo'] = strreplace($_REQUEST['pinfo']);
$parade['pid'] = $_REQUEST['pid'];
$parade = json_encode($parade);
$parade = str_replace( "\"{", "{", $parade );
$parade = str_replace( "}\"", "}", $parade );
$parade = str_replace( "\\u", "\\\\u", $parade );
$_SGLOBAL['db']->query( "UPDATE ".tname( "plug_newfarm" )." set parade='".$parade."' where uid=".intval( $_REQUEST['uIdx']));
echo "{\"code\":1}";
}
顺便修改留言里的:
if ( $_REQUEST['mmod'] == "chat" && $_REQUEST['mod'] == "common" && $_REQUEST['act'] == "sendChat" )
{
。。。。。。。。。。。。。。
$chat->c[] = "{\"fromId\":\"".$_SGLOBAL['supe_uid']."\",\"fromName\":\"".$space[name]."\",\"toId\":\"".intval($_REQUEST['toId'])."\",\"toName\":\"".$uidspace[name]."\",\"time\":".$_SGLOBAL['timestamp'].",\"msg\":\"".$_REQUEST['msg']."\",\"isReply\":".$_REQUEST['isReply']."}";
改为:
$REQUEST_msg = strreplace($_REQUEST['msg']);
$chat->c[] = "{\"fromId\":\"".$_SGLOBAL['supe_uid']."\",\"fromName\":\"".$space[name]."\",\"toId\":\"".intval($_REQUEST['toId'])."\",\"toName\":\"".$uidspace[name]."\",\"time\":".$_SGLOBAL['timestamp'].",\"msg\":\"".$REQUEST_msg."\",\"isReply\":".$_REQUEST['isReply']."}";
Ok!!! |