piis 发表于 2014-11-28 01:24:20

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

今天找时间分析了一下,找到了页面空白的原因,可能是因为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( ':', <a href="mailto:'@'">'@'</a>, '&', '=', '+', '$', ',', '/', '?', '%', '#', '[', ']');
页: [1] 2 3 4 5 6 7 8 9 10
查看完整版本: 关于Discuz x3.1页面空白解决方法