织梦猫



织梦dedecms出现系统基本参数空白或显示Call to undefined function make_hash()

Dedemao 发表于 18-03-03 | 查看: 1257


最新的织梦版本(2018-01-09)修改了include文件夹中的common.func.php,增加了两个函数。

下载的模板文件夹中如果提供了common.func.php文件,很有可能没有这两个函数,于是会造成错误。

需要将这两个函数的代码粘贴到/include/common.func.php文件中,代码如下:

function make_hash()

{

$$rand = dede_random_bytes(16);

$$_SESSION['token'] = ($$rand === FALSE)

? md5(uniqid(mt_rand(), TRUE))

: bin2hex($$rand);

return $$_SESSION['token'];

}

function dede_random_bytes($$length)

{

if (empty($$length) OR ! ctype_digit((string) $$length))

{

return FALSE;

}

if (function_exists('random_bytes'))

{

try

{

return random_bytes((int) $$length);

}

catch (Exception $$e)

{

return FALSE;

}

}

if (defined('MCRYPT_DEV_URANDOM') && ($$output = mcrypt_create_iv($$length, MCRYPT_DEV_URANDOM)) !== FALSE)

{

return $$output;

}

if (is_readable('/dev/urandom') && ($$fp = fopen('/dev/urandom', 'rb')) !== FALSE)

{

is_php('5.4') && stream_set_chunk_size($$fp, $$length);

$$output = fread($$fp, $$length);

fclose($$fp);

if ($$output !== FALSE)

{

return $$output;

}

}

if (function_exists('openssl_random_pseudo_bytes'))

{

return openssl_random_pseudo_bytes($$length);

}

return FALSE;

}

将以上代码粘贴到

/**

* 载入小助手,系统默认载入小助手

这段代码的上方即可。


Copyright @ 2013-2016 织梦猫 版权所有

蜀ICP备16029806号