正在显示
4 个修改的文件
包含
32 行增加
和
4 行删除
@@ -46,11 +46,19 @@ class Home extends Base { | @@ -46,11 +46,19 @@ class Home extends Base { | ||
46 | $folder_id = (int) app()->request('folder_id'); | 46 | $folder_id = (int) app()->request('folder_id'); |
47 | // 附件 | 47 | // 附件 |
48 | $attachment = app()->request('attachment'); | 48 | $attachment = app()->request('attachment'); |
49 | + // 已读/未读 | ||
50 | + $seen = app()->request('seen',-1,'intval'); | ||
51 | + | ||
49 | 52 | ||
50 | $where = ['email_id'=>$this->getEmails('id')]; | 53 | $where = ['email_id'=>$this->getEmails('id')]; |
54 | + //目录 | ||
51 | if($folder_id) $where['folder_id'] = $folder_id; | 55 | if($folder_id) $where['folder_id'] = $folder_id; |
52 | if($ids) $where['id'] = $ids; | 56 | if($ids) $where['id'] = $ids; |
53 | if($attachment) $where['is_file'] = 1; //附件 | 57 | if($attachment) $where['is_file'] = 1; //附件 |
58 | + // 已读/未读 | ||
59 | + if(in_array($seen,[0,1])){ | ||
60 | + $where['seen'] = $seen; | ||
61 | + } | ||
54 | 62 | ||
55 | $lists = db()->all( | 63 | $lists = db()->all( |
56 | listsSql::lists( | 64 | listsSql::lists( |
@@ -132,6 +140,9 @@ class Home extends Base { | @@ -132,6 +140,9 @@ class Home extends Base { | ||
132 | app()->e('sync_request_param_error'); | 140 | app()->e('sync_request_param_error'); |
133 | }else{ | 141 | }else{ |
134 | // 查询id | 142 | // 查询id |
143 | + if(count($emails)===1){ | ||
144 | + $emails = $emails[0]; | ||
145 | + } | ||
135 | $datas = db()->all(emailSql::getValues(['email'=>$emails],'`id`,`email`,`pwd_error`')); | 146 | $datas = db()->all(emailSql::getValues(['email'=>$emails],'`id`,`email`,`pwd_error`')); |
136 | foreach ($datas as $k=>$v){ | 147 | foreach ($datas as $k=>$v){ |
137 | if(!$v['pwd_error']){ | 148 | if(!$v['pwd_error']){ |
@@ -145,7 +145,13 @@ function dbWhere(array $where, string $ar = 'and'):string{ | @@ -145,7 +145,13 @@ function dbWhere(array $where, string $ar = 'and'):string{ | ||
145 | $v = array_map(function ($n){ | 145 | $v = array_map(function ($n){ |
146 | return "'".addslashes($n)."'"; | 146 | return "'".addslashes($n)."'"; |
147 | },$v); | 147 | },$v); |
148 | + if(count($v)===1){ | ||
149 | + // 只有一个值时就是 = | ||
150 | + $sql[] = "`{$f}` = ".$v; | ||
151 | + }elseif (count($v) > 1){ | ||
148 | $sql[] = "`{$f}` in (".implode(',',$v).")"; | 152 | $sql[] = "`{$f}` in (".implode(',',$v).")"; |
153 | + } | ||
154 | + | ||
149 | }else{ | 155 | }else{ |
150 | $sql[] = "`{$f}` = '".addslashes($v)."'"; | 156 | $sql[] = "`{$f}` = '".addslashes($v)."'"; |
151 | } | 157 | } |
@@ -65,18 +65,29 @@ class DbPool { | @@ -65,18 +65,29 @@ class DbPool { | ||
65 | }else{ | 65 | }else{ |
66 | $params = null; | 66 | $params = null; |
67 | } | 67 | } |
68 | + | ||
69 | + if(APP_DEBUG) { | ||
70 | + $timer = microtime(true); | ||
71 | + } | ||
72 | + | ||
68 | $query = $this->client->prepare($sql); | 73 | $query = $this->client->prepare($sql); |
69 | 74 | ||
75 | + $ret = $query->execute($params); | ||
76 | + | ||
77 | + | ||
78 | + | ||
70 | if(APP_DEBUG){ | 79 | if(APP_DEBUG){ |
80 | + $timer2 = microtime(true); | ||
81 | + | ||
71 | // todo:: 记录日志,生产请注释 | 82 | // todo:: 记录日志,生产请注释 |
83 | + $sql = '['.substr($timer2-$timer,0,8).'ms] '.$sql; | ||
72 | logs( | 84 | logs( |
73 | $params ? [$sql,$params] : $sql, | 85 | $params ? [$sql,$params] : $sql, |
74 | - LOG_PATH.'/sql.log' | 86 | + LOG_PATH.'/'.date('Y-m-d').'.sql.log' |
75 | ); | 87 | ); |
76 | } | 88 | } |
77 | 89 | ||
78 | - | ||
79 | - if($query->execute($params)){ | 90 | + if($ret){ |
80 | return $query; | 91 | return $query; |
81 | } | 92 | } |
82 | 93 |
@@ -31,7 +31,7 @@ class listsSql { | @@ -31,7 +31,7 @@ class listsSql { | ||
31 | 31 | ||
32 | $filed = '`id`,`uid`,`msgno`,`subject`,`from`,`from_name`,`to`,`date`,`size`,`recent`,`flagged`,`answered`,`deleted`,`seen`,`draft`,`udate`,`folder_id`,`is_file`,`cc`,`bcc`,`description`'; | 32 | $filed = '`id`,`uid`,`msgno`,`subject`,`from`,`from_name`,`to`,`date`,`size`,`recent`,`flagged`,`answered`,`deleted`,`seen`,`draft`,`udate`,`folder_id`,`is_file`,`cc`,`bcc`,`description`'; |
33 | 33 | ||
34 | - return "select {$filed} from `".static::$table."` where ".$where." order by `udate` desc limit {$size} offset ".(($p-1)*30); | 34 | + return "select {$filed} from `".static::$table."` where ".$where." order by `udate` desc limit {$size} offset ".(($p-1)*$size); |
35 | 35 | ||
36 | } | 36 | } |
37 | 37 |
-
请 注册 或 登录 后发表评论