关于PHP CodeIgniter框架中通过标签和url做多条件分类筛选

这个方案在数据这块并不像网上说的需要用到session,也不需要get post,是直接体现在url上的。 url的方法也有php原生的传参 xxx.php?search=?&location=&size=&  .... 之类的方法,但是在CI框架中,似乎是不必如此的。只需定好路径,即可通过<a>标签来确定url,从而达到分类筛选的目的。


若有更简单有效的办法,欢迎告知啊! 今天查了一天,网上关于这块几乎没有资料。。。


不说数据交互的部分,就MVC框架中的V和C:

【App/controllers/demo.php】

class demo extends SB_Controller
{
    function __construct()
    {
        parent::__construct();
    }

    public function index($location="", $size="", $phase="")
    {
        //筛选分类信息
$data['location'] = urldecode($location);
        $data['size'] = urldecode($size);
        $data['phase'] = urldecode($phase);

        //把参数传给页面
$data['action'] = 'demo';
        $this->load->view('demo', $data);
    }
}

【View/defult/demo.php】

<!DOCTYPE html>
<html>
<head>
<meta charset='UTF-8'><?php $this->load->view('common/header');?><?php $this->load->view('common/header-meta');?>
</head>
<body>

//这里显示筛选的结果,做个示意
<?php echo $location . "  |  " . $size . "  |  " . $phase; ?><br>


//这里其实就是做通过<a>标签做筛选了。 进一步可以循环取数据库里的数据,此处只做个静态的示意。
城市:
<a href="<?php echo site_url('company/'.'0'.'/'.$size.'/'.$phase);?>">全部</a>
<a href="<?php echo site_url('company/'.'bj'.'/'.$size.'/'.$phase);?>">bj</a>
<a href="<?php echo site_url('company/'.'gz'.'/'.$size.'/'.$phase);?>">gz</a>
<a href="<?php echo site_url('company/'.'sh'.'/'.$size.'/'.$phase);?>">sh</a><br>
<br>

规模大小:
<a href="<?php echo site_url('company/'.$location.'/'."0".'/'.$phase);?>">全部</a>
<a href="<?php echo site_url('company/'.$location.'/'."big".'/'.$phase);?>">big</a>
<a href="<?php echo site_url('company/'.$location.'/'."middle".'/'.$phase);?>">middle</a>
<a href="<?php echo site_url('company/'.$location.'/'."small".'/'.$phase);?>">small</a><br>
<br>

阶段:
<a href="<?php echo site_url('company/'.$location.'/'.$size.'/'.'0');?>">全部</a>
<a href="<?php echo site_url('company/'.$location.'/'.$size.'/'.'初创');?>">初创</a>
<a href="<?php echo site_url('company/'.$location.'/'.$size.'/'.'成熟');?>">成熟型</a>
<a href="<?php echo site_url('company/'.$location.'/'.$size.'/'.'已上市');?>">已上市</a><br>
<br>


</body>
</html>

【app/config/routes.php】

$route['demo/(:any)'] = 'demo/index/$1'

这里设置下路径就好了。
<完>


你可能感兴趣的:(PHP,url,CI,a,分类筛选)