无法使用codeigniter php更新数据库中的选定框值

时间:2017-08-28 08:00:31

标签: php mysql codeigniter

您好我正在创建一个视图,其中我将显示数据库中的记录列表以及用户选择复选框并单击“激活”按钮的框。在数据库中,一旦用户点击激活,我就为特色博客提供了一个单独的列,这些id列应更新为1,其余值将为0。

查看:

            <table>
                <thead>
                    <tr>
                        <th scope="col">Featured Blogs</th>
                        <th scope="col">S.No</th>
                        <th scope="col">Blog Title</th>
                        <th scope="col">Author</th>

                    </tr>
                </thead>

                <tbody>

                <?php if(isset($records) && is_array($records) && count($records)>0): ?>    
                <?php  $i=0;foreach($records as $r):$i++;?>     
                    <tr>
                        <td><input type="checkbox" name="checkbox" value="<?php echo $r->blog_id;?>" 
                        <?php if ($r->featured_blogs == 1) { echo 'checked="checked"'; }else { echo 'disabled="disabled"'; }?> ></td>                           
                        <td class="align-center"><?php echo $i;?></td>
                        <td><?php echo $r->blog_title;?></td>
                        <td><?php echo $r->username;?></td>

                    </tr>

                <?php endforeach ;endif;?>

                </tbody>
            </table>
            <div class="pagination"><?php echo $links; ?></div> 
            <a href="<?php echo base_url();?>/blogs/active" class="button">Activate</a>

        </div>
    </div>

控制器:

function active()
{
    $this->blogs_model->active($this->uri->segment(3));
    $this->flash->success('<h2>Successfully Activated the record.<h2>');
    redirect('blogs');
}

型号:

function activate($blog_id)
{
    $data=array('status'=>1);
    $this->db->where(array('blog_id'=>$blog_id));
    $this->db->update('blogs',$data);
}

1 个答案:

答案 0 :(得分:0)

function active()
{
    $this->blogs_model->active($this->uri->segment(3));
    $this->flash->success('<h2>Successfully Activated the record.<h2>');
    redirect('blogs');
}


function active($blog_id)
{
    $data=array('status'=>1);
    $this->db->where(array('blog_id'=>$blog_id));
    $this->db->update('blogs',$data);
}
在您的控制器上

您调用了模型,它的功能为active($this->uri->segment(3)) 但在您的模型中,您将其称为function activate($blog_id) 你需要改变它