2015-07-02 20 views
1

我決定使用CodeIgniter-Skeleton-master(作者Anvoz)構建我的網站。 我在這個例子中添加了新的菜單和子菜單。 隨着安裝新菜單我沒有問題,因爲我複製Todo的例子,使Todo1,它沒有任何問題的工作。 但是,在所有添加的子菜單下,我在Todo1下顯示的網頁無法正確訪問css和js文件,導航欄顯示爲沒有css和js。 問題導致什麼網站url()搶控制器名稱todo1和css和js是在錯誤的路徑!CodeIgniter Skeleton,子菜單丟失了css和js的路徑

例子:

todo1 ->path : http://localhost/ci3a/ ->this工作確定,而不是所有使用CSS和JS路徑添加到這一點,並有接取到自己的文件 todo1/aboutus ->path : http://localhost/ci3a/todo1 ->this控制器名稱todo1原因錯誤的道路和CSS不能用js文件!

組織文件: 應用 資產,包括CSS,圖像和js子 系統

在應用程序/配置/ assets.php我:

$config['assets_url'] = 'assets/'; 

autoload.php我有:

$autoload['helper'] = array('url'); 

config.php我有:

$config['base_url'] = ''; 
$config['index_page'] = ''; 

routes.php文件我有:

$route['default_controller'] = "skeleton"; 
$route['404_override'] = ''; 

在應用/骨架/ I有 控制器和視圖文件夾

在控制器夾我有主控制器skeleton.php

在application/views/header.php中我有導航菜單結構。 在這裏,我把待辦事項菜單 - > todo1的副本2子菜單,誰的工作,但不顯示CSS和JS

 <li class="dropdown"> 

      <a class="dropdown-toggle" data-toggle="dropdown" href="#"> 

       Todo1 <b class="caret"></b> 

      </a> 

      <ul class="dropdown-menu"> 

       <li><a href="<?php echo site_url('todo1'); ?>">Todo1</a></li> 

       <li><a href="<?php echo site_url('todo1/aboutus'); ?>">About us</a></li> 


       <li><a href="<?php echo site_url('todo1/whereweare'); ?>">Where we are</a></li> 

      </ul> 

     </li> 

我加入了類似的功能指數(以todo1.php控制器)對這個新submenuus)

public function aboutus() 

{ 

    $this->load->library('template'); 


    $this->template->set_layout('pagelet'); 

    $this->template->set_title('Todo example'); 


    $this->template->load_view('todo1/aboutus'); 

} 

我不知道如何消除這個控制器的名稱誰使css,圖像和js不可訪問。 我試圖在根目錄下創建新文件夾todo1,並將訪問子文件夾複製到它中,但問題依然存在。 在Web瀏覽器中,毫無遺漏的我的錯誤:

GET http://localhost/ci3a/todo1/aboutus [HTTP/1.1 200 OK 63ms] 
GET http://localhost/ci3a/todo1/assets/css/bootstrap.min.css [HTTP/1.1 404 

未找到141ms] 和X類似的錯誤 你這樣的人能幫助我嗎?

回答

0

來加載CSS和JS

<link href="<?php echo base_url(); ?>assets/css/bootstrap.css" rel="stylesheet" /> 
<script src="<?php echo base_url(); ?>assets/js/bootstrap.min.js" type="text/javascript"></script> 

,使您的文件夾structurer會是這樣

1. application 
2. assets 
    - css 
     1. bootstrap.css 
    - js 
     1. bootstrap.js 
    - images 
     1. slider.jpg 
     2. logo.jpg 
3. system 
4. .htacess 
5. index.php 

在控制器只需加載您的特定視圖僅

public function aboutus() 
{ 

    $this->template->set_title('Todo example'); 
    $this->template->load_view('todo1/header'); 
    $this->template->load_view('todo1/aboutus');//this should contain only about us details 
    $this->template->load_view('todo1/fotter'); 
} 

所以在header.php文件

<!DOCTYPE html> 
<html> 
<head> 
    <title>my site ----</title> 
    <meta charset="utf-8"> 
    <meta http-equiv="X-UA-Compatible" content="IE=edge"> 
    <meta name="viewport" content="width=device-width, initial-scale=1"> 
    <link href="<?php echo base_url(); ?>assets/css/bootstrap.css" rel="stylesheet" /> 
    <script src="<?php echo base_url(); ?>assets/js/bootstrap.min.js" type="text/javascript"></script> 

</head> 
在這樣

fotter.php文件

<div class="foot"> 
    <div class="social"> 
     <div class="news_letter"> 
      <p>Sign Up For Newsletter</p> 
      <div class="new_div"> 
       <form action="#" class="form_news" method="post"> 
        <input type="email" class="news_input" placeholder="E-Mail" name="email" required> 
        <input type="submit" class="news_button" value="Subscribe" name="news_but" > 
       </form> 
      </div> 
     </div> 
     <div class="follow"> 
      <p>Follow Me</p> 
      <ul class="soc"> 
       <li><a class="soc-facebook" href="#" target="_blank"></a></li> 
       <li><a class="soc-twitter" href="#"></a></li> 
       <li><a class="soc-linkedin soc-icon-last" href="#"></a></li> 
      </ul> 
     </div> 
    </div> 
    <div class="clear"></div> 
    <div class="copyright navbar navbar-default"> 
     <div class="copy_in"> 
      <div class="foot_nav navbar-text"> 
       <ul> 
        <a href="<?php echo base_url();?>"><li class="list_border">Home</li></a> 
        <a href="<?php echo base_url();?>index.php/aboutUs"><li class="list_border">About Us</li></a> 
        <a href="<?php echo base_url();?>index.php/product"><li class="list_border">Products</li></a> 
        <a href="<?php echo base_url();?>index.php/corsair"><li class="list_border">Corsair</li></a> 
        <a href="<?php echo base_url();?>index.php/contact"><li>Contact Us</li></a> 
       </ul> 
      </div> 
      <div class="foot_copy_text"> 
       <p class="navbar-text"> 
        © 2015 - comany name. Solution By : <a href="#" target="_blank">My office name</a> 
       </p> 
      </div> 
     </div> 
    </div> 
</div> 
</body> 

之間(例如:關於我們頁)

<div class="container"> 

    <h1>Im About us</h1> 
<!-- rest of code here --> 
</div> 

例如:接觸

<div class="container"> 

    <h1>Im contact</h1> 
    <!-- rest of code here --> 
</div> 
+0

問題出在文件的application/config/assets.php 替換行: $ config ['assets_url'] ='資產/'; 與: $ config ['assets_url'] ='/ assets /'; 也可以在application/helpers/My_url_helper.php中替換這一行: return $ assets_url。 trim($ uri,'/'); 與: return base_url($ assets_url。trim($ uri,'/')); –

+0

問題解決?? –

+0

是的,這個批准在assets.php和My_url_helper.php!一位朋友幫我解決了這個問題,在我的小鎮! –