Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Codeigniter CI分页,POST方法不起作用_Codeigniter_Post_Paging_Codeigniter Pagination - Fatal编程技术网

Codeigniter CI分页,POST方法不起作用

Codeigniter CI分页,POST方法不起作用,codeigniter,post,paging,codeigniter-pagination,Codeigniter,Post,Paging,Codeigniter Pagination,好吧,我对CI很陌生,我一直在分页。我正在查询结果的记录集上执行此分页。现在一切似乎都很好。但是这个链接可能有问题。我每页显示10个结果。现在,如果结果小于10,那么就可以了。或者,如果我调出表格中的所有记录,它就可以正常工作。但是,如果结果超过10行,那么前10行将完美显示,当我单击分页链接进入下一页时,下一页将显示查询的其余结果以及表中的其他记录???我很困惑。。有什么帮助吗 这是我正在使用的模型代码 function getTeesLike($field,$param) { $th

好吧,我对CI很陌生,我一直在分页。我正在查询结果的记录集上执行此分页。现在一切似乎都很好。但是这个链接可能有问题。我每页显示10个结果。现在,如果结果小于10,那么就可以了。或者,如果我调出表格中的所有记录,它就可以正常工作。但是,如果结果超过10行,那么前10行将完美显示,当我单击分页链接进入下一页时,下一页将显示查询的其余结果以及表中的其他记录???我很困惑。。有什么帮助吗

这是我正在使用的模型代码

function getTeesLike($field,$param)
{
    $this->db->like($field,$param);
    $this->db->limit(10, $this->uri->segment(3));
    $query=$this->db->get('shirt');
    if($query->num_rows()>0){
        return $query->result_array();
    }
}

function getNumTeesfromQ($field,$param)
{
    $this->db->like($field,$param);
    $query=$this->db->get('shirt');
    return $query->num_rows();
}
这是控制器代码

$KW=$this->input->post('searchstr');
$this->load->library('pagination');
$config['base_url']='http://localhost/cit/index.php/tees/show/';
$config['total_rows']=$this->T->getNumTeesfromQ('Title',$KW);
$config['per_page']='10';
$this->pagination->initialize($config);
$data['tees']=$this->T->getTeesLike('Title',$KW);
$data['title']='Displaying Tees data';
$data['header']='Tees List';
$data['links']=$this->pagination->create_links();
$this->load->view('tee_res', $data);
我在这里做错了什么????请帮忙

我猜问题出在
$KW=$this->input->post('searchstr')。。

因为如果我为
$KW
硬编码一个值,它可以正常工作。可能我应该使用不同的POST。但是我如何在不发布表单的情况下传递表单中的值,它的CI因此无法获得

控制器中

<?php

$KW=$this->input->post('searchstr');
$this->load->library('pagination');

$count = $this->model_name->getNumTeesfromQ($KW);//Count


$config['base_url']= base_url().'index.php/tees/show/';
$config['total_rows']= $count;
$config['per_page']='10';
$config['uri_segment'] = 4;
$limit = $config['per_page'];

$this->pagination->initialize($config);
$page = ($this->uri->segment(4)) ? $this->uri->segment(4) : 0;
$data['links'] = $this->pagination->create_links();


$data['tees']=$this->model_name->getTeesLike($KW,$limit,$page);
$data['title']='Displaying Tees data';
$data['header']='Tees List';

$this->load->view('tee_res', $data);
视图中

echo
所有数据使用
foreach


然后在页面底部使用
这将显示您的分页

您可以发布包含表单的HTML代码吗?看起来这个问题已经解决了:谢谢Billiam我花了一整天寻找这个简单的答案,希望我能找到这个帖子
public function getNumTeesfromQ($KW)
{
    $query = $this->db->query("SELECT * FROM title WHERE table_field='$KW'");
    $result = $query->result_array();
    $count = count($result);
    return $count;
}

public function getTeesLike($KW,$limit,$page)
{
    $query = $this->db->query("SELECT * FROM title WHERE table_field='$KW' LIMIT $page, $limit");
    $result = $query->result_array();
    return $result;
}