codeigniter更新特定的数据库行

时间:2013-03-09 14:52:32

标签: codeigniter

我正在尝试设置我的codeigniter安装以允许我更新我的数据库。我设法使用:

function updateValues(){
    $this->load->model("get_db");
    $newrow = array(
        array(
            "id" => "3",
            "name" => "bruce"
        ),
        array(
            "id" => "4",
            "name" => "billybob"
        )
    );
    $this->get_db->update2($newrow);
    echo "update successful"    ;   
}

这可以工作并更新第3行和第4行。我现在需要根据我的活动用户ID更新单行。我已尝试通过谷歌在许多不同的地方找到几行代码。代码如:

echo $ this-> db-> insert_id()

所有这一切都返回'0'。

所以我的问题是如何回显或返回存储在数据库中的当前活动用户ID。

我很确定我已经错过了一些基本的东西,因为我是codeigniter的新手。任何帮助将不胜感激。

由于

1 个答案:

答案 0 :(得分:0)

最简单的方法是在登录时将userId存储在会话中,然后您可以随时检索会话变量。

Login routine
$this->db->where('userName',$userName);
$this->db->where('password',$password);
$data = $this->db->get('users');
if($data->num_rows() ==1)
{
    $userData = $data->result();
    $this->session->set_userdata('userId',$userData->userId);
}

然后,只要你需要它,你就会想起userId

$userId = $this->session->userdata('userId');
$newrow = array(
    'id'=>$userId,
    'name'='Cornelius'
);