From da088d88ba80fff39a843b4afd1ac6745feee6b2 Mon Sep 17 00:00:00 2001 From: hide_d Date: Sat, 6 Apr 2019 14:46:07 +0900 Subject: [PATCH] =?UTF-8?q?=EC=84=B8=EB=A0=A5=EC=9E=A5=EC=88=98=20?= =?UTF-8?q?=EB=B3=B8=EB=8B=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- hwe/b_myGenInfo.php | 78 ++++++++++++++++++++------------------------- 1 file changed, 34 insertions(+), 44 deletions(-) diff --git a/hwe/b_myGenInfo.php b/hwe/b_myGenInfo.php index 9dbe9f41..180947ea 100644 --- a/hwe/b_myGenInfo.php +++ b/hwe/b_myGenInfo.php @@ -14,6 +14,7 @@ $session = Session::requireGameLogin()->setReadOnly(); $userID = Session::getUserID(); $db = DB::db(); +$gameStor = KVStorage::getStorage($db, 'game_env'); $connect=$db->get(); increaseRefresh("세력장수", 1); @@ -29,6 +30,14 @@ if($me['level'] == 0) { $sel = [$type => "selected"]; +$ownerNameList = []; +if($gameStor->isunited){ + foreach(RootDB::db()->queryAllLists('SELECT no, name FROM member') as [$ownerID, $ownerName]){ + $ownerNameList[$ownerID] = $ownerName; + } +} + + ?> @@ -74,48 +83,26 @@ $sel = [$type => "selected"]; queryFirstField('select level from nation where nation = %i', $me['nation']); -$orderByText = '';//FIXME: 쿼리 재작성 -switch($type) { - case 1: $orderByText = " order by level desc"; break; - case 2: $orderByText = " order by dedication desc"; break; - case 3: $orderByText = " order by experience desc"; break; - case 4: $orderByText = " order by leader desc"; break; - case 5: $orderByText = " order by power desc"; break; - case 6: $orderByText = " order by intel desc"; break; - case 7: $orderByText = " order by gold desc"; break; - case 8: $orderByText = " order by rice desc"; break; - case 9: $orderByText = " order by crew desc"; break; - case 10: $orderByText = " order by connect desc"; break; - case 11: $orderByText = " order by personal"; break; - case 12: $orderByText = " order by special desc"; break; - case 13: $orderByText = " order by special2 desc"; break; - case 14: $orderByText = " order by belong desc"; break; - case 15: $orderByText = " order by npc desc"; break; -} -$query = - "select - npc, - special, - special2, - personal, - picture, - imgsvr, - name, - level, - dedication, - experience, - injury, - leader, - power, - intel, - gold, - rice, - belong, - connect, - killturn - from general where nation='{$me['nation']}' ".$orderByText; -$genresult = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),""); -$gencount = MYDB_num_rows($genresult); + +[$orderKey, $orderDesc] = [ + 1=>['level', true], + 2=>['dedication', true], + 3=>['experience', true], + 4=>['leader', true], + 5=>['power', true], + 6=>['intel', true], + 7=>['gold', true], + 8=>['rice', true], + 9=>['crew', true], + 10=>['connect', true], + 11=>['personal', true], + 12=>['special', true], + 13=>['special2', true], + 14=>['belong', true], + 15=>['npc', true], +][$type]; + +$generalList = $db->query('SELECT owner,no,picture,imgsvr,npc,age,nation,special,special2,personal,name,injury,leader,power,intel,experience,dedication,level,killturn,connect,gold,rice,crew,belong from general order by %b %l', $orderKey, $orderDesc?'desc':''); echo" @@ -136,8 +123,7 @@ echo" "; -for($j=0; $j < $gencount; $j++) { - $general = MYDB_fetch_array($genresult); +foreach($generalList as $general){ if($general['level'] == 12) { $lbonus = $nationLevel * 2; @@ -169,6 +155,10 @@ for($j=0; $j < $gencount; $j++) { elseif($general['npc'] == 1) { $name = "{$general['name']}"; } else { $name = "{$general['name']}"; } + if(key_exists($general['owner'], $ownerNameList)){ + $name = $name.'
('.$ownerNameList[$general['owner']].')'; + } + $imageTemp = GetImageURL($general['imgsvr']); echo "
사 관 벌점