如何在codeigniter powered app中为分页数据的每一行添加复选框? 这是我的代码
$this->load->library('pagination');
$config['base_url'] = base_url().'index.php/admin/editquestiontopics';
$config['total_rows'] = $this->db->count_all('tbl_advice_topics');
$config['per_page'] = '5';
$config['full_tag_open'] = '<p>';
$config['full_tag_close'] = '</p>';
$this->pagination->initialize($config);
$this->load->model('advice_topics_model');
$data['results'] = $this->advice_topics_model->get_topics($config['per_page'],$this->uri->segment(3));
$this->load->library('table');
$this->table->set_heading('ID','Topic');
$this->load->view('adminadvicetopics',$data);
//this my model func()
public function get_topics($num, $offset)
{
$query = $this->db->get('tbl_advice_topics',$num,$offset);
return $query;
}
//this is my view code
<?php echo $this->table->generate($results); ?>
<?php echo $this->pagination->create_links(); ?>
答案 0 :(得分:3)
这与Codeigniter分页没有任何关系。看起来更像是你在“adminadvicetopics”视图中所做的事情,甚至是你模型中的“get_topics”函数。
发布这些代码,我们会更好地回答您的问题。
编辑:现在我已经看到了您的代码,我发现您无法在视图中设置此代码。 如果你必须在这个实例中使用codeigniter的表类,并且仍然想使用查询结果作为输入,那么你将不得不在查询本身中添加复选框!这是一个相当混乱的方法,但看起来像这样:
public function get_topics($num, $offset)
{
$sql = "SELECT
CONCAT('<input name=\"row_', `id`, '\" type=\"checkbox\" value=\"row_', `id`, '\" />') AS First_Column,
`Second_Column`,
`Third_Column`
FROM
`tbl_advice_topics`
LIMIT $offset, $num";
$query = $this->db->query($sql);
return $query;
}
更可接受的方法是将查询结果转换为表类可以使用的三维数组(如图here所示)。然后,您可以在此处添加复选框,并对输出进行更多控制。