Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
W
weixiuhui
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
蒋林
weixiuhui
Commits
cc12d987
Commit
cc12d987
authored
Nov 24, 2016
by
蒋林
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
添加登陆日志
parent
27e6c43d
Changes
8
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
210 additions
and
6 deletions
+210
-6
Chigo.php
application/controllers/test/Chigo.php
+1
-1
base_helper.php
application/helpers/base_helper.php
+44
-0
SourceChigo.php
application/libraries/Source/SourceChigo.php
+7
-0
SourceGalanz.php
application/libraries/Source/SourceGalanz.php
+7
-0
SourceHisense.php
application/libraries/Source/SourceHisense.php
+15
-5
SourceSuning.php
application/libraries/Source/SourceSuning.php
+17
-0
Log_model.php
application/models/Log_model.php
+26
-0
Login_log_model.php
application/models/Login_log_model.php
+93
-0
No files found.
application/controllers/test/Chigo.php
View file @
cc12d987
...
@@ -28,7 +28,7 @@ class Chigo extends BaseController
...
@@ -28,7 +28,7 @@ class Chigo extends BaseController
self
::
$apiUrl
=
"http://
{
$_SERVER
[
'HTTP_HOST'
]
}
/"
;
self
::
$apiUrl
=
"http://
{
$_SERVER
[
'HTTP_HOST'
]
}
/"
;
$account
=
[
$account
=
[
0
=>
[
'u'
=>
'0200145'
,
'p'
=>
'123456'
],
0
=>
[
'u'
=>
'0200145'
,
'p'
=>
'123456
1
'
],
];
];
$key
=
0
;
$key
=
0
;
...
...
application/helpers/base_helper.php
View file @
cc12d987
...
@@ -27,6 +27,50 @@ function get_uuapi($imagePath, $sys='', $account='')
...
@@ -27,6 +27,50 @@ function get_uuapi($imagePath, $sys='', $account='')
return
$code
;
return
$code
;
}
}
/**
* 登陆成功日志
* @param $sys
* @param $account
* @return mixed
*/
function
login_success
(
$sys
,
$account
)
{
$CI
=&
get_instance
();
$CI
->
load
->
model
(
'login_log_model'
);
return
$CI
->
login_log_model
->
success
(
$sys
,
$account
);
}
/**
* 登陆失败日志
* @param $sys
* @param $account
* @param $pwd
* @return mixed
*/
function
login_fail
(
$sys
,
$account
,
$pwd
)
{
$CI
=&
get_instance
();
$CI
->
load
->
model
(
'login_log_model'
);
return
$CI
->
login_log_model
->
fail
(
$sys
,
$account
,
$pwd
);
}
/**
* 登陆检查
* @param $sys
* @param $account
* @param $pwd
* @param $num
*/
function
login_check
(
$sys
,
$account
,
$pwd
,
$num
)
{
$CI
=&
get_instance
();
$CI
->
load
->
model
(
'login_log_model'
);
$CI
->
login_log_model
->
failMaxNum
(
$sys
,
$account
,
$pwd
,
$num
);
}
/**
/**
* 字符串aes加密/解密
* 字符串aes加密/解密
* @param $str
* @param $str
...
...
application/libraries/Source/SourceChigo.php
View file @
cc12d987
...
@@ -23,10 +23,16 @@ class SourceChigo extends Source
...
@@ -23,10 +23,16 @@ class SourceChigo extends Source
//debug
//debug
self
::
$debug
=
false
;
self
::
$debug
=
false
;
//登陆检查
login_check
(
self
::
$app
,
self
::
$account
[
'username'
],
self
::
$account
[
'pwd'
],
3
);
//判断是否登陆
//判断是否登陆
$result
=
$this
->
IsLogin
();
$result
=
$this
->
IsLogin
();
if
(
$result
==
false
)
{
if
(
$result
==
false
)
{
login_fail
(
self
::
$app
,
self
::
$account
[
'username'
],
self
::
$account
[
'pwd'
]);
return_msg
(
false
,
'登陆失败'
);
return_msg
(
false
,
'登陆失败'
);
}
else
{
login_success
(
self
::
$app
,
self
::
$account
[
'username'
]);
}
}
}
}
...
@@ -356,6 +362,7 @@ class SourceChigo extends Source
...
@@ -356,6 +362,7 @@ class SourceChigo extends Source
$this
->
Debug
(
'Login'
,
$result
);
$this
->
Debug
(
'Login'
,
$result
);
if
(
stripos
(
$result
[
'data'
],
'用户密码不正确'
)
!==
false
)
{
if
(
stripos
(
$result
[
'data'
],
'用户密码不正确'
)
!==
false
)
{
login_fail
(
self
::
$app
,
self
::
$account
[
'username'
],
self
::
$account
[
'pwd'
]);
return_msg
(
false
,
'用户密码不正确!(-10001)'
);
return_msg
(
false
,
'用户密码不正确!(-10001)'
);
}
}
...
...
application/libraries/Source/SourceGalanz.php
View file @
cc12d987
...
@@ -22,11 +22,17 @@ class SourceGalanz extends Source
...
@@ -22,11 +22,17 @@ class SourceGalanz extends Source
//debug
//debug
self
::
$debug
=
false
;
self
::
$debug
=
false
;
//登陆检查
login_check
(
self
::
$app
,
self
::
$account
[
'username'
],
self
::
$account
[
'pwd'
],
3
);
//判断是否登陆
//判断是否登陆
$result
=
$this
->
IsLogin
();
$result
=
$this
->
IsLogin
();
if
(
$result
==
false
)
{
if
(
$result
==
false
)
{
login_fail
(
self
::
$app
,
self
::
$account
[
'username'
],
self
::
$account
[
'pwd'
]);
return_msg
(
false
,
'登陆失败'
);
return_msg
(
false
,
'登陆失败'
);
}
else
{
login_success
(
self
::
$app
,
self
::
$account
[
'username'
]);
}
}
}
}
...
@@ -94,6 +100,7 @@ class SourceGalanz extends Source
...
@@ -94,6 +100,7 @@ class SourceGalanz extends Source
$this
->
Debug
(
'login'
,
$result
);
$this
->
Debug
(
'login'
,
$result
);
if
(
stripos
(
$result
[
'data'
],
'用户密码不正确'
)
!==
false
)
{
if
(
stripos
(
$result
[
'data'
],
'用户密码不正确'
)
!==
false
)
{
login_fail
(
self
::
$app
,
self
::
$account
[
'username'
],
self
::
$account
[
'pwd'
]);
return_msg
(
false
,
'用户密码不正确(-10001)'
);
return_msg
(
false
,
'用户密码不正确(-10001)'
);
}
}
...
...
application/libraries/Source/SourceHisense.php
View file @
cc12d987
...
@@ -20,13 +20,18 @@ class SourceHisense extends Source
...
@@ -20,13 +20,18 @@ class SourceHisense extends Source
self
::
$captchaFilePath
=
PUBDIR
.
"captcha/"
.
self
::
$app
.
"_"
.
md5
(
self
::
$account
[
'username'
])
.
".gif"
;
self
::
$captchaFilePath
=
PUBDIR
.
"captcha/"
.
self
::
$app
.
"_"
.
md5
(
self
::
$account
[
'username'
])
.
".gif"
;
//debug
//debug
self
::
$debug
=
true
;
self
::
$debug
=
false
;
//登陆检查
login_check
(
self
::
$app
,
self
::
$account
[
'username'
],
self
::
$account
[
'pwd'
],
3
);
//判断是否登陆
//判断是否登陆
$result
=
$this
->
IsLogin
();
$result
=
$this
->
IsLogin
();
if
(
$result
==
false
)
{
if
(
$result
==
false
)
{
login_fail
(
self
::
$app
,
self
::
$account
[
'username'
],
self
::
$account
[
'pwd'
]);
return_msg
(
false
,
'登陆失败'
);
return_msg
(
false
,
'登陆失败'
);
}
else
{
}
else
{
login_success
(
self
::
$app
,
self
::
$account
[
'username'
]);
$this
->
LoginInit
();
$this
->
LoginInit
();
}
}
}
}
...
@@ -131,7 +136,7 @@ class SourceHisense extends Source
...
@@ -131,7 +136,7 @@ class SourceHisense extends Source
public
function
IsLogin
(
$num
=
0
)
public
function
IsLogin
(
$num
=
0
)
{
{
if
(
$num
>
3
)
{
if
(
$num
>
2
)
{
return
false
;
return
false
;
}
}
...
@@ -195,10 +200,17 @@ class SourceHisense extends Source
...
@@ -195,10 +200,17 @@ class SourceHisense extends Source
$this
->
Debug
(
'Login1'
,
$res1
);
$this
->
Debug
(
'Login1'
,
$res1
);
//账号/密码错误
//账号/密码错误
if
(
$res1
[
'data'
][
'result'
]
!=
'0'
||
$res1
[
'data'
][
'msg'
]
!=
'成功'
)
{
if
(
intval
(
$res1
[
'data'
][
'result'
])
==
0
&&
$res1
[
'data'
][
'msg'
]
==
''
)
{
login_fail
(
self
::
$app
,
self
::
$account
[
'username'
],
self
::
$account
[
'pwd'
]);
return_msg
(
false
,
'账户名与密码不匹配(-10001)'
);
return_msg
(
false
,
'账户名与密码不匹配(-10001)'
);
}
}
// //除验证以为的错误
// if (intval($res1['data']['result']) > 1) {
// login_fail(self::$app, self::$account['username'], self::$account['pwd']);
// return_msg(false, '登陆错误');
// }
$url
=
"http://222.173.107.86/HisenseCRM/LoginCRM.do?method=getPsnInfo&username="
.
self
::
$account
[
'username'
];
$url
=
"http://222.173.107.86/HisenseCRM/LoginCRM.do?method=getPsnInfo&username="
.
self
::
$account
[
'username'
];
$res2
=
$this
->
HttpCurlPost
(
$url
,
[],
$headers
);
$res2
=
$this
->
HttpCurlPost
(
$url
,
[],
$headers
);
...
@@ -286,8 +298,6 @@ class SourceHisense extends Source
...
@@ -286,8 +298,6 @@ class SourceHisense extends Source
{
{
preg_match_all
(
'/<td[^>]*>[\s\S]*?<\/td>/'
,
$tr
,
$td
);
preg_match_all
(
'/<td[^>]*>[\s\S]*?<\/td>/'
,
$tr
,
$td
);
print_r
(
$td
);
foreach
(
$td
[
0
]
as
$kk
=>
$vv
)
{
foreach
(
$td
[
0
]
as
$kk
=>
$vv
)
{
$vv
=
preg_replace
(
'/<[^>]+>/'
,
''
,
$vv
);
$vv
=
preg_replace
(
'/<[^>]+>/'
,
''
,
$vv
);
$vv
=
trim
(
$vv
);
$vv
=
trim
(
$vv
);
...
...
application/libraries/Source/SourceSuning.php
View file @
cc12d987
...
@@ -22,10 +22,16 @@ class SourceSuning extends Source
...
@@ -22,10 +22,16 @@ class SourceSuning extends Source
//debug
//debug
self
::
$debug
=
false
;
self
::
$debug
=
false
;
//登陆检查
login_check
(
self
::
$app
,
self
::
$account
[
'username'
],
self
::
$account
[
'pwd'
],
3
);
//判断是否登陆
//判断是否登陆
$isLogin
=
$this
->
IsLogin
();
$isLogin
=
$this
->
IsLogin
();
if
(
$isLogin
==
false
)
{
if
(
$isLogin
==
false
)
{
login_fail
(
self
::
$app
,
self
::
$account
[
'username'
],
self
::
$account
[
'pwd'
]);
return_msg
(
false
,
'登陆失败'
);
return_msg
(
false
,
'登陆失败'
);
}
else
{
login_success
(
self
::
$app
,
self
::
$account
[
'username'
]);
}
}
}
}
...
@@ -319,6 +325,7 @@ class SourceSuning extends Source
...
@@ -319,6 +325,7 @@ class SourceSuning extends Source
$phoneCode
=
$this
->
GetPhoneCode
();
$phoneCode
=
$this
->
GetPhoneCode
();
if
(
$phoneCode
===
false
)
{
if
(
$phoneCode
===
false
)
{
login_fail
(
self
::
$app
,
self
::
$account
[
'username'
],
self
::
$account
[
'pwd'
]);
return_msg
(
false
,
'获取手机验证码失败'
);
return_msg
(
false
,
'获取手机验证码失败'
);
}
}
...
@@ -459,42 +466,52 @@ class SourceSuning extends Source
...
@@ -459,42 +466,52 @@ class SourceSuning extends Source
break
;
break
;
case
"serviceNotAvailable"
:
case
"serviceNotAvailable"
:
login_fail
(
self
::
$app
,
self
::
$account
[
'username'
],
self
::
$account
[
'pwd'
]);
return_msg
(
false
,
"当前服务不可用,请稍后再试。"
);
return_msg
(
false
,
"当前服务不可用,请稍后再试。"
);
break
;
break
;
case
"badCredentials"
:
case
"badCredentials"
:
login_fail
(
self
::
$app
,
self
::
$account
[
'username'
],
self
::
$account
[
'pwd'
]);
return_msg
(
false
,
"账号数据异常,请更换账号再试。"
);
return_msg
(
false
,
"账号数据异常,请更换账号再试。"
);
break
;
break
;
case
"badPassword.msg1"
:
case
"badPassword.msg1"
:
login_fail
(
self
::
$app
,
self
::
$account
[
'username'
],
self
::
$account
[
'pwd'
]);
return_msg
(
false
,
"您输入的账户名与密码不匹配,请重新输入!(-10001)"
);
return_msg
(
false
,
"您输入的账户名与密码不匹配,请重新输入!(-10001)"
);
break
;
break
;
case
"badPassword.msg2"
:
case
"badPassword.msg2"
:
login_fail
(
self
::
$app
,
self
::
$account
[
'username'
],
self
::
$account
[
'pwd'
]);
return_msg
(
false
,
"您输入的账户名与密码不匹配,请重新输入!重试次数过多,账号将会被锁定。(-10001)"
);
return_msg
(
false
,
"您输入的账户名与密码不匹配,请重新输入!重试次数过多,账号将会被锁定。(-10001)"
);
break
;
break
;
case
"badVerifyCode"
:
case
"badVerifyCode"
:
login_fail
(
self
::
$app
,
self
::
$account
[
'username'
],
self
::
$account
[
'pwd'
]);
return_msg
(
false
,
"输入的验证码错误,请重新输入!"
);
return_msg
(
false
,
"输入的验证码错误,请重新输入!"
);
break
;
break
;
case
"lockedByManual"
:
case
"lockedByManual"
:
login_fail
(
self
::
$app
,
self
::
$account
[
'username'
],
self
::
$account
[
'pwd'
]);
return_msg
(
false
,
"您的账号已经被锁定,请联系客服4008-198-198进行解锁。"
);
return_msg
(
false
,
"您的账号已经被锁定,请联系客服4008-198-198进行解锁。"
);
break
;
break
;
case
"lockedBySystem"
:
case
"lockedBySystem"
:
login_fail
(
self
::
$app
,
self
::
$account
[
'username'
],
self
::
$account
[
'pwd'
]);
return_msg
(
false
,
"您的账号已经被锁定,请联系客服4008-198-198进行解锁。"
);
return_msg
(
false
,
"您的账号已经被锁定,请联系客服4008-198-198进行解锁。"
);
break
;
break
;
case
"unsupportedCredentials"
:
case
"unsupportedCredentials"
:
login_fail
(
self
::
$app
,
self
::
$account
[
'username'
],
self
::
$account
[
'pwd'
]);
return_msg
(
false
,
"当前服务不可用,请稍后再试。"
);
return_msg
(
false
,
"当前服务不可用,请稍后再试。"
);
break
;
break
;
case
"uncategorized"
:
case
"uncategorized"
:
login_fail
(
self
::
$app
,
self
::
$account
[
'username'
],
self
::
$account
[
'pwd'
]);
return_msg
(
false
,
"验证失败,请稍后再试。"
);
return_msg
(
false
,
"验证失败,请稍后再试。"
);
break
;
break
;
case
"highRiskAccount"
:
case
"highRiskAccount"
:
login_fail
(
self
::
$app
,
self
::
$account
[
'username'
],
self
::
$account
[
'pwd'
]);
return_msg
(
false
,
"该账号密码存在风险,请您点击忘记密码重置密码后再登录"
);
return_msg
(
false
,
"该账号密码存在风险,请您点击忘记密码重置密码后再登录"
);
break
;
break
;
...
...
application/models/Log_model.php
0 → 100755
View file @
cc12d987
<?php
/**
* 日志模型
* Class Log_model
*/
class
Log_model
extends
CI_Model
{
public
$table
=
'log'
;
//表名
public
function
add
(
$sys
,
$account
,
$data
)
{
$insertData
=
[
'sys_name'
=>
$sys
,
'account'
=>
$account
,
'data'
=>
is_array
(
$data
)
?
json_encode
(
$data
)
:
$data
,
'ip'
=>
$_SERVER
[
'REMOTE_ADDR'
],
'created_time'
=>
time
()
];
$this
->
db
->
insert
(
$this
->
table
,
$insertData
);
return
$this
->
db
->
insert_id
();
}
}
\ No newline at end of file
application/models/Login_log_model.php
0 → 100755
View file @
cc12d987
<?php
/**
* 登陆日志模型
* Class Login_log_model
*/
class
Login_log_model
extends
CI_Model
{
public
$table
=
'login_log'
;
//表名
public
function
add
(
$sys
,
$account
,
$pwd
)
{
$time
=
time
();
$insertData
=
[
'sys_name'
=>
$sys
,
'account'
=>
$account
,
'pwd'
=>
$pwd
,
'num'
=>
1
,
'ip'
=>
$_SERVER
[
'REMOTE_ADDR'
],
'last_time'
=>
$time
,
'created_time'
=>
$time
];
$this
->
db
->
insert
(
$this
->
table
,
$insertData
);
return
$this
->
db
->
insert_id
();
}
public
function
save
(
$id
,
$data
)
{
$this
->
db
->
update
(
$this
->
table
,
$data
,
[
'id'
=>
$id
]);
return
$this
->
db
->
affected_rows
()
?
$id
:
false
;
}
//登陆成功
public
function
success
(
$sys
,
$account
)
{
$info
=
$this
->
getLogs
(
$sys
,
$account
);
if
(
empty
(
$info
))
{
return
true
;
}
else
{
$data
=
[
'num'
=>
0
,
'last_time'
=>
time
()
];
return
$this
->
save
(
$info
[
'id'
],
$data
);
}
}
//登陆出错
public
function
fail
(
$sys
,
$account
,
$pwd
)
{
$info
=
$this
->
getLogs
(
$sys
,
$account
);
if
(
empty
(
$info
))
{
return
$this
->
add
(
$sys
,
$account
,
$pwd
);
}
else
{
$data
=
[
'num'
=>
$info
[
'num'
]
+
1
,
'last_time'
=>
time
()
];
return
$this
->
save
(
$info
[
'id'
],
$data
);
}
}
//账号容许登陆出错的次数
public
function
failMaxNum
(
$sys
,
$account
,
$pwd
,
$num
=
5
)
{
$info
=
$this
->
getLogs
(
$sys
,
$account
);
if
(
$info
)
{
$st
=
time
()
-
$info
[
'last_time'
];
$max
=
3600
;
//单位秒
//账号被锁$max秒后重试
if
(
$st
<
$max
)
{
if
(
$info
[
'num'
]
>=
$num
)
{
$tempSt
=
$max
-
$st
;
return_msg
(
false
,
"登陆不能超过
{
$info
[
'num'
]
}
次,检查账号(
{
$sys
}
:
{
$account
}
), 请
{
$tempSt
}
秒后重试!"
);
}
}
}
}
public
function
getLogs
(
$sys
,
$account
)
{
return
$this
->
db
->
get_where
(
$this
->
table
,
[
'sys_name'
=>
$sys
,
'account'
=>
$account
])
->
row_array
();
}
}
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment