以下のコードでは、データベースで codeigniter を使用しました。列名 account_status があり、デフォルトで非アクティブになります。account_status がアクティブであるかどうかを確認したい場合は、ログインしないようにする必要があります。
コントローラ:
function index()
{
$data['main_content'] = 'login_form';
$this->load->view('includes/template', $data);
}
function validate_credentials()
{
$this->load->model('membership_model');
$query = $this->membership_model->validate();
if($query) // if the user's credentials validated...
{
$data = array(
'username' => $this->input->post('username'),
'is_logged_in' => true
);
$this->session->set_userdata($data);
redirect('site1/members_area');
}
else // incorrect username or password
{
$this->index();
}
}
サイト1
function members_area()
{
$this->load->view('homepage_view');
}
モデル:
function validate()
{
$this->db->where('username', $this->input->post('username'));
$this->db->where('password', md5($this->input->post('password')));
$query = $this->db->get('membership');
if($query->num_rows == 1)
{
return true;
}
}