From 051867181641dfdc56c8257c1dfa607518dacea4 Mon Sep 17 00:00:00 2001 From: hide_d Date: Mon, 19 Mar 2018 22:57:01 +0900 Subject: [PATCH] =?UTF-8?q?=EC=9C=A0=EC=A0=80=20=EA=B6=8C=ED=95=9C?= =?UTF-8?q?=EC=9D=84=20$SESSION=EC=9D=84=20=EC=9D=B4=EC=9A=A9=ED=95=98?= =?UTF-8?q?=EB=8A=94=20=ED=98=95=ED=83=9C=EB=A1=9C=20=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- f_config/SESSION.php | 9 +-- f_func/class._Session.php | 4 ++ i_entrance/Style.css | 5 +- i_entrance/adminPost.php | 18 +++--- i_entrance/entrance.php | 11 ++-- i_entrance/member/Get.php | 125 +++++++++++++++++++------------------- 6 files changed, 88 insertions(+), 84 deletions(-) diff --git a/f_config/SESSION.php b/f_config/SESSION.php index 029b2376..cdb2dd2d 100644 --- a/f_config/SESSION.php +++ b/f_config/SESSION.php @@ -4,12 +4,9 @@ require_once(ROOT.'/f_func/class._Session.php'); $SESSION = new _Session(); -if($SESSION->isLoggedIn() == false) { -// echo(''); - header ("Location: ".ROOT.'/i_login/login.php'); - exit(1); - //echo(''); - //exit(1); +if(!$SESSION->isLoggedIn()) { + header ("Location: ".ROOT); + die(); } diff --git a/f_func/class._Session.php b/f_func/class._Session.php index 89db5e24..8ca95cf5 100644 --- a/f_func/class._Session.php +++ b/f_func/class._Session.php @@ -39,6 +39,10 @@ class _Session { unset($_SESSION['userGrade']); } + public function getGrade() { + return $_SESSION['userGrade']; + } + public function isLoggedIn() { if($this->NoMember()){ return true; diff --git a/i_entrance/Style.css b/i_entrance/Style.css index b1efab88..c1c1477f 100644 --- a/i_entrance/Style.css +++ b/i_entrance/Style.css @@ -53,8 +53,9 @@ text-align: center; } -#user_info input{ - width: 200px; height: 50px; +#user_info button{ + width: 200px; + height: 50px; margin: 10px 50px; } diff --git a/i_entrance/adminPost.php b/i_entrance/adminPost.php index dd4e6fd0..8f76991c 100644 --- a/i_entrance/adminPost.php +++ b/i_entrance/adminPost.php @@ -19,8 +19,14 @@ $notice = util::array_get($_POST['notice'], ''); $server = util::array_get($_POST['server'], ''); $db = getRootDB(); +$userGrade = $SESSION->getGrade(); -$member = $db->queryFirstRow('SELECT `GRADE` FROM `MEMBER` WHERE `NO` = %i', $SESSION->NoMember()); +if($userGrade < 6) { + returnJson([ + 'result'=>'FAIL', + 'msg'=>'운영자 권한이 없습니다.' + ]); +} function doServerModeSet($server, $action, &$response){ $serverList = getServerConfigList(); @@ -48,6 +54,7 @@ function doServerModeSet($server, $action, &$response){ ['allow_ip' => $allow_ip, 'xforward_allow_ip' => $xforward_allow_ip]); file_put_contents($serverPath.'/.htaccess', $htaccess); } elseif($action == 'reset') {//리셋 + //FIXME: reset, reset_full 구현 if(file_exists($serverPath.'/d_setting/conf.php')){ @unlink($serverPath.'/d_setting/conf.php'); } @@ -63,13 +70,8 @@ function doServerModeSet($server, $action, &$response){ return true; } -function doAdminPost($member, $action, $notice, $server){ +function doAdminPost($action, $notice, $server){ $response['result'] = 'FAIL'; - if($member['GRADE'] < 6) { - $response['result'] = 'FAIL'; - $response['msg'] = '운영자 권한이 없습니다.'; - return $response; - } if($action == 'notice') { getRootDB()->update('SYSTEM', ['NOTICE'=>$notice], 'NO=1'); @@ -86,6 +88,6 @@ function doAdminPost($member, $action, $notice, $server){ } -$response = doAdminPost($member, $action, $notice, $server); +$response = doAdminPost($action, $notice, $server); echo json_encode($response); diff --git a/i_entrance/entrance.php b/i_entrance/entrance.php index b85f3b50..d225a807 100644 --- a/i_entrance/entrance.php +++ b/i_entrance/entrance.php @@ -6,9 +6,8 @@ require_once(ROOT.'/f_config/SESSION.php'); $templates = new League\Plates\Engine('templates'); $db = getRootDB(); -$system = $db->queryFirstRow('SELECT `NOTICE` FROM `SYSTEM` WHERE `NO`=1'); -$member = $db->queryFirstRow('SELECT ID, GRADE FROM `MEMBER` WHERE `NO` = %i', $SESSION->NoMember()); -$userGrade = $member['GRADE']; +$notice = $db->queryFirstField('SELECT `NOTICE` FROM `SYSTEM` WHERE `NO`=1'); +$userGrade = $SESSION->getGrade(); ?> @@ -44,7 +43,7 @@ $userGrade = $member['GRADE']; = 6) { +if($userGrade >= 6) { include('member/Frame.php'); } ?> @@ -53,11 +52,11 @@ if($member['GRADE'] >= 6) { = 6){ - echo $templates->render('global_panel',['notice'=>$system['NOTICE']]); + echo $templates->render('global_panel',['notice'=>$notice]); } ?> -
+
diff --git a/i_entrance/member/Get.php b/i_entrance/member/Get.php index e38ff8de..7eefce1a 100644 --- a/i_entrance/member/Get.php +++ b/i_entrance/member/Get.php @@ -10,69 +10,70 @@ use utilphp\util as util; $select = $_GET['select']; $db = getRootDB(); -$member = $db->queryFirstRow('SELECT `GRADE` FROM `MEMBER` WHERE `no` = %i', $SESSION->NoMember()); -if($member['GRADE'] < 6) { - $response['result'] = 'FAIL'; - $response['msg'] = '운영자 권한이 없습니다.'; -} else { - - $orderByStr = ''; - switch($select) { - case 0: $orderByStr = 'ORDER BY NO'; break; - case 1: $orderByStr = 'ORDER BY ID'; break; - case 2: $orderByStr = 'ORDER BY NAME'; break; - case 3: $orderByStr = 'ORDER BY PID'; break; - case 4: $orderByStr = 'ORDER BY IP'; break; - case 5: $orderByStr = 'ORDER BY GRADE DESC'; break; - case 6: $orderByStr = 'ORDER BY REG_NUM DESC'; break; - case 7: $orderByStr = 'ORDER BY REG_DATE DESC'; break; - } - - $response['lists'] = ''; - $response['members'] = '
서 버 선 택
'; - - $members = $db->queryFirstRow('SELECT NO, ID, PID, NAME, IP, PICTURE, IMGSVR, GRADE, REG_NUM, REG_DATE, BLOCK_NUM, BLOCK_DATE, QUIT FROM MEMBER %l', $orderByStr); - $count = count($members); - foreach($members as $member){ - $member['PID'] = substr($member['PID'], 0, 8); - $member['PICTURE'] = substr($member['PICTURE'], -8); - - if($member['GRADE'] == 2) { $member['GRADE'] = "{$member['GRADE']}"; } - if($member['GRADE'] == 3) { $member['GRADE'] = "{$member['GRADE']}"; } - if($member['GRADE'] == 4) { $member['GRADE'] = "{$member['GRADE']}"; } - if($member['GRADE'] == 5) { $member['GRADE'] = "{$member['GRADE']}"; } - if($member['GRADE'] == 6) { $member['GRADE'] = "{$member['GRADE']}"; } - - $response['lists'] .= ""; - - $response['members'] .= " - - - - - - - - - - - - - - - "; - } - $response['members'] .= '
{$member['NO']}{$member['ID']}{$member['PID']}{$member['NAME']}{$member['IP']}{$member['BLOCK_NUM']}{$member['BLOCK_DATE']}{$member['REG_NUM']}{$member['REG_DATE']}{$member['GRADE']}{$member['PICTURE']}{$member['IMGSVR']}{$member['QUIT']}
'; - - $response['count'] = "(0000/{$count})"; - - $system = getRootDB()->queryFirstRow('SELECT `REG`, `LOGIN` FROM `SYSTEM` WHERE `NO`=1'); - - $response['state'] = "가입: {$system['REG']}, 로그인: {$system['LOGIN']}"; - - $response['result'] = 'SUCCESS'; +$userGrade = $SESSION->getGrade(); +if($userGrade < 6) { + returnJson([ + 'result'=>'FAIL', + 'msg'=>'운영자 권한이 없습니다.' + ]); } -echo json_encode($response); +$orderByStr = ''; +switch($select) { + case 0: $orderByStr = 'ORDER BY NO'; break; + case 1: $orderByStr = 'ORDER BY ID'; break; + case 2: $orderByStr = 'ORDER BY NAME'; break; + case 3: $orderByStr = 'ORDER BY PID'; break; + case 4: $orderByStr = 'ORDER BY IP'; break; + case 5: $orderByStr = 'ORDER BY GRADE DESC'; break; + case 6: $orderByStr = 'ORDER BY REG_NUM DESC'; break; + case 7: $orderByStr = 'ORDER BY REG_DATE DESC'; break; +} + +$response['lists'] = ''; +$response['members'] = ''; + +$members = $db->queryFirstRow('SELECT NO, ID, PID, NAME, IP, PICTURE, IMGSVR, GRADE, REG_NUM, REG_DATE, BLOCK_NUM, BLOCK_DATE, QUIT FROM MEMBER %l', $orderByStr); +$count = count($members); +foreach($members as $member){ + $member['PID'] = substr($member['PID'], 0, 8); + $member['PICTURE'] = substr($member['PICTURE'], -8); + + if($member['GRADE'] == 2) { $member['GRADE'] = "{$member['GRADE']}"; } + if($member['GRADE'] == 3) { $member['GRADE'] = "{$member['GRADE']}"; } + if($member['GRADE'] == 4) { $member['GRADE'] = "{$member['GRADE']}"; } + if($member['GRADE'] == 5) { $member['GRADE'] = "{$member['GRADE']}"; } + if($member['GRADE'] == 6) { $member['GRADE'] = "{$member['GRADE']}"; } + + $response['lists'] .= ""; + + $response['members'] .= " + + + + + + + + + + + + + + +"; +} +$response['members'] .= '
{$member['NO']}{$member['ID']}{$member['PID']}{$member['NAME']}{$member['IP']}{$member['BLOCK_NUM']}{$member['BLOCK_DATE']}{$member['REG_NUM']}{$member['REG_DATE']}{$member['GRADE']}{$member['PICTURE']}{$member['IMGSVR']}{$member['QUIT']}
'; + +$response['count'] = "(0000/{$count})"; + +$system = getRootDB()->queryFirstRow('SELECT `REG`, `LOGIN` FROM `SYSTEM` WHERE `NO`=1'); + +$response['state'] = "가입: {$system['REG']}, 로그인: {$system['LOGIN']}"; + +$response['result'] = 'SUCCESS'; + +returnJson($response);