如何访问CodeIgniter中的另一个视图?

时间:2016-07-09 00:00:54

标签: php codeigniter

我认为此类问题之前已被问过,但我仍无法为我的案例找到合适的答案

我需要在导航标题中单击一个选项,然后我想加载另一个视图

这是我的控制器

class Pages extends CI_Controller {
     function index (){
              $this->load->helper('url');
              $this->load->view('home');
            }
            public function contact() {

              $this->load->helper('url');
              $this->load->view('contcatus'); 
            }
    }

我的观点home.php是

<ul class="nav navbar-nav">
      <li><a href="#">Home</a></li>
      <li><a href="<?php echo base_url('Pages/contact') ;?>">About us</a></li>

      <li class="dropdown"><a class="dropdown-toggle" data-toggle="dropdown" href="#">Education program<span class="caret"></span></a>
      <ul class="dropdown-menu">
          <li><a href="#">Engineering program</a></li>
          <li><a href="#">Business program</a></li>
        </ul>
      </li>

      <li><a href="<?php echo base_url().'contact' ;?>">Contact us</a></li>
     </ul>

    <div class="navbar-header-right" id="signup">
     <a class="navbar-brand navbar-right" href="<?php echo base_url().'info' ;?>">Registration</a>
    </div>
  </nav>
</div>

另一种观点是contacact.php

<address>
  <strong>Student profile.eu.</strong><br>
  Skola Street 8 <br>
  Riga, Latvia <br>
  <abbr title="Phone">P:</abbr> (+) 371-28-949-227.<br>
  <abbr title="Phone">P:</abbr> (+) 371-26-291-600.
</address>

当我点击导航栏时我需要在第一个视图中联系我们以加载第二个,因为您注意到我尝试了

<li><a href="<?php echo base_url().'contact' ;?>">Contact us</a></li>

但是也没有工作sit_url(联系人/页面)也不起作用。

我的配置是:

$config['base_url'] = 'index.php';

,路线是:

$route['default_controller'] = 'pages';

当我点击<li>contact us</li>加载另一个视图时怎么办? 。 T.B.R

2 个答案:

答案 0 :(得分:0)

你应该在routes.php上添加一行:

$route['contact'] = 'Pages/contact';

Algo,有更好的方法来制作网址:<?=site_url('contact')?>,或使用CodeIgniter的anchor功能。

此外,您可以在autoload.php文件中自动加载url帮助程序。

答案 1 :(得分:0)

您不需要基本网址

<li><?php echo anchor('Pages/contact','About us');?></li>

使用锚点自动将地址通过控制器路由到方法