共计 902 个字符,预计需要花费 3 分钟才能阅读完成。
中文 英文 韩语 日语
信呼 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 版本中修正,现定位打卡功能已可正常使用。
了解 一个 HR 的更多信息
订阅后即可通过电子邮件收到最新文章。
正文完