找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 777|回复: 0
打印 上一主题 下一主题

Discuz x3.1页面空白解决方法

[复制链接]

2588

主题

2588

帖子

7694

积分

论坛元老

Rank: 8Rank: 8

积分
7694
跳转到指定楼层
楼主
发表于 2018-2-13 20:53:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

今天找时间分析了一下,找到了页面空白的原因,可能是因为php版本兼容性的问题所致,所以只是部分用户遇到这种情况,这里分享一下。
经过分析发现是sourcefunctionfunction_core.php文件中一处代码的原因:
复制代码代码如下:
static $replacements = array( ":", "@", "&", "=", "+", "$", ",", "/", "?", "%", "#", "[", "]");

将双引号全换成单引号即可。
x3.1中sourcefunctionfunction_core.php文件增加了一个函数:
复制代码代码如下:
function fixurl($url) {
    static $fix = array( '%3A', '%40', '%26', '%3D', '%2B', '%24', '%2C', '%2F', '%3F', '%25', '%23', '%5B', '%5D');
    static $replacements = array( ":", "@", "&", "=", "+", "$", ",", "/", "?", "%", "#", "[", "]");
    return str_replace($fix, $replacements, urlencode($url));
}
出现就在上面红色部分代码,将其中的双引号换成单引号即解决问题:
复制代码代码如下:
static $replacements = array( ':', [url=mailto:'@']'@'[/url], '&', '=', '+', '$', ',', '/', '?', '%', '#', '[', ']');

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

用户反馈
客户端