dede升级系统设置提示 undefined function make_hash错误解决办法

近期有网友反映在某站下载了DEDE模板后,在后台进行了升级,升级后访问系统设置提示错误undefined function make_hash,这个错误怎么解决?

出现这个错误是因为在最新版中增加了 make_hash函数,而旧版不包含这个函数,所以把该函数写进程序即可。

打开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;
}


砚台酪-网站建设,微信公众号/小程序开发,网络营销推广,短视频营销 » dede升级系统设置提示 undefined function make_hash错误解决办法