| 
 
| Discuz! X 3.5 source/class/class_seccode.php 第 221 行代码错误,导致验证码不能正常显示,并且报错 mt_rand(): Argument #2 ($max) must be greater than or equal to argument #1 ($min) 
 出现这个错误,是因为 PHP mt_rand($min, $max) 函数参数取值错误,正常情况下,$min 和 $max 都必须是整数,而且 $min 不能比 $max 大,修改代码可解决这个问题。复制代码mt_rand(): Argument #2 ($max) must be greater than or equal to argument #1 ($min)
PHP:misc.php#require(%s):0096 -> source/module/misc/misc_seccode.php#seccode->seccode->display():0187 -> source/class/class_seccode.php#seccode->seccode->image():0042 -> source/class/class_seccode.php#seccode->seccode->ttffont():0064 -> source/class/class_seccode.php#mt_rand(%f, %d):0221 -> source/class/class_seccode.php#break():0221
User: uid=1; IP=102.45.217.36; RIP:102.45.217.36 Request: /misc.php?mod=seccode&update=88541&idhash=cSzjo847
用文本编辑软件打开 并搜索定位到以下代码
 将它修改为以下代码复制代码  $x = mt_rand($font[0]['angle'] > 0 ? cos(deg2rad(90 - $font[0]['angle'])) * $font[0]['zheight'] : 1, $this->width - $widthtotal);
 保存文件即可,代码可以有多种修改方式,以上示例只是其中一种。复制代码  $qbbsXLimits = [$font[0]['angle'] > 0 ? cos(deg2rad(90 - $font[0]['angle'])) * $font[0]['zheight'] : 1, $this->width - $widthtotal];
  $x = $qbbsXLimits[0] < $qbbsXLimits[1] ? mt_rand(...$qbbsXLimits) : $qbbsXLimits[0];
更多信息可以参考 PHP 官方文档
 https://www.php.net/manual/en/function.mt-rand.php
 https://www.php.net/manual/en/functions.arguments.php
 | 
 |