コードが動作していてもログインできません。活性化された場合= 1のようにログインし、そうでない場合はログインしません。私のテーブルでアクティブになっている行はすでに1に設定されています。つまり、すでにアクティブ化されています。しかし、私はログインできません。それは常に活性化= 0を出力します。これはログインに失敗しました!あなたのメールアドレスのリンクをクリックしてください!アカウントを有効にした後にログインする方法は?
public function index()
{
$Username=$this->input->post("username");
$Password=$this->input->post("password");
$this->form_validation->set_rules("username", "username", "trim|required");
$this->form_validation->set_rules("password", "password", "trim|required");
$this->db->where('Username', $this->input->post('username'));
$this->db->where('Password', $this->input->post('password'));
$this->db->select('activated');
$que=$this->db->get('tblaccount');
if ($this->form_validation->run()==FALSE)
{
$this->load->view('login_view');
}
else
{
$account=$this->account_model->get_user($Username, sha1($Password));
if (count($account)>0)
{
if ($que->row('activated')==1)
{
$sess_data=array('login'=>TRUE, 'picture'=>$account[0]->Picture, 'firstname'=>$account[0]->First_Name, 'lastname'=>$account[0]->Last_Name, 'id'=>$account[0]->AID, 'position'=>$account[0]->Position, 'department'=>$account[0]->Department);
$this->session->set_userdata($sess_data);
if ($_SESSION['position']=="Professor")
{
echo "<script type='text/javascript'>alert('Welcome to attendance monitoring system, $_SESSION[firstname] $_SESSION[lastname]!');window.location='".base_url("index.php/main")."';</script>";
}
else if ($_SESSION['position']=="Department Chair")
{
echo "<script type='text/javascript'>alert('Welcome to attendance monitoring system, $_SESSION[firstname] $_SESSION[lastname]!');window.location='".base_url("index.php/report")."';</script>";
}
else if ($_SESSION['position']=="OSA Faculty"||"Guidance Faculty")
{
echo "<script type='text/javascript'>alert('Welcome to attendance monitoring system, $_SESSION[firstname] $_SESSION[lastname]!');window.location='".base_url("index.php/faculty")."';</script>";
}
}
else if ($que->row('activated')==0)
{
$this->session->set_flashdata('msg', '<div class="alert alert-danger text-center">Login failed! Please click the link on your email address!</div>');
redirect('login');
}
}
else
{
$this->session->set_flashdata('msg', '<div class="alert alert-danger text-center">Wrong Username or Password!</div>');
redirect('login');
}
}
}
'$ que = $ this-> db-> get( 'tblaccount');'を含む行の後に 'var_dump($ que)そのようにして、クエリが返すものと、おそらくあなたのコードがそのやり方と反応するのを見ることができます。参照:http://php.net/manual/en/function.var-dump.php –
ログインしようとしているアカウントのデータベースで 'activated'の値は?それが '0'の場合、エラーはアカウントを起動するコードに存在する可能性があります。私に起こりうる問題のように見えます。 – BugHunterUK
アカウントのデータベースで有効になっている値は1です。 –