我有3种用户类型:
我在user type
的登录上有个问题。()
当我的用户输入为Admin时,我可以登录。当我的用户类型是分发服务器时,我可以登录。
但是当我的用户类型是内部的时,我不能登录。连线?
我在AccountController.php中查看我的登录函数中的代码的每一行。我没注意到那里有什么窃听器。如果你们注意到那里有虫子--请告诉我。
这对我会有很大的帮助。
这是我的登录功能
GET
public function getSignIn(){
return View::make('account.signin');
}
POST
public function postSignIn() {
$validator = Validator::make( Input::only('username','password'),
array(
'username' =>'required',
'password' =>'required'
)
);
if ($validator->fails()) {
return Redirect::route('account-sign-in-post')
->with('error','Username/Password Wrong or account has not been activated !')
->withErrors($validator);
}
// Remember Me
$remember = (Input::has('remember')) ? true : false ;
$auth = Auth::attempt(array(
'username' => strtolower(Input::get('username')),
'password' => Input::get('password'),
'active' => 1),
$remember);
// Keep track on log-in information of the user.
if(Auth::check()){
$user = Auth::user();
$user->last_logged_in = Input::get('created_at');
$user->logged_in_count = $user->logged_in_count + 1 ;
$user->is_online = '1';
$user->save();
}
if($auth) {
return Redirect::to('/')
->with('success','You have been successfully logged in.')
;
}
else {
return Redirect::route('account-sign-in')
->with('error','Username/Password Wrong or account has not been activated !')
->withInput(Input::except('password'))
->withErrors($validator);
}
}
VIEW
@extends ('layouts.form')
@section('content')
<style type="text/css">
.signin{
text-align: center;
}
#forgetpassword{
/*color:#5cb85c;*/
color:silver;
}
</style>
<form class="form-horizontal" role="form" action=" {{ URL::route('account-sign-in-post')}}" method="post" >
@if ($errors->has('username')){{ $errors->first('username')}} @endif
<div class="form-group">
<label for=""> Email </label>
<input placeholder="Email" type="text" class="form-control" required name="username" {{ ( Input::old('username')) ? 'value="'.e(Input::old('username')).'"' : '' }}>
</div><br>
@if ($errors->has('password')){{ $errors->first('password')}} @endif
<div class="form-group">
<label for=""> Password </label>
<input placeholder="Password" type="password" class="form-control" required name="password">
</div><br>
<br>
<button type="submit" class="btn btn-success btn-sm btn-block ">Sign In </button>
{{ Form::token() }}
</form><br>
<div class="col-lg-12 text-center">
<a id="forgetpassword" href="{{ URL::route('account-forgot-password') }}"> Forget Password </a> <br>
</div>
@stop
我确信我输入了正确的用户名和密码,因为我再次检查了我的数据库。
它不断地把我转回到我的登录页面。使用(“错误”、“用户名/密码错误或帐户未被激活!”)
有人能告诉我,如果我做了什么不该做的事吗?
发布于 2014-12-06 16:51:54
在您的情况下,您应该在auth
函数中检查您的Sign_In
变量。
根据你的代码,
$auth = Auth::attempt(array(
'username' => strtolower(Input::get('username')),
'password' => Input::get('password'),
'active' => 1),
$remember);
记住,这些都是需要确保的事情
username
必须与数据库匹配password
必须与数据库匹配active
必须为1因此,如果其中任何一个都失败了,它就会让您从STOP
登录。
user active
呢?If Not
在您的设置密码功能或任何地方,您通常设置您的用户活动。
就这么做吧:
$user->active = '1';
$user->save();
让我知道这是否有效!!
https://stackoverflow.com/questions/27307232
复制相似问题