640X60广告位招租 qq245909083

discuz导出认证会员信息身份证号不正确的解决办法

分享时间:2017-12-16 552 热度℃
discuz自带了会员完善资料认证的功能,是个很不错的东西。在后台,也可以导出认证会员的资料为excel,不过导出的时候,如果是数字字段,数字太多,会导致打开excel后数字不正确,例如:身份证号字段。
不正确的原因分析:Excel数字类型最长只支持15位,超过之后会以0填充。如果要输入超过15位,就要将单元格格式设置为文本格式。
解决方法如下:先输入英文状态的单引号 ' 然后再输入数字,即可转换为文本格式。
代码修改的地方:
找到文件:source/admincp/admincp_verify.php
找到这样一段文字:
[代码]php代码:
if(in_array($key, array('gender', 'birthday', 'birthcity', 'residecity'))) {                                        $value[$field] = profile_show($key, $value);                                   }

这段文字在文件中有两处,discuz X3.0是在:400-402行。
将其下面这句话:
[代码]php代码:
$str .= $common.$value[$field];

修改为:
[代码]php代码:
if($key=='这里填写要导出的身份证的字段名称'){                                 $str .= $common."'".$value[$field];                            } else {                                        $str .= $common.$value[$field];                            }

备注:身份证的字段名称查找方法,查看源代码,找到对应的input元素,查看其name属性值即可。
返回顶部