2017-08-09 49 views
0

我正在为我的文件夹创建一些面包屑。当我点击第二个面包屑链接,它不走正确的URLBreadcrumbs链接不显示正确的网址

以前的URL显示“测试”

http://localhost/project/admin/common/test?directory=test/sub 

它应该显示

http://localhost/project/admin/common/test?directory=test 

督察输出

<ul class="breadcrumb"> 
    <li><a href="http://localhost/project/admin/common/test">Catalog</a></li> 
    <li><a href="http://localhost/project/admin/common/test?directory=test/sub">test</a></li> 
    <li><a href="http://localhost/project/admin/common/test?directory=test/sub">sub</a></li> 
</ul> 

O ñ视图

<ul class="breadcrumb"> 
    <?php foreach ($breadcrumbs as $breadcrumb) { ?> 
    <li><a href="<?php echo $breadcrumb['href']; ?>"><?php echo $breadcrumb['text']; ?></a></li> 
    <?php } ?> 
</ul> 

问题:我怎样才能确保前一个URL来显示文件夹之前正确的URL。

我产生我的控制器

$data['breadcrumbs'] = array(); 

$data['breadcrumbs'][] = array(
    'text' => 'Catalog', 
    'href' => base_url('admin/common/test') 
); 

$directory_names = explode('/', $this->input->get('directory')); 

foreach ($directory_names as $directory_name) { 
    $data['breadcrumbs'][] = array(
     'text' => $directory_name, 
     'href' => base_url('admin/common/test?directory=' . $this->input->get('directory')) 
    ); 
} 

enter image description here

回答

0

多亏了解决方案现在我在另一个论坛上,我将张贴在发现我的面包屑在这里分享

https://forum.codeigniter.com/thread-68653-post-346110.html#pid346110

$directory_names = explode('/', $this->input->get('directory')); 

$directory_done = ''; 

foreach ($directory_names as $directory_name) { 
     $directory_done .= ($directory_done <> ''? '/':'').$directory_name; 
    $data['breadcrumbs'][] = array(
     'text' => $directory_name, 
     'href' => base_url('admin/common/test?directory=' . $directory_done) 
    ); 
}