2017-07-20 469 views
0

感謝我的工作,我開始在CodeIgniter平臺上工作。這個平臺自從之前就開始了,所以我剛剛參加了這個項目。事情是我沒有和CI一起工作,所以我剛剛有一個快速教程,並根據平臺的構建方式開始開發。現在開始,我決定創建一個新頁面來放置一個對象列表,並瞭解PHP如何與HTML進行通信。問題是,當我轉到我在routes.php上定義的URL時,它會發出一個錯誤「請求的資源不存在」,並且我不知道我在做什麼錯誤,而其他類似的工作在其他平臺的模塊。URI路由不起作用

我使用的文件是:

list.php的

// stuff 
     <?php if (has_access('agroindustrias')): ?> 
      <li class="<?php get_li_class('agroindustrias', $active); ?>" > 
       <a href="<?php echo base_url('administracion/agroindustria'); ?>">Agroindustrias</a> 
      </li> 
     <?php endif ?> 
// stuff 

agroindustria.php

<?php 
if (!defined('BASEPATH')) { 
    exit('No direct script access allowed'); 
} 

class Agroindustria extends MY_Controller 
{ 
    public function __construct() 
    { 
     parent::__construct(); 
     $this->load->model('agroindustria_model', 'agroindustria'); 
    } 

    public function index($offset = 0) 
    { 
     $data['links'] = $this->paginate($this->agroindustria, 'agroindustrias', $offset); 
     $data['permisos'] = $this->getPermissions('usuario'); 
     $data['active'] = 'usuarios'; 
     $data['agroindustrias'] = $this->agroindustria->limit($this->limit, $offset)->get_all(); 
     $data['submenu'] = $this->load->view('administracion/menu', $data, true); 

     $this->template->write_view('content', 'administracion/agroindustrias/list', $data); 
     $this->template->render(); 
    } 

} 

routes.php文件(更新所有的文件,只有「reportes」之前的文件不起作用)

$route['administracion/agroindustria'] = 'agroindustria/index'; 

我的網址是:http://localhost/work/administracion/agroindustria

其他控制器的工作原理有類似的東西,原因,我不知道我做錯了,我是否還需要添加一些其他的文件,或如果我寫的東西是錯的。提前致謝。

+0

我可以把它的index.php文件是在工作文件夾? – Antony

+0

是的,在應用程序文件夾內。 –

+0

你能輸出整個路線文件嗎? – Antony

回答

0

在@Antony讓我檢查的事情之後,我能夠發現錯誤,這實際上並不是一個錯誤,只是之前人們在平臺上工作過很多,我沒有深入瞭解方法學向平臺添加新模塊。我需要做的就是註冊新模塊,並且平臺根據需要添加新的URL。謝謝安東尼的幫助!

+0

沒問題 - 很高興我能幫忙:o) – Antony

0

,如果你使用的是像這樣

public function index($offset = 0){ 
    .... 
    .... 
    .... 
} 

方法,那麼你需要改變像

路線,如果第一個字母不大寫所有的第一次重命名agroindustria.php到Agroindustria.php
$route['administracion/agroindustria/(:num)'] = 'agroindustria/index/$1'; 

和URL

http://localhost/work/administracion/agroindustria/0 

最好的辦法是在你的控制人變更情況

//if offset not change 
public function index(){ 
    $offset = 0; 
    .... 
    .... 
    .... 
} 

//if your offset depend upon 3rd segments of URL then 
public function index(){ 
    $offset = if($this->uri->segment(3)) ? $this->uri->segment(3) : 0; 
    .... 
    .... 
    .... 
}