广告投放

Discuz! remote_service mod_index has a deprecated constructor 报错与解决办法

Discuz 系统中出现如下报错:

PHP Deprecated:  Methods with the same name as their class will not be constructors in a future version of PHP; remote_service has a deprecated constructor in ...\api\remote\index.php on line 111

PHP Deprecated:  Methods with the same name as their class will not be constructors in a future version of PHP; mod_index has a deprecated constructor in ...\api\remote\mod\mod_index.php on line 14

PHP Notice:  Undefined index: mod in ...\connect.php on line 10

前面两个报错

都是由一个原因引起的:使用了和类名相同的方法作为构造方法。(目前官方已经不建议使用该方法构建),目前该问题还是会出现一些老版本的DZ程序中。

解决办法:

按照系统报错提示,打开该类的所在文件,然后将类名相同的方法名改为__construct。细节问题可以参考PHP手册中的魔术方法一节。

PHP Notice:  Undefined index: mod in ...\connect.php on line 10 报错

这个问题的出现是因为Discuz! connect.php中使用了可能不存在的超全局变量$_GET的索引值

解决办法:

打开connect.php 搜索

if($_GET['mod'] == 'register')

修改为

if(filter_has_var(INPUT_GET, 'mod') && $_GET['mod'] == 'register') 

Discuz!有大量的BUG和代码错误,一旦发现就要纠正,否则很容易被黑客利用。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

给TA打赏
共{{data.count}}人
人已打赏
广告位招租919838898
0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索