this->var['setting']['domain']['app']['default'])) { dheader('Location:'.$this->var['scheme'].'://'.$this->var['setting']['domain']['app']['default'].$_SERVER['REQUEST_URI']); return false; } else { return false; } } if($mobile !== '2' && empty($this->var['setting']['mobile']['legacy'])) { $mobile = '2'; } define('IN_MOBILE', isset($this->var['mobiletpl'][$mobile]) ? $mobile : '2'); if(!defined('HOOKTYPE')) { define('HOOKTYPE', 'hookscriptmobile'); } setglobal('gzipcompress', 0); $arr = []; foreach(array_keys($this->var['mobiletpl']) as $mobiletype) { $arr[] = '&mobile='.$mobiletype; $arr[] = 'mobile='.$mobiletype; } parse_str($_SERVER['QUERY_STRING'], $query); $query['mobile'] = 'no'; unset($query['simpletype']); $query_sting_tmp = http_build_query($query); $this->var['setting']['mobile']['nomobileurl'] = ($this->var['setting']['domain']['app']['forum'] ? $this->var['scheme'].'://'.$this->var['setting']['domain']['app']['forum'].'/' : $this->var['siteurl']).$this->var['basefilename'].'?'.$query_sting_tmp; $this->var['setting']['lazyload'] = 0; if('utf-8' != CHARSET) { if(strtolower($_SERVER['REQUEST_METHOD']) === 'post') { foreach($_POST as $pk => $pv) { if(!is_numeric($pv)) { $_GET[$pk] = $_POST[$pk] = $this->_mobile_iconv_recurrence($pv); } } } } if(!$this->var['setting']['mobile']['mobilesimpletype']) { $this->var['setting']['imagemaxwidth'] = 224; } $this->var['setting']['regstatus'] = $this->var['setting']['mobile']['mobileregister'] ? $this->var['setting']['regstatus'] : 0; $this->var['setting']['avatarmethod'] = 0; ob_start(); } private function _timezone_set($timeoffset = 0) { if(function_exists('date_default_timezone_set')) { @date_default_timezone_set('Etc/GMT'.($timeoffset > 0 ? '-' : '+').(abs($timeoffset))); } } private function _mobile_iconv_recurrence($value) { if(is_array($value)) { foreach($value as $key => $val) { $value[$key] = $this->_mobile_iconv_recurrence($val); } } else { $value = diconv($value, 'utf-8', CHARSET); } return $value; } } ------------- THE END -------------------- // ?>} function sysmessage($message) { helper_sysmessage::show($message); } function forumperm($permstr, $groupid = 0) { return (new helper_forumperm($permstr))->check($groupid); } function checkperm($perm) { global $_G; return defined('IN_ADMINCP') ? true : (empty($_G['group'][$perm]) ? '' : $_G['group'][$perm]); } function periodscheck($periods, $showmessage = 1) { global $_G; if(($periods == 'postmodperiods' || $periods == 'postbanperiods') && (getglobal('setting/postignorearea') || getglobal('setting/postignoreip'))) { if($_G['setting']['postignoreip']) { foreach(explode("\n", $_G['setting']['postignoreip']) as $ctrlip) { if(preg_match('/^('.preg_quote(($ctrlip = trim($ctrlip)), '/').')/', $_G['clientip'])) { return false; break; } } } if($_G['setting']['postignorearea']) { $location = $whitearea = ''; require_once libfile('function/misc'); $location = trim(convertip($_G['clientip'])); if($location) { $whitearea = preg_quote(trim($_G['setting']['postignorearea']), '/'); $whitearea = str_replace(["\\*"], ['.*'], $whitearea); $whitearea = '.*'.$whitearea.'.*'; $whitearea = '/^('.str_replace(["\r\n", ' '], ['.*|.*', ''], $whitearea).')$/i'; if(@preg_match($whitearea, $location)) { return false; } } } } if(!$_G['group']['disableperiodctrl'] && $_G['setting'][$periods]) { $now = dgmdate(TIMESTAMP, 'G.i', $_G['setting']['timeoffset']); foreach(explode("\r\n", str_replace(':', '.', $_G['setting'][$periods])) as $period) { [$periodbegin, $periodend] = explode('-', $period); if(($periodbegin > $periodend && ($now >= $periodbegin || $now < $periodend)) || ($periodbegin < $periodend && $now >= $periodbegin && $now < $periodend)) { $banperiods = str_replace("\r\n", ', ', $_G['setting'][$periods]); if($showmessage) { showmessage('period_nopermission', NULL, ['banperiods' => $banperiods], ['login' => 1]); } else { return TRUE; } } } } return FALSE; } function cknewuser($return = 0) { global $_G; $result = true; if(!$_G['uid']) return true; if(checkperm('disablepostctrl')) { return $result; } $ckuser = $_G['member']; if($_G['setting']['newbiespan'] && $_G['timestamp'] - $ckuser['regdate'] < $_G['setting']['newbiespan'] * 60) { if(empty($return)) showmessage('no_privilege_newbiespan', '', ['newbiespan' => $_G['setting']['newbiespan']], []); $result = false; } if($_G['setting']['need_avatar'] && empty($ckuser['avatarstatus'])) { if(empty($return)) showmessage('no_privilege_avatar', '', [], []); $result = false; } if($_G['setting']['need_secmobile'] && empty($ckuser['secmobilestatus'])) { if(empty($return)) showmessage('no_privilege_secmobile', '', [], []); $result = false; } if($_G['setting']['need_email'] && empty($ckuser['emailstatus'])) { if(empty($return)) showmessage('no_privilege_email', '', [], []); $result = false; } if($_G['setting']['need_friendnum']) { space_merge($ckuser, 'count'); if($ckuser['friends'] < $_G['setting']['need_friendnum']) { if(empty($return)) showmessage('no_privilege_friendnum', '', ['friendnum' => $_G['setting']['need_friendnum']], []); $result = false; } } return $result; } function useractionlog($uid, $action) { return helper_log::useractionlog($uid, $action); } function getuseraction($var) { return helper_log::getuseraction($var); } function getuserapp($panel = 0) { return ''; } function getmyappiconpath($appid, $iconstatus = 0) { return ''; } function getexpiration() { global $_G; $date = getdate($_G['timestamp']); return mktime(0, 0, 0, $date['mon'], $date['mday'], $date['year']) + 86400; } function return_bytes($val) { $last = strtolower($val[strlen($val) - 1]); if(!is_numeric($val)) { $val = substr(trim($val), 0, -1); } switch($last) { case 'g': $val *= 1024; case 'm': $val *= 1024; case 'k': $val *= 1024; } return $val; } function iswhitelist($host) { global $_G; static $iswhitelist = []; if(isset($iswhitelist[$host])) { return $iswhitelist[$host]; } $hostlen = strlen($host); $iswhitelist[$host] = false; if(!$_G['cache']['domainwhitelist']) { loadcache('domainwhitelist'); } if(is_array($_G['cache']['domainwhitelist'])) foreach($_G['cache']['domainwhitelist'] as $val) { $domainlen = strlen($val); if($domainlen > $hostlen) { continue; } if(substr($host, -$domainlen) == $val) { $iswhitelist[$host] = true; break; } } if(!$iswhitelist[$host]) { $iswhitelist[$host] = $host == $_SERVER['HTTP_HOST']; } return $iswhitelist[$host]; } function getattachtablebyaid($aid) { $attach = table_forum_attachment::t()->fetch($aid); $tableid = $attach['tableid']; return 'forum_attachment_'.($tableid >= 0 && $tableid < 10 ? intval($tableid) : 'unused'); } function getattachtableid($tid) { $tid = (string)$tid; return intval($tid[strlen($tid) - 1]); } function getattachtablebytid($tid) { return 'forum_attachment_'.getattachtableid($tid); } function getattachtablebypid($pid) { $tableid = DB::result_first('SELECT tableid FROM '.DB::table('forum_attachment')." WHERE pid='$pid' LIMIT 1"); return 'forum_attachment_'.($tableid >= 0 && $tableid < 10 ? intval($tableid) : 'unused'); } function getattachnewaid($uid = 0) { global $_G; $uid = !$uid ? $_G['uid'] : $uid; return table_forum_attachment::t()->insert(['tid' => 0, 'pid' => 0, 'uid' => $uid, 'tableid' => 127], true); } function get_seosetting($page, $data = [], $defset = []) { return helper_seo::get_seosetting($page, $data, $defset); } function getimgthumbname($fileStr, $extend = '.thumb.jpg', $holdOldExt = true) { if(empty($fileStr)) { return ''; } if(!$holdOldExt) { $fileStr = substr($fileStr, 0, strrpos($fileStr, '.')); } $extend = str_contains($extend, '.') ? $extend : '.'.$extend; return $fileStr.$extend; } function updatemoderate($idtype, $ids, $status = 0) { helper_form::updatemoderate($idtype, $ids, $status); } function userappprompt() { } function dintval($int, $allowarray = false) { $ret = intval($int); if($int == '' || $int == $ret || !$allowarray && is_array($int)) return $ret; if($allowarray && is_array($int)) { foreach($int as &$v) { $v = dintval($v, true); } return $int; } elseif($int <= 0xffffffff) { $l = strlen($int); $m = str_starts_with($int, '-') ? 1 : 0; if(($l - $m) === strspn($int, '0987654321', $m)) { return $int; } } return $ret; } function makeSearchSignUrl() { return []; } function get_related_link($extent) { return helper_seo::get_related_link($extent); } function parse_related_link($content, $extent) { return helper_seo::parse_related_link($content, $extent); } function check_diy_perm($topic = [], $flag = '') { static $ret = []; if(empty($ret)) { global $_G; $common = !empty($_G['style']['tplfile']) || getgpc('inajax'); $blockallow = getstatus(getglobal('member/allowadmincp'), 4) || getstatus(getglobal('member/allowadmincp'), 5) || getstatus(getglobal('member/allowadmincp'), 6); $ret['data'] = $common && $blockallow; $ret['layout'] = $common && (!empty($_G['group']['allowdiy']) || ( CURMODULE === 'topic' && ($_G['group']['allowmanagetopic'] || $_G['group']['allowaddtopic'] && $topic && $topic['uid'] == $_G['uid']) )); } return empty($flag) ? $ret['data'] || $ret['layout'] : $ret[$flag]; } function strhash($string, $operation = 'DECODE', $key = '') { $key = md5($key != '' ? $key : getglobal('authkey')); if($operation == 'DECODE') { $hashcode = base64_decode($string); $hashcode = gzuncompress($hashcode); $string = substr($hashcode, 0, -16); $hash = substr($hashcode, -16); unset($hashcode); } $vkey = substr(md5($string.substr($key, 0, 16)), 4, 8).substr(md5($string.substr($key, 16, 16)), 18, 8); if($operation == 'DECODE') { return $hash == $vkey ? $string : ''; } return base64_encode(gzcompress($string.$vkey)); } function dunserialize($data) { if(is_array($data)) { $ret = $data; } elseif(($ret = @unserialize($data)) === false) { $ret = @unserialize(stripslashes($data)); } return $ret; } function browserversion($type) { static $return = []; static $types = ['ie' => 'msie', 'firefox' => '', 'chrome' => '', 'opera' => '', 'safari' => '', 'mozilla' => '', 'webkit' => '', 'maxthon' => '', 'qq' => 'qqbrowser']; if(!$return) { $useragent = strtolower($_SERVER['HTTP_USER_AGENT']); $other = 1; foreach($types as $i => $v) { $v = $v ? $v : $i; if(str_contains($useragent, $v)) { preg_match('/'.$v.'(\/|\s)([\d\.]+)/i', $useragent, $matches); $ver = $matches[2]; $other = $ver !== 0 && $v != 'mozilla' ? 0 : $other; } else { $ver = 0; } $return[$i] = $ver; } $return['other'] = $other; } return $return[$type]; } function currentlang() { $charset = strtoupper(CHARSET); if($charset == 'UTF-8') { global $_G; if(!empty($_G['config']['lang'])) { return $_G['config']['lang']; } elseif($_G['config']['output']['language'] == 'zh_cn') { return 'SC_UTF8'; } elseif($_G['config']['output']['language'] == 'zh_tw') { return 'TC_UTF8'; } } else { return ''; } } function dpreg_replace($pattern, $replacement, $subject, $limit = -1, &$count = null) { require_once libfile('function/preg'); return _dpreg_replace($pattern, $replacement, $subject, $limit, $count); } function check_protect_username($username, $return = false) { global $_G; $censorexp = '/^('.str_replace(['\\*', "\r\n", ' '], ['.*', '|', ''], preg_quote(($_G['setting']['censoruser'] = trim($_G['setting']['censoruser'])), '/')).')$/i'; if($_G['setting']['censoruser'] && @preg_match($censorexp, $username)) { if(!$return) { showmessage('profile_username_protect'); } else { return true; } } return false; } function delay_task($op, $key, $func = [], $ttl = 86400) { $key = 'dzDt_'.$key; switch($op) { case 'run': $func = memory('get', $key); if(empty($func) || empty($func[0]) || empty($func[1])) { return null; } try { $return = call_user_func_array($func[0], $func[1]); } catch (Exception $e) { writelog('dt', print_r($e, 1)); return null; } memory('rm', $key); return $return !== null ? $return : true; break; case 'set': if(empty($func) || empty($func[0]) || empty($func[1])) { return null; } memory('set', $key, $func, $ttl); return true; break; default: return null; } } function restfulAuthSign() { $restful = new restful([]); return urlencode($restful->getAuthSign()); } function uuid($salt) { return md5($salt.uniqid(md5(microtime(true)), true)); } function getMillisecond() { [$microsecond, $time] = explode(' ', microtime()); return (float)sprintf('%.0f', (floatval($microsecond) + floatval($time)) * 1000); } function isHttpOrHttps($url) { if(str_starts_with($url, 'http://') || str_starts_with($url, 'https://')) { return true; } return false; } function generateRandomNumbers($length) { $numbers = range(0, 9); shuffle($numbers); return implode('', array_slice($numbers, 0, $length)); } function generateRandomLetters($length) { $letters = array_merge(range('a', 'z'), range('A', 'Z')); shuffle($letters); return implode('', array_slice($letters, 0, $length)); } function generateRandomAlphanumeric($length) { $characters = array_merge(range(0, 9), range('a', 'z'), range('A', 'Z')); shuffle($characters); return implode('', array_slice($characters, 0, $length)); } function compareJsonStructures($json1, $json2) { $data1 = json_decode($json1, true); $data2 = json_decode($json2, true); if(!is_array($data1) && !is_object($data1) || !is_array($data2) && !is_object($data2)) { return false; } if(gettype($data1) !== gettype($data2)) { return false; } if(is_array($data1)) { if(count($data1) !== count($data2)) { return false; } foreach($data1 as $key => $value) { if(!array_key_exists($key, $data2)) { return false; } if(is_array($value) && !compareJsonStructures(json_encode($value), json_encode($data2[$key]))) { return false; } } } if(is_object($data1)) { $data1 = get_object_vars($data1); $data2 = get_object_vars($data2); if(count($data1) !== count($data2)) { return false; } foreach($data1 as $key => $value) { if(!array_key_exists($key, $data2)) { return false; } if(is_object($value) && !compareJsonStructures(json_encode($value), json_encode($data2[$key]))) { return false; } } } return true; } function getimportfilename($fn) { if(file_exists($return = $fn.'.json')) { return $return; } elseif(file_exists($return = $fn.'.xml')) { return $return; } else { return false; } } function recent_use_tag($idtype = 'tid') { $tagarray = $stringarray = []; $string = ''; $i = 0; $query = table_common_tagitem::t()->select(0, 0, $idtype, 'itemid', 'DESC', 10); foreach($query as $result) { if($i > 4) { break; } if($tagarray[$result['tagid']] == '') { $i++; } $tagarray[$result['tagid']] = 1; } if($tagarray) { $query = table_common_tag::t()->fetch_all(array_keys($tagarray)); foreach($query as $result) { $tagarray[$result['tagid']] = $result['tagname']; } } return $tagarray; } function generate_content_json($type = 'text', $editor = 'default', $content = '', $extend = []) { $data = [ 'type' => $type, 'editor' => $editor, 'content' => $content, 'extend' => $extend ]; return json_encode($data, JSON_UNESCAPED_UNICODE); } function is_valid_non_empty_json($content, $check_null_empty = true, $return_decode_assoc = false) { if($check_null_empty) { if($content === null) { return false; } if(is_string($content) && trim($content) === '') { return false; } } if(!is_string($content)) { return false; } $content = trim($content); if(empty($content)) { return false; } json_decode($content); if(json_last_error() !== JSON_ERROR_NONE) { return false; } if(strpos($content, '{') === 0 && strrpos($content, '}') === strlen($content) - 1) { $decoded = json_decode($content, true); if(is_array($decoded) && empty($decoded)) { return false; } } if($return_decode_assoc) { $decoded = json_decode($content, true); return $decoded; } else { return true; } } function jsonExit($err = 0, $key = 'errcode') { if($err == 0) { exit('{}'); } exit('{"'.$key.'":'.dintval($err).'}'); } function jsonMsg($return) { exit(json_encode($return)); } function isVideoUrl($url) { $video_extensions = ['rm', 'rmvb', 'flv', 'swf', 'asf', 'asx', 'wmv', 'avi', 'mpg', 'mpeg', 'mp4', 'm4v', '3gp', 'ogv', 'webm', 'mov', 'mkv']; $url_parts = parse_url($url); if (isset($url_parts['path'])) { $extension = strtolower(pathinfo($url_parts['path'], PATHINFO_EXTENSION)); return in_array($extension, $video_extensions); } return false; } function isAudioUrl($url) { $audio_extensions = ['aac', 'flac', 'ogg', 'mp3', 'm4a', 'weba', 'wma', 'mid', 'wav', 'ra', 'ram']; $url_parts = parse_url($url); if (isset($url_parts['path'])) { $extension = strtolower(pathinfo($url_parts['path'], PATHINFO_EXTENSION)); return in_array($extension, $audio_extensions); } return false; } function parse_at_user($content) { global $_G; $atlist = $allUsernames = []; if(!$_G['group']['allowat']) { return $atlist; } preg_match_all('/@\[([^\]]+)\]/i', $content, $matches); if (isset($matches[1])) { foreach ($matches[1] as $match) { $username = trim($match); if (!empty($username)) { $allUsernames[] = $username; } } } preg_match_all('/@([^\s\@\[\]]+)/i', $content.' ', $oldMatches); if (isset($oldMatches[1])) { foreach ($oldMatches[1] as $oldName) { $allUsernames[] = $oldName; } } $uniqueUsernames = array_slice(array_unique($allUsernames), 0, $_G['group']['allowat']); if(!empty($uniqueUsernames)) { if(!$_G['setting']['at_anyone']) { $followList = table_home_follow::t()->fetch_all_by_uid_fusername($_G['uid'], $uniqueUsernames); foreach($followList as $row) { $atlist[$row['followuid']] = $row['fusername']; } if(count($atlist) < $_G['group']['allowat']) { $friendList = table_home_friend::t()->fetch_all_by_uid_username($_G['uid'], $uniqueUsernames); foreach($friendList as $row) { $atlist[$row['fuid']] = $row['fusername']; } } } else { $userList = table_common_member::t()->fetch_all_by_username($uniqueUsernames); foreach($userList as $row) { $atlist[$row['uid']] = $row['username']; } } } return $atlist; } 6als.com - System Error

Discuz! System Error

Time: 2026-04-04 13:44:39 +0800 IP: 10.9.143.159 BackTraceID: e9868e08dbfc8e5cb1bb78dbd3efee8f

Call to undefined function appfile()

PHP Debug

No.FileLineCode
1home.php11require(%s)
2index.php27require()
3source/app/home/home.php43break()
如果您是用户,建议您尝试刷新页面、关闭所有浏览器窗口重新进行操作。如果无法解决,建议您完整截图本页面并保存,随后向站点管理员反馈此问题
如果您是站点管理员,建议您尝试在管理中心 更新缓存 ,或凭完整截图通过 官方论坛 寻求帮助。如果您确定是程序自身Bug,您也可直接 提交Issue 给我们
6als.com 已经将此出错信息详细记录, 由此给您带来的访问不便我们深感歉意