как вернуть идентификатор пользователя, когда пользователь успешно вошел в систему с помощью codeigniter - PullRequest
0 голосов
/ 03 ноября 2011

здесь находится контроллер для формы входа, после процесса входа пользователь сможет добавлять сообщения в базу данных, поэтому мне нужно собрать некоторые данные в качестве имени пользователя текущего зарегистрированного пользователя и идентификатора этогопользователь в {таблица пользователей}

<?php

class login extends CI_Controller{
function index()
{
    $this->load->view('login_form');
}
function proccess()
{
    $this->load->model('membership_model');
    $query = $this->membership_model->validate();

    if($query) // if the user's credentials validated ..
    {
        $data = array(
            'username_usr' => $this->input->post('username'),
            'is_logged_in' => true
        );
        $this->session->set_userdata($data);

        redirect('view=dogo&do=new_post');
    }
    else 
    {
        $this->index();
    }
}

function signup()
{
    //signup proccess
}
}

и вот модель процесса входа в систему

<?php
class Membership_model extends CI_Model{
function validate()
{
    $this->db->where('username_usr', $this->input->post('username'));
    $this->db->where('password_usr', md5($this->input->post('password')));
    $query = $this->db->get('hs_users_usr');

    if($query->num_rows == 1)
    {
        return true;
    }
}
}

Я могу вернуть имя пользователязарегистрированного пользователя, мне также нужно вернуть идентификатор этого пользователя

1 Ответ

1 голос
/ 03 ноября 2011

В случае успеха вы можете вернуть запрос и извлечь из него идентификатор пользователя:

Контроллер

<?php

class login extends CI_Controller{
function index()
{
    $this->load->view('login_form');
}
function proccess()
{
    $this->load->model('membership_model');
    $query = $this->membership_model->validate();

    if($query !== FALSE) // if the user's credentials validated ..
    {
        $user_data = $query->row();

        $data = array(
            'user_id' => $user_data->id,
            'username_usr' => $this->input->post('username'),
            'is_logged_in' => true
        );

        $this->session->set_userdata($data);

        redirect('view=dogo&do=new_post');
    }
    else 
    {
        $this->index();
    }
}

function signup()
{
    //signup proccess
}
}

Модель

<?php
class Membership_model extends CI_Model{
function validate()
{
    $this->db->where('username_usr', $this->input->post('username'));
    $this->db->where('password_usr', md5($this->input->post('password')));
    $query = $this->db->get('hs_users_usr');

    if($query->num_rows == 1)
    {
        return $query;
    }
    else
    {
        return FALSE;
    }
}
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...