DB:コード整理
@@ -756,7 +756,7 @@ | ||
756 | 756 | array_shift($where_like); |
757 | 757 | } elseif (true === in_array($value, $where_not_like)) { |
758 | 758 | $query = $value . ' NOT LIKE ?'; |
759 | - array_shift($where_like); | |
759 | + array_shift($where_not_like); | |
760 | 760 | } else { |
761 | 761 | $query = $value . ' = ?'; |
762 | 762 | } |
@@ -10,6 +10,7 @@ | ||
10 | 10 | //ユーザ認証 |
11 | 11 | private static function Certify(array $list) { |
12 | 12 | $query = self::GetQuery()->Select(['user_no']); |
13 | + | |
13 | 14 | DB::Prepare($query->Build(), $list); |
14 | 15 | return DB::Count() == 1; |
15 | 16 | } |
@@ -18,6 +19,7 @@ | ||
18 | 19 | private static function Update(array $list) { |
19 | 20 | $query = self::GetQuery()->Update()->Set(['session_id']); |
20 | 21 | array_unshift($list, Session::GetUniqID()); |
22 | + | |
21 | 23 | DB::Prepare($query->Build(), $list); |
22 | 24 | return DB::Execute(); |
23 | 25 | } |
@@ -46,6 +46,7 @@ | ||
46 | 46 | } else { |
47 | 47 | $query->SetData('last_update_time', Query::TIME); |
48 | 48 | } |
49 | + | |
49 | 50 | self::Prepare($query); |
50 | 51 | return DB::FetchBool(); |
51 | 52 | } |
@@ -57,6 +58,7 @@ | ||
57 | 58 | $query = self::GetQueryUpdate(); |
58 | 59 | $query->SetData('overtime_alert', $bool ? Query::ENABLE : Query::DISABLE); |
59 | 60 | $query->SetData('last_update_time', Query::TIME); |
61 | + | |
60 | 62 | self::Prepare($query); |
61 | 63 | return DB::FetchBool(); |
62 | 64 | } |
@@ -71,6 +73,7 @@ | ||
71 | 73 | array_push($list, DB::$ROOM->date, 0); |
72 | 74 | } |
73 | 75 | $list[] = DB::$ROOM->id; |
76 | + | |
74 | 77 | DB::Prepare($query->Build(), $list); |
75 | 78 | return DB::FetchBool(); |
76 | 79 | } |
@@ -81,6 +84,7 @@ | ||
81 | 84 | $query->SetData('overtime_alert', Query::DISABLE)->SetData('scene_start_time', Query::TIME); |
82 | 85 | $query->SetData('start_datetime', Query::NOW); |
83 | 86 | $list = [RoomStatus::PLAYING, DB::$ROOM->date, DB::$ROOM->scene, 1, DB::$ROOM->id]; |
87 | + | |
84 | 88 | DB::Prepare($query->Build(), $list); |
85 | 89 | return DB::FetchBool(); |
86 | 90 | } |
@@ -91,6 +95,7 @@ | ||
91 | 95 | $query->SetData('scene_start_time', Query::TIME); |
92 | 96 | $query->SetData('finish_datetime', Query::NOW); |
93 | 97 | $list = [RoomStatus::FINISHED, RoomScene::AFTER, $winner, DB::$ROOM->id]; |
98 | + | |
94 | 99 | DB::Prepare($query->Build(), $list); |
95 | 100 | return DB::FetchBool(); |
96 | 101 | } |
@@ -132,6 +137,7 @@ | ||
132 | 137 | $query = Query::Init()->Table('vote')->Select($column); |
133 | 138 | $query->Where(['room_no', 'date', 'scene', 'vote_count']); |
134 | 139 | $list = [DB::$ROOM->id, DB::$ROOM->date, DB::$ROOM->scene, DB::$ROOM->vote_count]; |
140 | + | |
135 | 141 | DB::Prepare($query->Build(), $list); |
136 | 142 | return DB::FetchAssoc(); |
137 | 143 | } |
@@ -150,6 +156,7 @@ | ||
150 | 156 | $query = Query::Init()->Table('vote')->Update()->SetData('vote_count', 'vote_count + 1'); |
151 | 157 | $query->Where(['room_no', 'date'])->WhereIn('type', 2); |
152 | 158 | $list = [DB::$ROOM->id, DB::$ROOM->date, VoteAction::CUPID, VoteAction::DUELIST]; |
159 | + | |
153 | 160 | DB::Prepare($query->Build(), $list); |
154 | 161 | return DB::FetchBool(); |
155 | 162 | } |
@@ -176,6 +183,7 @@ | ||
176 | 183 | } |
177 | 184 | break; |
178 | 185 | } |
186 | + | |
179 | 187 | DB::Prepare($query->Build(), $list); |
180 | 188 | return DB::Execute() && DB::Optimize('vote'); |
181 | 189 | } |
@@ -362,6 +370,7 @@ | ||
362 | 370 | //村存在判定 |
363 | 371 | public static function Exists() { |
364 | 372 | $query = self::GetQueryBase()->Select(['room_no']); |
373 | + | |
365 | 374 | DB::Prepare($query->Build(), [RQ::Get()->room_no]); |
366 | 375 | return DB::Exists(); |
367 | 376 | } |
@@ -29,6 +29,7 @@ | ||
29 | 29 | //最終村作成時刻を取得 |
30 | 30 | public static function GetLastEstablish() { |
31 | 31 | $query = self::GetQuery(['MAX(establish_datetime)']); |
32 | + | |
32 | 33 | DB::Prepare($query->Build(), self::GetStatus()); |
33 | 34 | return DB::FetchResult(); |
34 | 35 | } |
@@ -36,6 +37,7 @@ | ||
36 | 37 | //次の村番号を取得 |
37 | 38 | public static function GetNext() { |
38 | 39 | $query = self::GetQueryBase()->Select(['MAX(room_no)']); |
40 | + | |
39 | 41 | DB::Prepare($query->Build()); |
40 | 42 | return (int)DB::FetchResult() + 1; |
41 | 43 | } |
@@ -43,6 +45,7 @@ | ||
43 | 45 | //現在の稼動数を取得 |
44 | 46 | public static function CountActive() { |
45 | 47 | $query =self:: GetQuery(['room_no']); |
48 | + | |
46 | 49 | DB::Prepare($query->Build(), self::GetStatus()); |
47 | 50 | return DB::Count(); |
48 | 51 | } |
@@ -51,6 +54,7 @@ | ||
51 | 54 | public static function CountEstablish() { |
52 | 55 | $query = self::GetQuery(['room_no'])->Where(['establisher_ip']); |
53 | 56 | $list = array_merge(self::GetStatus(), [Security::GetIP()]); |
57 | + | |
54 | 58 | DB::Prepare($query->Build(), $list); |
55 | 59 | return DB::Count(); |
56 | 60 | } |
@@ -58,6 +62,7 @@ | ||
58 | 62 | //ユーザ数取得 |
59 | 63 | public static function CountUser($room_no) { |
60 | 64 | $query = Query::Init()->Table('user_entry')->Select(['user_no'])->Where(['room_no']); |
65 | + | |
61 | 66 | DB::Prepare($query->Build(), [$room_no]); |
62 | 67 | return DB::Count(); |
63 | 68 | } |
@@ -85,6 +90,7 @@ | ||
85 | 90 | //村データ UPDATE |
86 | 91 | public static function Update(array $list) { |
87 | 92 | $query = self::GetQueryBase()->Update()->Set(array_keys($list))->Where(['room_no']); |
93 | + | |
88 | 94 | DB::Prepare($query->Build(), array_merge(array_values($list), [DB::$ROOM->id])); |
89 | 95 | return DB::Execute(); |
90 | 96 | } |
@@ -4,6 +4,7 @@ | ||
4 | 4 | //ユニーク判定 |
5 | 5 | public static function Exists() { |
6 | 6 | $query = self::GetQuery()->Select(['room_no']); |
7 | + | |
7 | 8 | DB::Prepare($query->Build(), [Session::GetID()]); |
8 | 9 | return DB::Exists(); |
9 | 10 | } |
@@ -11,6 +12,7 @@ | ||
11 | 12 | //認証 |
12 | 13 | public static function Certify() { |
13 | 14 | $query = self::GetQuery()->Select(['user_no'])->Where(['room_no'])->WhereNot('live'); |
15 | + | |
14 | 16 | DB::Prepare($query->Build(), [Session::GetID(), RQ::Get()->room_no, UserLive::KICK]); |
15 | 17 | return DB::FetchColumn(); |
16 | 18 | } |
@@ -1,6 +1,6 @@ | ||
1 | 1 | <?php |
2 | 2 | //-- DB アクセス (データベース初期セットアップ拡張) --// |
3 | -class SetupDB { | |
3 | +final class SetupDB { | |
4 | 4 | //データベース接続 (データベース作成用) |
5 | 5 | public static function Connect() { |
6 | 6 | try { |
@@ -70,8 +70,7 @@ | ||
70 | 70 | break; |
71 | 71 | |
72 | 72 | case RoomScene::HEAVEN_ONLY: |
73 | - $query->Where(['date', 'scene', 'uname']); | |
74 | - $query->WhereOr(['scene', 'uname']); | |
73 | + $query->Where(['date', 'scene', 'uname'])->WhereOr(['scene', 'uname']); | |
75 | 74 | array_push($list, $date, RoomScene::HEAVEN, GM::SYSTEM); |
76 | 75 | break; |
77 | 76 |