我正在尝试使用多个搜索条件实现分页。假设我有学生表。当显示学生列表时,我也使用分页。分页链接是。site_url . '/student/page/';
所以我用$config['uri_segment'] = 1
; 所以分页链接将是
<a href="http://mysite/index.php/student/page/0">1</a>
<a href="http://mysite/index.php/student/page/1">2</a>
和儿子。
之后,我想使用使用文本字段实现的 3 个搜索条件来搜索学生数据。
id name address.
用户可以通过 id 或 name 或 address 或三个条件的组合进行搜索。网址变成
http://mysite/index.php/student/page/0
href=http://mysite/index.php/student/page/1
和儿子。
但我使用 get 方法进行搜索。并且在尝试使用搜索条件字段进行搜索时,网址变为
href="http://mysite/index.php/student/page/1?id=1&name=a&address=b
当我尝试根据标准创建分页时出现问题。因为分页链接包含查询字符串我不知道如何创建成为
href="http://mysite/index.php/student/page/0?id=1&name=a&address=b
href="http://mysite/index.php/student/page/1?id=1&name=a&address=b
或者你有解决这个问题的最佳实践吗?
嗨菲尔....我已经尝试了你的建议。
$array = array('id' => '001', 'name' => 'a', 'address' => 'canada');
网址变成
id/001/name/a/address/canada
. 我使用$this->uri->uri_to_assoc()
函数来获取段的键和值。
array (
id => 001,
name=>a,
address=>canada
)
但是虽然有一些搜索条件不包括在搜索中。比方说,用户只按姓名和地址搜索。数组变成
$array = array('id' => '', 'name' => 'a', 'address' => 'canada');
和 url id/name/a/address/canada
assoc 数组变成
array (
id => name,
a=>address,
canada=>
)
assoc 数组不再杂乱无章。所以我无法获得 assoc 数组的正确值。如果不包括在内,我想我会将标识符设置为搜索条件。应该是我放#
的。
if isset($_GET['id']) then
$id = '#'
else
$id = $_GET['id']
$array = array('id' => $id, 'name' => 'a', 'address' => 'canada');
那个怎么样 ... ?或者是否还有其他最佳做法?