- <?php
-
-
-
-
-
-
-
-
- if($_DSESSION = $db->fetch_array($query)) {
- $sessionexists = 1;
- if(!emptyempty($_DSESSION['sessionuid'])) {
- $_DSESSION = array_merge($_DSESSION, $db->fetch_first("SELECT $membertablefields
- FROM {$tablepre}members m WHERE uid='$_DSESSION[sessionuid]'"));
- }
- } else {
- if($_DSESSION = $db->fetch_first("SELECT sid, groupid, groupid='6' AS ipbanned, pageviews AS spageviews, styleid, lastolupdate, seccode
- FROM {$tablepre}sessions WHERE sid='$sid' AND CONCAT_WS('.',ip1,ip2,ip3,ip4)='$onlineip'")) {
- clearcookies();
- $sessionexists = 1;
- }
- }
- }
-
-
-
-
-
-
-
-
-
- if(!$sessionexists) {
- if($discuz_uid) {
- if(!($_DSESSION = $db->fetch_first("SELECT $membertablefields, m.styleid
- FROM {$tablepre}members m WHERE m.uid='$discuz_uid' AND m.password='$discuz_pw' AND m.secques='$discuz_secques'"))) {
- clearcookies();
- }
- }
-
- if(ipbanned($onlineip)) $_DSESSION['ipbanned'] = 1;
- $_DSESSION['sid'] = random(6);
- $_DSESSION['seccode'] = random(6, 1);
- }
-
-
-
-
-
- $_DSESSION['dateformat'] = emptyempty($_DSESSION['dateformat']) || emptyempty($_DCACHE['settings']['userdateformat'][$_DSESSION['dateformat'] -1])? $_DCACHE['settings']['dateformat'] : $_DCACHE['settings']['userdateformat'][$_DSESSION['dateformat'] -1];
- $_DSESSION['timeformat'] = emptyempty($_DSESSION['timeformat']) ? $_DCACHE['settings']['timeformat'] : ($_DSESSION['timeformat'] == 1 ? 'h:i A' : 'H:i');
- $_DSESSION['timeoffset'] = isset($_DSESSION['timeoffset']) && $_DSESSION['timeoffset'] != 9999 ? $_DSESSION['timeoffset'] : $_DCACHE['settings']['timeoffset'];
-
-
-
-
- $membertablefields = '';
- @extract($_DSESSION);
-
-
-
-
- $lastvisit = emptyempty($lastvisit) ? $timestamp - 86400 : $lastvisit;
-
- $timenow = array('time' => gmdate("$dateformat $timeformat", $timestamp + 3600 * $timeoffset),
- 'offset' => ($timeoffset >= 0 ? ($timeoffset == 0 ? '' : '+'.$timeoffset) : $timeoffset));
-
-
-
-
-
- if(PHP_VERSION > '5.1') {
- @date_default_timezone_set('Etc/GMT'.($timeoffset > 0 ? '-' : '+').(abs($timeoffset)));
- }
-
-
-
-
-
- $accessadd1 = $accessadd2 = $modadd1 = $modadd2 = $metadescription = '';
-
-
-
-
- if(emptyempty($discuz_uid) || emptyempty($discuz_user)) {
- $discuz_user = $extgroupids = '';
- $discuz_uid = $adminid = $posts = $digestposts = $pageviews = $oltime = $invisible
- = $credits = $extcredits1 = $extcredits2 = $extcredits3 = $extcredits4
- = $extcredits5 = $extcredits6 = $extcredits7 = $extcredits8 = 0;
- $groupid = emptyempty($groupid) || $groupid != 6 ? 7 : 6;
-
- } else {
- $discuz_userss = $discuz_user;
- $discuz_user = addslashes($discuz_user);
-
- if($accessmasks) {
- $accessadd1 = ', a.allowview, a.allowpost, a.allowreply, a.allowgetattach, a.allowpostattach';
- $accessadd2 = "LEFT JOIN {$tablepre}access a ON a.uid='$discuz_uid' AND a.fid=f.fid";
- }
-
- if($adminid == 3) {
- $modadd1 = ', m.uid AS ismoderator';
- $modadd2 = "LEFT JOIN {$tablepre}moderators m ON m.uid='$discuz_uid' AND m.fid=f.fid";
- }
- }
-
- if($errorreport == 2 || ($errorreport == 1 && $adminid > 0)) {
- error_reporting(E_ERROR | E_WARNING | E_PARSE);
- }
-
- define('FORMHASH', formhash());
-
- $statstatus && !$inajax && require_once DISCUZ_ROOT.'./include/counter.inc.php';
-
- $extra = isset($extra) && @preg_match("/^[&=;a-z0-9]+$/i", $extra) ? $extra : '';
-
- $rsshead = $navtitle = $navigation = '';
-
- $_DSESSION['groupid'] = $groupid = emptyempty($ipbanned) ? (emptyempty($groupid) ? 7 : intval($groupid)) : 6;
-
- if(!@include DISCUZ_ROOT.'./forumdata/cache/usergroup_'.$groupid.'.php') {
- $grouptype = $db->result_first("SELECT type FROM {$tablepre}usergroups WHERE groupid='$groupid'");
- if(!emptyempty($grouptype)) {
- $cachelost .= ' usergroup_'.$groupid;
- } else {
- $grouptype = 'member';
- }
- }
-
-
-
-
-
- $link_login = 'logging.php?action=login';
- $link_logout = 'logging.php?action=logout&formhash='.FORMHASH;
- $link_register = $regname;
-
- if($discuz_uid && $_DSESSION) {
- if(!emptyempty($groupexpiry) && $groupexpiry < $timestamp && !in_array(CURSCRIPT, array('wap', 'member'))) {
- dheader("Location: {$boardurl}member.php?action=groupexpiry");
- } elseif($grouptype && $groupid != getgroupid($discuz_uid, array
- (
- 'type' => $grouptype,
- 'creditshigher' => $groupcreditshigher,
- 'creditslower' => $groupcreditslower
- ), $_DSESSION)) {
- @extract($_DSESSION);
- $cachelost .= (@include DISCUZ_ROOT.'./forumdata/cache/usergroup_'.intval($groupid).'.php') ? '' : ' usergroup_'.$groupid;
- }
- }
-
-
-
-
-
-
-
-
-
-
-
- $tpp = intval(emptyempty($_DSESSION['tpp']) ? $topicperpage : $_DSESSION['tpp']);
- $ppp = intval(emptyempty($_DSESSION['ppp']) ? $postperpage : $_DSESSION['ppp']);
-
-
-
-
- if(!in_array($adminid, array(1, 2, 3))) {
- $alloweditpost = $alloweditpoll = $allowstickthread = $allowmodpost = $allowdelpost = $allowmassprune
- = $allowrefund = $allowcensorword = $allowviewip = $allowbanip = $allowedituser = $allowmoduser
- = $allowbanuser = $allowpostannounce = $allowviewlog = $disablepostctrl = 0;
- } elseif(isset($radminid) && $adminid != $radminid && $adminid != $groupid) {
- $cachelost .= (@include DISCUZ_ROOT.'./forumdata/cache/admingroup_'.intval($adminid).'.php') ? '' : ' admingroup_'.$groupid;
- }
-
-
-
-
-
-
- $auditstatuson = !emptyempty($mod) && $mod == 'edit' && in_array($adminid, array(1, 2, 3)) && $allowmodpost ? true : false;
-
- $page = isset($page) ? max(1, intval($page)) : 1;
- $tid = isset($tid) && is_numeric($tid) ? $tid : 0;
- $fid = isset($fid) && is_numeric($fid) ? $fid : 0;
- $typeid = isset($typeid) ? intval($typeid) : 0;
-
-
-
-
-
-
-
-
- ?>
(完) 记得多回过头来看看,温故而知新!
本文转自许琴 51CTO博客,原文链接:http://blog.51cto.com/xuqin/882315,如需转载请自行联系原作者