信呼OA移动端考勤定位打卡报错

在调试移动端考勤定位打卡功能时报错:

Fatal error: Uncaught Error: Call to undefined method weixinClassAction::xssrepstr() in /www/wwwroot/oa/webmain/task/api/weixinAction.php:48 Stack trace: #0 /www/wwwroot/oa/include/View.php(42): weixinClassAction->addlocationAction() #1 /www/wwwroot/oa/api.php(39): include_once('/www/wwwroot/oa...') #2 {main} thrown in /www/wwwroot/oa/webmain/task/api/weixinAction.php on line 48

在移动端app、企业微信内置浏览器、第三方浏览器中该问题复现。

将PHP版本由php7.0降级到php5.6后报错变成:

Fatal error: Call to undefined method weixinClassAction::xssrepstr() in /www/wwwroot/oa/webmain/task/api/weixinAction.php on line 48

xssrepstr应该是一个通常被用于特殊字符过滤的自定义函数^1^:

/* 特殊字符过滤 */
    public function xssrepstr($str)
    {
        $xpd  = explode(',','(,), ,<,>,\\,.,*,&,%,$,^,!,@,#,-,+,:,;\'');
        $xpds = array();
        foreach($xpd as $xpd1)$xpds[]='';
        $str = str_replace(',', '',$str);
        return str_ireplace($xpd, $xpds, $str);
    }

在一篇发表于2021年8月26日的题为《通读审计之信呼OA》的文章中,也以及了xssrepstr


以上问题,在v2.3.9版本中修正,现定位打卡功能已可正常使用。

0 0 投票数
文章评分
订阅评论
提醒
guest

0 评论
内联反馈
查看所有评论