2013-04-18 70 views
1

我正在尋找導航如何在CI內工作的解釋。使用CodeIgniter導航

基本上,我有一個頂級導航的一些鏈接,並希望連接到它們。我只曾與

<a href="somelink.html">Some Link</a> 

這樣做我明白你通過控制器然後在標籤的href部分的功能,但我似乎並沒有工作,所以我明明做錯事。

以我的產品頁面爲例。

<a href ="user/products">Products</a> 

然後在「用戶」控制器

public function products() { 

    $data['title']='Products'; 
    $this->load->view ('header_view', $data); 
    $this->load->view ('products.php', $data); 
    $this->load->view ('footer_view', $data); 
} 

結果爲它的功能被錯誤消息「對象不在服務器上找到」。

我錯過了什麼?

+0

http://ellislab.com/codeigniter/user-guide/general/urls.html –

+0

嘗試''Products - 你也可能沒有刪除'/ index.php /'從你的網址? – jtheman

回答

1

如果您還沒有removed index.php from your URL,那麼您需要將其包含在相關鏈接中。

生成指向控制器/函數的鏈接的最簡單方法可能是使用CodeIgniter的URL Helper。在您的配置中指定

  • site_url()函數將返回您的網站的網址,以您的索引頁網址後綴一起是,也爲你的配置設置。如果你想在你用戶創建一個URL以您的產品功能然後,控制器:

    <a href ="<?php echo site_url("user/products"); ?>">Products</a> 
    
  • 您也可以使用anchor()功能。 (也用CodeIgniter的URL幫手。)

    echo anchor('user/products', 'Products'); 
    

使用這些功能是非常有用的,因爲如果你的網站的網址是改變,你只需要改變它一次配置,如這些功能將確保您的鏈接將反映這種變化。

0

您的控制器名稱是用戶

用戶/產品通常意味着CONTROLLER_NAME /功能沒有自定義路由

你的控制器文件

class User extends CI_Controll 
{ 
     function products() 
     { 
      // codes 
     } 


} 

在你的頭文件路由到產品(功能)。查看/頭。PHP

<a href="<?php echo base_url('user/prouducts') ?>">View Products</a> 

,每個頁面上會工作