2013-06-10 4 views
0

Я очень новичок в codeigniter. У меня статическая веб-страница. Я просто хочу преобразовать ее в динамическую веб-страницу. Прежде всего я вставлял все файлы в папку view MVC кодаigniter.Here у меня есть css, javascript и images папку и мои файлы php.не может найти css, js и изображения

Я создал контроллер, как это ..

<?php 
    class Saffron extends CI_Controller 
{ 
function index() 
    { 
     $this->load->view('home'); 
    } 

} 
?> 

и моя home.php страница так же, как это ..

<!DOCTYPE html> 
<html lang="en"> 
<head> 
<title>Home</title> 
<meta charset="utf-8"> 
<link rel="stylesheet" type="text/css" 
media="screen" href="<?= base_url() ?>application/views/css/reset.css"> 
<link rel="stylesheet" type="text/css" 
media="screen" href="<?= base_url() ?>application/views/css/style.css"> 
<link rel="stylesheet" type="text/css" 
media="screen" href="<?= base_url() ?>application/views/css/slider.css"> 

<script src="<? echo base_url(); ?>application/views/js/jquery-1.7.min.js"></script> 
<script src="<? echo base_url(); ?>application/views/js/jquery.easing.1.3.js"></script> 
<script src="<? echo base_url(); ?>application/views/js/tms-0.4.1.js"></script> 
<script src="<? echo base_url(); ?>application/views/js/vpb_script.js"></script> 
<script src="<? echo base_url(); ?>application/views/js/pop.js"></script> 

<!--start popup window ref--> 
<link href="application/views/css/colorbox.css" 
rel="stylesheet" type="text/css" media="all" /> 
<script src="<? echo base_url(); ?>application/views/js/jquery_002.js"></script> 
<script> 
    $(document).ready(function(){ 

     $(".image_show").colorbox({rel:'image_show', transition:"fade"}); 

    }); 
</script> 
<!--end popup window ref--> 


<!--[if lt IE 8]> 
    <div style=' clear: both; text-align:center; position: relative;'> 
    <a href="http://windows.microsoft.com/en-US/ 
internet-explorer/products/ie/home?ocid=ie6_countdown_bannercode"> 
     <img src="http://storage.ie6countdown.com/assets/100/ 
images/banners/warning_bar_0000_us.jpg" border="0" height="42" 
width="820" alt="You are using an outdated browser. For a faster, 
safer browsing experience, upgrade for free today." /> 
    </a> 
    </div> 
<![endif]--> 
<!--[if lt IE 9]> 
    <script type="text/javascript" src="js/html5.js"></script> 
    <link rel="stylesheet" type="text/css" media="screen" href="css/ie.css"> 
<![endif]--> 
</head> 





<body> 
<!--<div class="bg-top">--> 
<div class="bgr"> 
<!--==============================Wrapper=================================--> 
<div class="wrapper"> 
<!-----------------------Header ---------------------------> 
<header> 
<div class="head"> 
    <h1> 
     <a href="index.html"> 
<img src="<?php echo base_url(); ?>application/views/images/logo.jpg" alt=""></a> 
     <a href="#" class="classname">sign up</a> 
     <a href="javascript:void(0);" 
class="classname1" onClick="vpb_show_login_box();">login</a> 
    </h1> 
</div> 



<?php 

    include_once('navigation.php'); 
    include_once('slider.php'); 
    include_once('offers.php'); 
    include_once('invite.php'); 
    include_once('testimonial.php'); 
    include_once('special_item.php'); 
    include_once('footer.php'); 
    include_once('popup.php'); 
    ?> 

Теперь то, что ошибка там ... или anyelse, что я могу «признаю ?? ... пожалуйста, hlp me. Спасибо в Advance ...

+0

Вы не должны использовать «include()» в любом месте вашего кода, за исключением включенных конфигурационных файлов и т. Д. Codeigniter - это MVC, попытайтесь в него вставлять и загружать представления, включая их. Удачи. – Kyslik

ответ

1

Вы забыли поставить эхо на несколько мест.

Я могу показать свое решение для размещения файлов в заголовке. Сначала я создал папку в корне и назвал ее общедоступным, и в этой папке я создал папки для необходимых документов (css, img, js ...). В constants.php Я сделал это:

$root = "http://".$_SERVER['HTTP_HOST']; 
$root .= str_replace(basename($_SERVER['SCRIPT_NAME']),"",$_SERVER['SCRIPT_NAME']); 
define('ABSOLUTE_PATH', str_replace('system/','', BASEPATH)); 
define('BASE', $root); 
define('CSS', BASE . 'public/css/'); 
define('JS', BASE . 'public/js/'); 
define('IMG', BASE . 'public/img/'); 

Таким образом, в заголовке вы можете сделать это:

<link rel="stylesheet" href="<?php echo CSS ?>reset.css"> 

Это простой способ поддерживать и обновлять файлы.

1

Саша дал хорошее решение, но, чтобы ответить на ваш вопрос: все ваши CSS, изображения, JS не должны находиться внутри папки приложения, а в папке на том же уровне, что и приложение. assets - общее имя для такой папки.

0

Попробуйте это:

  1. в вашем конфигурационном файле, определите base_url() ех, base_url() = 'YourSite';
  2. в корневом каталоге создайте папку и назовите ее ресурсом и поместите все ваши папки css, js, img внутри
  3. в ваш файл вида html/php (например, application/views/test.php) и html code put эти коды php, пример

ПРИМЕЧАНИЕ: не беспокойтесь о том, чтобы эхом использовать base_url в каждом файле js или css, который вы связываете, потому что база уже определена.

<!DOCTYPE html> 
<html lang="en"> 
<head> 
<title>Home</title> 
<meta charset="utf-8"> 
<base href="<?php echo base_url(); ?>" /> 
<link rel="stylesheet" type="text/css" media="screen" href="resource/css/reset.css"> 
<link rel="stylesheet" type="text/css" media="screen" href="resource/css/style.css"> 
<link rel="stylesheet" type="text/css" media="screen" href="resource/css/slider.css"> 

<script src="resource/js/jquery-1.7.min.js"></script> 
<script src="resource/js/jquery.easing.1.3.js"></script> 
<script src="resource/js/tms-0.4.1.js"></script> 
<script src="resource/js/vpb_script.js"></script> 
<script src="resource/js/pop.js"></script> 
Смежные вопросы