запись строки не обновляется в codeigniter - PullRequest
0 голосов
/ 20 мая 2011

Мне нужна помощь по моему коду ниже.Я использую codeigniter в качестве основы для этой разработки

        function update_admin()
        {
            $this->usermodel->update_admin();
            redirect('userslist');

}

Модель

        function update_admin()
    {
        $update_admin_data = array(
                'username' => $this->input->post('username'),
                'email' => $this->input->post('email'),
                'password ' => md5($this->input->post('password '))
            );
            $this->db->where('id',$id);
            $update = $this->db->update('users', $update_admin_data);
            return $update;
    }

весь код не обновляет выбранную запись, просто случается, что он просто перенаправляет на страницу без обновления.что может быть возможным решением для этого?

спасибо!

Ответы [ 2 ]

2 голосов
/ 20 мая 2011

Вам не хватает атрибута $id.Обновите отправленную форму в вашем втором представлении:

<?php echo form_open('userslist/update_admin/'.$query['id']); ?>

Исправьте ваш второй контроллер:

function update_admin($id)
        {
            $this->usermodel->update_admin($id);
            redirect('userslist');
}

Наконец, исправьте вашу update_admin функцию модели, чтобы она начиналась так:

 function update_admin($id)
    {
0 голосов
/ 20 мая 2011

Я считаю, что это где ваша проблема

$this->db->where('id',$id);

переменная $id не определена в вашей функции модели, поэтому, когда вы пытаетесь сделать $this->db->where('id',$id); $ id, это не переменная, следовательно, ничего не находит ... следовательно, не обновляется.

если $id является частью URI, сделайте что-то вроде:

$id = $this->uri->segment(3) //or whatever the segment is going to be
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...